Smart contracts
Un smart contract est un programme stocké sur le registre qui s'exécute lorsqu'une transaction l'appelle. Le mot « contract » a été choisi par Nick Szabo en 1994 et induit les juristes en erreur depuis lors.1 Un smart contract n'est pas un accord. C'est une machine qui déplace des jetons selon des règles fixées lors de son déploiement. La question de savoir si un contrat au sens juridique existe entre les personnes qui interagissent avec cette machine est distincte et relève du droit commun des contrats, comme l'expliquent la partie D, chapitre V, et la partie J, chapitre III. Un smart contract peut exécuter un contrat, en constituer la preuve ou fonctionner sans aucune relation juridique sous-jacente.
Trois propriétés techniques importent. La première est qu'un contrat déployé est généralement immuable, sauf si son auteur y a prévu un mécanisme de mise à niveau. Il s'agit typiquement d'un schéma de proxy permettant à une clé d'administrateur de rediriger les appels vers un nouveau code. L'existence d'une telle clé est la première chose à rechercher pour apprécier si un protocole est « décentralisé », car celui qui la détient peut modifier les règles pour tous les utilisateurs. La deuxième est que les smart contracts n'ont pas accès aux informations extérieures au registre. Les prix, les dates et les événements doivent leur être communiqués par un flux de données externe appelé oracle, examiné ci-dessous. La troisième est que le code est public et peut contenir des erreurs que n'importe qui peut exploiter. Le piratage de The DAO en 2016, l'exploitation du pont Wormhole en 2022 et les nombreuses attaques par flash loan survenues depuis sont autant de cas où le code s'est comporté exactement comme il était écrit, et tout autrement que ce que ses auteurs entendaient.
Dans son rapport de 2018, le Conseil fédéral suisse a examiné et rejeté l'idée d'un régime juridique spécial pour les smart contracts. Il a estimé que le Code des obligations permet déjà de conclure et d'exécuter des contrats par des moyens automatisés.2 L'Electronic Transactions Act 2010 de Singapour, modifié en 2021 pour adopter la loi type de la CNUDCI sur les documents transférables électroniques, confirme de même qu'un contrat peut être formé au moyen de systèmes de messagerie automatisés sans intervention humaine.3 Les deux systèmes traitent donc le smart contract comme un instrument d'exécution, l'analyse juridique étant fournie de l'extérieur du code.
Notes
- Nick Szabo, « Smart Contracts », 1994, et « Formalizing and Securing Relationships on Public Networks », First Monday, vol. 2, n° 9 (1997). ↩
- Rapport du Conseil fédéral du 14 décembre 2018, section 6.2 (pas de nécessité d'une législation spéciale sur les smart contracts ; le droit général des contrats s'applique). ↩
- Electronic Transactions Act 2010 (Singapour), section 15 (formation du contrat au moyen de systèmes de messagerie automatisés), et partie 2A, introduite par l'Electronic Transactions (Amendment) Act 2021, relative aux documents transférables électroniques. ↩
À titre d’information générale uniquement. Cet article ne constitue pas un conseil juridique ou fiscal, ne remplace pas un conseil adapté à votre situation et ne crée aucune relation avocat-client. Il reflète l’état du droit en octobre 2026.