Difference between revisions of "RICM5 2018 2019 - UGAChain - Smart Contract"

From air
Jump to navigation Jump to search
Line 15: Line 15:
 
Par exemple un smart contrat pourrait mettre à jour la balance d'un compte bancaire en assurant que la somme d'argent nécessaire à débit est bien présente sur un compte avant d'effectuer ce dernier.
 
Par exemple un smart contrat pourrait mettre à jour la balance d'un compte bancaire en assurant que la somme d'argent nécessaire à débit est bien présente sur un compte avant d'effectuer ce dernier.
   
Référence : https://www.hyperledger.org/wp-content/uploads/2018/04/Hyperledger_Arch_WG_Paper_2_SmartContracts.pdf
+
Références : https://www.hyperledger.org/wp-content/uploads/2018/04/Hyperledger_Arch_WG_Paper_2_SmartContracts.pdf
   
 
= Catégories de Smart Contract =
 
= Catégories de Smart Contract =

Revision as of 16:02, 29 January 2019

Smart Contract

Définition

Les « Smart Contracts » sont des contrats qui s’appuient sur la technologie Blockchain pour rendre infalsifiables leurs termes et les conditions de leurs exécutions.

Qu’est-ce qui rend un « Smart Contract » intelligent ? Alors qu’un contrat légal traditionnel définit les règles d’un accord entre plusieurs parties, un Smart Contract va plus loin et fige ces règles dans une Blockchain tout en assurant le transfert d’un actif – quel qu’il soit – lorsque les conditions contractuelles se vérifient.

Références : https://www.lemagit.fr/conseil/Blockchain-quest-ce-quun-Smart-Contract-et-a-quoi-ca-sert

Un Smart Contrat est essentiellement la logique business utilisée dans une blockchain.

Par exemple un smart contrat pourrait mettre à jour la balance d'un compte bancaire en assurant que la somme d'argent nécessaire à débit est bien présente sur un compte avant d'effectuer ce dernier.

Références : https://www.hyperledger.org/wp-content/uploads/2018/04/Hyperledger_Arch_WG_Paper_2_SmartContracts.pdf

Catégories de Smart Contract

Les Smart Contracts sont la "business logic" des Blockchain. Ils sont classés dans deux catégories suivant le cas d'usage :

  • On-chain Smart Contracts
  • Installed Smart Contracts

On-chain Smart Contracts

Ils sont exécutés quand une transaction survient dans la blockchain et ils sont stockés au coeur même de cette dernière.

Installed Smart Contracts

Ils sont exécutés avant que les commit arrivent au "ledger" ou avant le lancement du réseau.

Références : https://hackernoon.com/how-are-smart-contracts-executed-in-hyperledger-57efebf03f12

Smart Contract et Hyperledger

Les Smart Contract sont au coeur de l'implémentation des Blockchain. La plateforme open source Hyperledger facilite l'implémentation des Smart Contract, et donc la "business logic" qui régit le fonctionnement des Blockchain.

Exécution d'un Smart Contract au sein d'Hyperledger

Tout commence avec un input block et le contract interpreter où l'ID du contrat est envoyé pour une requête de transaction. Si la requête est jugée valide par le Smart Contract, celle-ci est envoyée au service de concensus où le Smart Contract va déterminer la validité de la transaction et ajouter cette dernière à la blockchain sous ladite condition de validité. La vérification de la transaction comprend une vérification syntaxique (triviale) et logique (qui peut s'avérer plus compliquée).

En résumé :

  • Vérification de la requête
  • Vérification de la transaction
  • Éventuel ajout de la transaction à la blockchain

Smart contract hyperledger.png

Références : https://hackernoon.com/how-are-smart-contracts-executed-in-hyperledger-57efebf03f12