Que sont les contrats intelligents? Guide du débutant sur les contrats intelligents



Ce blog vous donnera une image claire des contrats intelligents, des différentes plates-formes pour rédiger des contrats intelligents et discutera également d'un cas d'utilisation pratique d'une application de contrat intelligent Ethereum.

L'expression et le concept de «contrats intelligents» étaient Proposé par Nick Szabo avec la vision d'étendre la fonctionnalité des méthodes de transaction électronique, telles que POS (point de vente), au domaine numérique. Les contrats intelligents vous aident à échanger des biens, des actions ou tout objet de valeur de manière transparente et sans conflit tout en évitant les services d'un intermédiaire.
Code Ethereum-Contrats intelligents-edureka

comment terminer un programme en java

Voici les sujets que nous allons couvrir dans ce blog Smart Contract:





    1. Que sont les contrats intelligents?
    2. Contrats intelligents par Nick Szabo
    3. Pourquoi avons-nous besoin de contrats intelligents?
    4. Contrats intelligents: complexité selon les cas d'utilisation
    5. Cas d'utilisation des contrats intelligents: industrie de la santé
    6. Avantages des contrats intelligents
    7. Plateformes Blockchain pour la rédaction de contrats intelligents
    8. Outils d'écriture et de déploiement de contrats intelligents
    9. Langages de programmation pour l'écriture d'Ethereum
    10. Contrat intelligent de transfert de propriété

    Que sont les contrats intelligents?

    Les contrats intelligents sont un programme informatique autonome qui s'exécute automatiquement lorsque des conditions spécifiques sont remplies.

    Contrats intelligents = contrats sans confiance



    Avec les contrats intelligents, vous pouvez partager tout ce qui a de la valeur, entre des inconnus, d'une manière transparente et sans conflit.

    Vous pouvez également considérer les contrats intelligents comme une blockchaindistributeur automatique basé. Tout comme les distributeurs automatiques sont configurés pour prendre en dollars pour distribuer votre choix d'article, les contrats intelligents utilisent éther comme carburant pour exécuter du code basé sur des règles préconfigurées.

Que sont les contrats intelligents | Déployez votre premier contrat intelligent Ethereum | Edureka

  1. Contrats intelligents par Nick Szabo

    Dans son article, Szabo a proposé l'exécution d'un contrat pour des actifs synthétiques, tels que des dérivés et des obligations. «Ces nouveaux titres sont formés en combinant des titres (tels que des obligations) et des dérivés (options et contrats à terme) de différentes manières. Des structures de terme très complexes pour les paiements peuvent désormais être intégrées dans des contrats standardisés et négociées avec de faibles coûts de transaction, grâce à l'informatisationanalyse de ces structures de termes complexes », a-t-il écrit.



  1. Pourquoi avons-nous besoin de contrats intelligents?

    Nous pouvons automatiser de nombreuses solutions en écrivant un contrat sur une Blockchain pour rendre les choses simples et efficaces. comparons et évaluons comment les contrats intelligents sont meilleurs que les contrats traditionnels.

    Contrats intelligents: complexité selon les cas d'utilisation

    La complexité des contrats dépend des cas d'utilisation que vous rêvez de coder sur la blockchain. L'image ci-dessous vous donnera une meilleure clarté sur la complexité des contrats intelligents.

    Avec des contrats intelligents contextualisés, non seulement les entreprises seront automatisées, mais également un gouvernement autonome décentralisé pourrait être formé.


    Comprenons comment fonctionnent les contrats intelligents à l'aide d'un cas d'utilisation.

    Cas d'utilisation des contrats intelligents: industrie de la santé

    Gestion des données patient: En matière de gestion des données patient, il existe deux enjeux principaux dans le secteur de la santé:

    • Premier , chaque patient est unique, l'accès à des dossiers médicaux complets est donc indispensable pour adapter le traitement et offrir des soins personnalisés
    • Seconde , le partage d'informations entre la communauté médicale est un enjeu majeur

    Désormais, les problèmes mentionnés ci-dessus peuvent être résolus à l'aide de la fonctionnalité de contrats intelligents sur les blockchains.

    Avantages du contrat intelligent

    Voici ce que vous offrent les contrats intelligents:

    Plateformes Blockchain pour la rédaction de contrats intelligents

    Tandis que Ethereum est la plate-forme la plus populaire pour la rédaction de contrats, ce n'est pas la seule. Voici quelques-unes des autres plates-formes utilisées pour rédiger des contrats intelligents:

    Bitcoins: Bitcoin utilise un script qui a des capacités limitées lors du traitement des documents. Les scripts sont spécifiquement conçus pour traiter les transactions Bitcoin.

    Tissu Hyperledger : Dans Fabric, Chaincode est un code programmatique déployé sur le réseau, où il est exécuté et validé par des validateurs de chaîne ensemble pendant le processus de consensus.

    NXT: Il s’agit d’une plate-forme de blockchain publique qui contient une sélection limitée de modèles de contrats intelligents. Vous devez utiliser ce qui est donné, vous ne pouvez pas écrire votre propre code.

    mémoire de tas et de pile en java

    Chaînes latérales: Les chaînes latérales améliorent les performances des chaînes de blocs et la protection de la vie privée. Ils ajoutent également des capacitéscommecontrats intelligents, poignées sécurisées,et registre immobilier du monde réel.

    Outils d'écriture et de déploiement de contrats intelligents

    1. Navigateur de brume - C'est un outil pour parcourir et utiliser les dApps. C'est un navigateur distinct qui peut être utilisé pour parcourir les dApps et interagir avec eux.
    2. Cadre de truffe - Truffle est un cadre de développement populaire pour Ethereum. Il intègre la compilation, la liaison, le déploiement et la gestion binaire des contrats intelligents.
    3. Metamask - MetaMask est un pont qui permet aujourd'hui de visiter le web distribué de demain dans son navigateur. Il permet aux utilisateurs d'exécuter Ethereum dApps directement dans leur navigateur sans exécuter un nœud Ethereum complet.
    4. Remix - Remix est un IDE basé sur un navigateur Web qui permet aux utilisateurs d'écrire des contrats intelligents Solidity, puis de déployer et d'exécuter le contrat intelligent.

    Langages de programmation pour l'écriture de contrats intelligents Ethereum

    Solidité & Serpent sont deux langues principales pour écrire des contrats intelligents Ethereum.

    : Il s'agit d'un langage de haut niveau orienté contrat avec une syntaxe similaire à celle de JavaScript et il est conçu pour cibler la machine virtuelle Ethereum (EVM).

    Serpent: Serpent est un langage de haut niveau conçu pour écrire des contrats Ethereum. Il est très similaire à Python, mais depuis septembre 2017, Solidity est le langage de développement préféré des développeurs Ethereum.

    Bien que Solidity soit actuellement le langage le plus populaire pour les contrats intelligents, il existe quelques langages de contrats intelligents à venir qui peuvent devenir importants à l'avenir.

    Langages de programmation à venir

    1. Vipère: Viper a un schéma d'indentation de type Python. Il se concentre sur la sécurité et la simplicité du langage et du compilateur.
    2. Lisk: Lisk utilise javascript comme langage de contrat intelligent qui permet à un développeur de coder plus facilement des applications.
    3. Chaîne: Chain fournit une infrastructure de blockchain de niveau entreprise avec des SDK dans des langages populaires tels que Ruby, Java et NodeJS.

    Maintenant que Solidity est le langage de programmation le plus largement utilisé pour écrire des contrats intelligents Ethereum, laissez-moi vous guider à travers un contrat écrit en Solidity.

    Contrat intelligent de transfert de propriété

    Problème: Actuellement, nous utilisons l'autorité centrale pour transférer la propriété. Cela prend du temps et entraîne beaucoup de dépenses supplémentaires avec une charge supplémentaire de gestion des documents. De plus, comme le système est centralisé, il existe toujours une possibilité de fraude.

    Solution: Le plan consiste à utiliser la technologie pour rendre les détails des transactions immobilières visibles à toutes les parties - banques, courtiers, fonctionnaires, acheteurs et vendeurs.

    Très bien, laissez-moi rédiger un contrat intelligent pour vous:

    pragma solidity ^ 0.4.11 // Nous faisons ce cas d'utilisation pour imiter le transfert de propriété dans le monde réel // La condition préalable de ce cas d'utilisation est que: // Une identité numérique est en place // Le gouvernement accepte de mettre le registres fonciers sur la blockchain publique // Chaque autorité de développement (AD) devient le propriétaire de fait de la propriété qui existe sous leur circonscription / organe législatif // Lorsque toutes les conditions ci-dessus sont remplies, alors DA (propriétaire) peut facilement attacher la propriété respective à leur propriétaire légitime après une vérification approfondie. // nous allons formuler la fonction autour de cette hypothèse d'ensemble. // nous supposons que chaque DA déploiera son propre contrat intelligent conformément à sa règle et à sa réglementation. L'ensemble de ce contrat intelligent est écrit en considérant DA comme le propriétaire, qui peut attribuer la propriété. // Un gouvernement peut devenir une couche au-dessus de ces DA. et le gouvernement peut décider, quel AD (adresse) devient le propriétaire de quelle circonscription. // Nous pouvons étendre cela facilement. Mais après avoir traversé ce contrat intelligent, vous serez en mesure de comprendre comment les choses pourraient fonctionner. contract PropertyTransfer {adresse publique DA // DA sera le propriétaire, nous initialiserons la valeur de cette variable par l'adresse de l'utilisateur qui va la déployer. par exemple. disons DA lui-même. uint256 public totalNoOfProperty // nombre total de propriétés sous un DA à tout moment. ils devraient augmenter selon l'attribution à leur propriétaire respectif après vérification. // Ci-dessous se trouve le constructeur dont le code est exécuté uniquement lorsque le contrat est créé. function PropertyTransfer () {DA = msg.sender // définissant le propriétaire du contrat comme DA. } // modificateur pour vérifier que le tx vient du DA (propriétaire) ou non modificateur uniquement Propriétaire () {require (msg.sender == DA) _} // Cette structure est conservée comme ça pour stocker beaucoup plus d'informations que juste le nom struct Property {string name // en gardant la carte de la propriété par rapport à chaque adresse. nous allons fournir un nom à la propriété bool isSold // nous gardons également le décompte pour chaque adresse} mapping (address => mapping (uint256 => Property)) public propertiesOwner // nous aurons les propriétés mappées contre chaque adresse par son nom et son décompte individuel. mapping (adresse => uint256) individualCountOfPropertyPerOwner // combien de propriétés une personne particulière détient-elle un événement PropertyAlloted (adresse indexée _verifiedOwner, uint256 indexée _totalNoOfPropertyCurrently, chaîne _nameOfProperty, chaîne _msg) événement PropertyTransferred (adresse indexée _ chaîne, _msg) // cela doit nous donner le nombre exact de propriétés que toute adresse possède à tout moment. function getPropertyCountOfAnyAddress (adresse _ownerAddress) constante renvoie (uint256) {uint count = 0 for (uint i = 0 i 

    Donc, vous venez de programmer un moyen de transférer des biens sur un réseau décentralisé. À quel point cela est cool!!

    Vous pouvez voir que le potentiel des [contrats intelligents] de modifier des aspects de la société est d'une ampleur considérable.

    Sur ce, je conclus ceci Contrat intelligent Blog. J'espère que vous avez apprécié la lecture de ce blog et que vous l'avez trouvé instructif.

    comment utiliser anaconda python

    Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires et nous vous répondrons au plus tôtst.

    jeSi vous souhaitez apprendre les contrats intelligents, construire une carrière dans le domaine de la blockchain et acquérir une expertise en programmation Ethereum, inscrivez-vous au live-online ici, cela vient avec un support 24 * 7 pour vous guider tout au long de votre période d'apprentissage.