Capitalisation boursière: $3.8478T -0.480%
Volume(24h): $245.4873B 14.240%
Indice de peur et de cupidité:

71 - Avidité

  • Capitalisation boursière: $3.8478T -0.480%
  • Volume(24h): $245.4873B 14.240%
  • Indice de peur et de cupidité:
  • Capitalisation boursière: $3.8478T -0.480%
Cryptos
Les sujets
Cryptospedia
Nouvelles
Cryptosopique
Vidéos
Top Cryptospedia

Choisir la langue

Choisir la langue

Sélectionnez la devise

Cryptos
Les sujets
Cryptospedia
Nouvelles
Cryptosopique
Vidéos

Exemple d'un simple contrat intelligent

Un contrat intelligent est un accord auto-exécutant écrit en code, déployé sur des plateformes de blockchain comme Ethereum pour automatiser les actions lorsque les conditions sont remplies.

Jul 16, 2025 at 11:50 pm

Comprendre les contrats intelligents

Un contrat intelligent est un contrat auto-exécutant avec les termes de l'accord directement écrit en code. Il fonctionne sur la technologie Blockchain et exécute automatiquement des actions lorsque les conditions prédéfinies sont remplies. La plate-forme la plus populaire pour déployer des contrats intelligents est Ethereum , qui utilise le langage de programmation Solidity.

Pour comprendre le fonctionnement d'un contrat intelligent simple, considérez un exemple de base: un contrat qui stocke une valeur et lui permet d'être mis à jour. Cela peut être utilisé comme base d'applications plus complexes telles que les transferts de jeton, les protocoles de financement (DEFI) décentralisés ou les NFT.

Les contrats intelligents éliminent les intermédiaires en appliquant la confiance via le code , en assurant la transparence et en réduisant le besoin de surveillance manuelle.


Écrire un contrat intelligent de base dans Solidity

Créons un simple contrat intelligent en utilisant la solidité , le langage de programmation principal d'Ethereum. Ce contrat stockera un entier non signé et permettra à quiconque de mettre à jour sa valeur.

Voici la structure de base:

 pragma solidity ^0.8.0; contrat simplesorage {

uint storedData; function set(uint x) public { storedData = x; } function get() public view returns (uint) { return storedData; }

}

Ce contrat a deux fonctions:

  • set(uint x) - met à jour la valeur stockée.
  • get() - récupère la valeur actuelle.

Chaque ligne de ce code joue un rôle crucial dans la définition du comportement du contrat sur la machine virtuelle Ethereum (EVM).


Déploiement du contrat intelligent

Pour déployer ce contrat, vous aurez besoin:

  • Un compilateur de solidité (par exemple, remix ide)
  • Un portefeuille Ethereum (par exemple, Metamask)
  • Testnet eth pour les frais de gaz

Mesures:

  • IDE de remix ouvert
  • Créer un nouveau fichier nommé SimpleStorage.sol
  • Collez le code ci-dessus dans l'éditeur
  • Sélectionnez la version du compilateur approprié sous l' onglet Compiler
  • Passez à l'onglet Deploy & Exécuter les transactions
  • Choisissez Injecté Web3 et connectez votre portefeuille Metamask
  • Cliquez sur Déploier

Une fois déployé, vous verrez l'adresse du contrat et les fonctions disponibles dans l'interface.

Le déploiement coûte des frais de gaz , assurez-vous donc que votre portefeuille contient suffisamment d'ETH de test de test avant de procéder.


Interagir avec le contrat déployé

Après le déploiement, vous pouvez interagir avec le contrat en utilisant les fonctions fournies dans Remix. Ceux-ci incluent le réglage et la récupération des valeurs.

Pour mettre à jour la valeur stockée:

  • Développez la fonction set
  • Entrez un nombre dans le champ de saisie
  • Cliquez sur TRANSACK
  • Confirmez la transaction dans Metamask

Pour récupérer la valeur:

  • Développez la fonction get
  • Cliquez sur appeler

Ces interactions montrent comment les utilisateurs peuvent s'engager avec les applications basées sur la blockchain sans avoir besoin de serveurs backend.

Chaque interaction avec un contrat intelligent nécessite une transaction , qui doit être signée et confirmée via votre portefeuille.


Considérations de sécurité pour les contrats intelligents

Même un simple contrat intelligent comme celui-ci devrait être examiné pour les meilleures pratiques de sécurité. Bien que cet exemple n'implique pas de données ou de fonds sensibles, les contrats du monde réel le font souvent. Les problèmes courants comprennent:

  • Attaques de réentrance
  • Débordement entier / sous-flux
  • Contrôle d'accès inapproprié

Pour ce contrat, l'ajout de modificateurs pour restreindre le set d'appels pourrait améliorer la sécurité. Par exemple:

 address owner; constructeur () {

owner = msg.sender;

}

Modificateur uniquement {

require(msg.sender == owner, 'Only owner can call this function'); _;

}

Appliquez le modificateur à la fonction set :

 function set(uint x) public onlyOwner { storedData = x;

}

La sécurité ne devrait jamais être une réflexion après coup dans le développement de contrats intelligents , même pour des contrats apparemment inoffensifs.


Questions fréquemment posées

Quels outils sont nécessaires pour écrire et déployer un contrat intelligent?

Vous pouvez utiliser des plateformes en ligne comme Remix IDE pour écrire et déployer des contrats intelligents sans installer de logiciel. De plus, vous aurez besoin d'un portefeuille comme Metamask et d'un TestNet ETH pour les frais de gaz.

Puis-je modifier un contrat intelligent déployé?

Non, une fois qu'un contrat intelligent est déployé sur la blockchain, son code ne peut pas être modifié. Vous devrez déployer un nouveau contrat si des modifications sont nécessaires.

Combien cela coûte-t-il de déployer un contrat intelligent?

Le coût dépend de la complexité du contrat et de la congestion actuelle du réseau. Les contrats plus simples coûtent moins cher en frais de gaz par rapport à ceux plus complexes.

Est-il possible de lire les données d'un contrat intelligent sans payer de gaz?

Oui, la lecture des données via une fonction view ne modifie pas l'état et ne nécessite donc pas de gaz. Cependant, l'écriture ou la modification des données entraîne toujours des frais.

Clause de non-responsabilité:info@kdj.com

Les informations fournies ne constituent pas des conseils commerciaux. kdj.com n’assume aucune responsabilité pour les investissements effectués sur la base des informations fournies dans cet article. Les crypto-monnaies sont très volatiles et il est fortement recommandé d’investir avec prudence après une recherche approfondie!

Si vous pensez que le contenu utilisé sur ce site Web porte atteinte à vos droits d’auteur, veuillez nous contacter immédiatement (info@kdj.com) et nous le supprimerons dans les plus brefs délais.

Connaissances connexes

Voir tous les articles

User not found or password invalid

Your input is correct