Nous recrutons: Tu es un IT qui souhaite travailler en Node, Python, Serverless et Cloud dans l'IA ?

Blog

cuvva-app-4-4-1-7 6

« Smart contract », où le contrat auto-exécutant

Nouvelle Technologie

« Smart contract », où le contrat auto-exécutant

L’apport essentiel d’Ethereum, lorsqu’on la compare aux autres blockchain existantes, se résume dans sa capacité à être programmée à l’aide d’un langage dédié (Solidity). Ce langage est dit « turing-complete », ce qui signifie qu’il permet d’exécuter l’ensemble des fonctions utilisés pour développer une application moderne : c’est un langage de programmation « complet ».

La possibilité de programmer simplement des « contrats »…

Cette caractéristique permet d’envisager la programmation d’engagements, simples ou complexes, sur la blockchain Ethereum. Ces engagements sont appelés par les créateurs d’Ethereum « smart contracts ». Ils sont dits « smarts », intelligents, car lorsque les conditions d’exécution de ces engagements sont réunies, ceux-ci s’exécutent automatiquement sur la blockchain, en prenant en compte l’ensemble des conditions et des limitations qui avaient été programmés dans le contrat à l’origine.

L’un des exemples le plus simple d’un « smart contract » est celui d’un contrat de prestation entre deux personnes. La première (A) souhaite rémunérer la seconde (B) pour l’exécution de cette prestation. Cet engagement est formalisé dans la blockchain Ethereum par la création d’un smart-contrat. Lors de la formalisation de ce smart-contract, A met en gage sur la blockchain le montant de la rémunération prévue pour B. Lorsque la prestation est réalisée, l’une des parties exécute le contrat. Celui-ci vérifie automatiquement que la prestation a bien été effectuée. Si tel est le cas, B reçoit la rémunération prévue. Dans le cas contraire, A récupère le montant de son gage.

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.

Avec cette approche, un actif est lié dans un programme lui-même stocké dans une blockchain. « Le programme lance le code à un moment donné s’il valide automatiquement une condition et il détermine si l’actif doit être envoyé à une personne ou renvoyé à une autre, ou s’il doit être remboursé immédiatement à la personne qui l’a émis, ou une combinaison de tout cela », expliquait Vitalik Buterin lors du Blockchain Summit à Washington.

Au même évènement, Jeff Garzik, co-fondateur de la start-up Bloq spécialiste du Blockchain, explique pourquoi ces contrats pourraient de son point de vue remplacer les contrats classiques dans plusieurs cas de figure. « Les Smart Contracts garantissent un ensemble très précis de conditions d’exécution. Il n’y a plus de confusion, ni besoin de résoudre des litiges. C’est vraiment un ensemble de conditions finies et assurées par l’informatique».