1.1.Comment est-ce qu’un nouvel utilisateur peut exécuter sur « ethereum » un programme qu’il aurait écrit ?
Créons une implémentation simple d’un smart contrat est faisable sous Solidity, qui est le langage de référence pour développer des smart contrats sur Ethereum.
L’ implémentation est facile à comprendre. Toutes les informations se trouvent via le lien :
https://chriseth.github.io/browser-solidity/?gist=38cde143e314a91b8362
Ce contrat est créé par l’acheteur et comprend deux parties ; il donne la permission au tiers de confiance de verser les fonds au vendeur ou d’annuler la transaction et rendre les fonds à l’acheteur.
L’acheteur crée le contrat à l’aide d’une application sur internet. Puis, il l’envoie au réseau Ethereum avec les données concernant le vendeur et l’agent (leurs adresses d’ethereum) et la valeur du bien (en ether). Tout comme le bitcoin, auquel la monnaie principale de la blockchain est Bitcoin, ether est la monnaie du réseau d’Ethereum. Il est tout à fait possible de créer d’autres formes de monnaies sur Ethereum aussi.
1.2.Décrivez le processus en au moins trois actions plus et pour chaque action, indiquez les éventuelles alternatives.
Le site officiel de la Fondation Ethereum comprend plusieurs exemples d’applications simples et pratiques de Solidity, qui ne manquent pas d’ambition :
La création d’une monnaie (ou actif virtuel) spécifique à un projet, qui peut s’échanger entre les participants au projet et dont la détention est susceptible de permettre l’obtention d’avantages.
La mise en place d’une plateforme de financement décentralisée pour un projet en particulier.
La création d’une organisation autonome décentralisée (DAO)
2.le paradigme « Le code est la loi » et donnez un exemple d’évènement qui l’a mis à l’épreuve. Quels enseignements peuvent être tirés ?
Cette forme radicale de « le code est la loi » pose des problèmes conceptuels, comme l’explique Lessig (pourtant favorable à la blockchain), professeur de Harvard. Le but du droit n’est pas d’« appliquer bêtement » les textes, sinon tout le monde serait juriste — machines comprises. Les textes juridiques sont parfois volontairement flous pour laisser une place au pragmatisme, alors que le code informatique est rigide et que ses failles sont donc impardonnables. Les juges existent pour juger les circonstances et comprendre pourquoi le contrat a été violé : si des agriculteurs n’ont pas honoré leur engagement auprès d’une chaîne de grande distribution, c’est peut-être parce que la firme leur a imposé des conditions déloyales. Un algorithme ne peut pas faire ce travail.
Lessig compare un contrat intelligent à un distributeur de soda : on insère une pièce et, mécaniquement, une canette sort. Mais si le distributeur avale des pièces ou délivre un produit frauduleux, on a raison de se plaindre auprès d’un tiers appelé « tribunal ». Nous prendrons l’exemple concret d’une application décentralisée de VTC, qui permettrait de payer directement son chauffeur sans verser de commission à une plateforme. Qui réglerait les conflits entre chauffeurs et usagers, ou les sanctionnerait en cas de comportements dangereux ? Ce genre de services d’arbitrage peut être confié à une entité extérieure comme la startup française Kleros dont le produit, basé sur la blockchain, a pour objectif de régler les litiges entre personnes et/ou professionnels. Sinon, la communauté doit créer un « tribunal » en décidant comment le constituer, via quels processus démocratiques et avec quels contre-pouvoirs.
Donc dans le cadre des smart contrats, l'application de la loi se fait à travers un cadre technique, de sorte que les opérateurs peuvent contourner ces garanties légales, tout comme les systèmes DRM contournent généralement les clauses d'utilisation équitable du droit d'auteur. Un contrat intelligent avec une technologie raisonnable sera exécuté, qu'il s'agisse ou non d'un contrat juridiquement valide. Bien que les contrats intelligents aient le potentiel de gérer une logique de transaction complexe, de nombreuses transactions doivent finalement être effectuées en se connectant avec des personnes ou des organisations qui existent dans le monde physique. C'est sur ces problèmes difficiles que le système juridique a le plus de pouvoir pour résoudre le problème de la rupture de contrat. Par conséquent, dans la société réelle, les contrats intelligents doivent également avoir une forte opérabilité afin d'obtenir le même effet que les contrats juridiques traditionnels.