Escalinata-de-colores (1).png

Du "code est la loi" à "l'art est le code" ?

Un aperçu de la nature même des NFT

L’année 2021 aura sans doute été celle de la rencontre fracassante entre le monde de l’art et celui des blockchains avec la découverte, puis l’engouement, du grand public pour les NFTNon Fungible Tokens » ou jetons non fongibles). Beaucoup raillent encore cet emballement soudain qu’ils assimilent à la fièvre spéculative de la tulipomanie au XVIIe siècle. S’il est vrai que toutes les initiatives ne se valent pas, les technologies blockchains semblent pourtant répondre à un besoin essentiel et aussi vieux que le marché de l’art, la traçabilité, tout en proposant d’en améliorer la liquidité.
1. La traçabilité, une vieille idée des marchands d'art
 

L’origine est peut-être une question fondamentale en matière d’œuvres d’art. En premier lieu, elle permet d’en déterminer la paternité, qui se traduira juridiquement par l’attribution de droits d’auteurs à son créateur. En second lieu, connaître son origine certaine et licite permet évidemment d’en déterminer la valeur historique et marchande.

Depuis des siècles, marchands d’arts, collectionneurs et experts s’évertuent donc, grâce à leurs recherches historiques, à déterminer l’identité des créateurs, l’époque de l’œuvre, leur rareté ainsi que leurs parcours entre les mains de leurs propriétaires successifs.

Les conflits armés, la multiplication des marchés noirs ainsi que les circulations transfrontalières (facilitées par les accords de libre‑échange) ont pourtant rendu difficile la traçabilité de ces biens. La vente de faux comme d’antiquités issues d’un pillage sont des préoccupations qui inquiètent les acteurs du marché de l’art. L’État en tête impose aux marchands des obligations particulièrement fortes en matière de traçabilité des œuvres d’art.

Imaginez maintenant que ces marchands d’art et ces collectionneurs puissent disposer d’un répertoire, contenant l’historique mondial de l’ensemble des transactions concernant les biens culturels de façon fiable, immuable, inviolable, sans organe de contrôle central (à l’abri de la censure) et consultable par tout un chacun.

Un tel registre permettrait de prouver l’antériorité d’une œuvre, d’en vérifier la traçabilité grâce à la connaissance exacte de son parcours entre différentes mains, mais également d’automatiser les fonctions de paiements toutes les fois que ce bien serait échangé entre propriétaires.

C’est ce que proposent les technologies de registre partagé [1], comme les blockchains publiques, dont les NFT sont une application particulière intéressant déjà les collectionneurs et les marchands d’arts.

Appliqués aux NFT, ces garanties offertes par les blockchains ne vont toutefois pas sans conditions, qui tiennent aussi bien à l’architecture juridique proposée par les plateformes ou les artistes, qu’aux solutions techniques qu’ils choisissent.

Pour le comprendre, revenons brièvement à l’origine et examinons le fonctionnement des NFT.

 

2.Colored coins... and tokens will eat the world

 

Pour le simplifier, Bitcoin est un grand registre public qui enregistre à intervalle régulier de temps l’ensemble des transactions réalisées par les participants. Tous les participants de ce réseau partagent une copie identique du registre.

Pour se faire, les transactions sont agrégées au sein de blocs numériques horodatés, comme les pages d’un livre de compte, tous liés entre eux grâce à des liens cryptographiques (chaîne de blocs). Ainsi, chaque bloc contient la « signature numérique » [2] du bloc précédent et est ajouté au bout de la chaîne.  

Ces liens entre les blocs garantissent l’intégrité des transactions depuis la première puisqu’une modification d’un seul bit contenu dans un bloc aboutirait à une modification de tous les blocs suivants, et donc à une incohérence de cette version du registre par rapport à celle partagée par les autres participants.

Aussi, la blockchain est publique et maintenue par un réseau d’ordinateurs (pair à pair) qui effectue des contrôles constants, suivant un protocole de consensus qui garantit que la falsification des transactions passées soit irréalisable sur le plan informatique.

Cette immuabilité de la blockchain, et son caractère public, ont inspiré le développement de nouveaux usages dépassant la seule transaction de bitcoins entre participants du réseau. En particulier, Bitcoin permet de stocker de petites quantités de métadonnées [3].

Entre 2012 et 2013, certains chercheurs et développeurs [4] ont eu l’idée d’exploiter cette propriété pour « colorier » certaines transactions (bitcoins) en y associant certaines métadonnées.

Leur but était de marquer certains coins (en pratique, certaines transactions) du réseau Bitcoin de façon à les rendre uniques (« non fongible ») pour que, par convention entre ceux qui se les échangent, ils ne représentent plus une unité de compte (un ou plusieurs bitcoins), mais la preuve de la titularité de droits.

L’avantage est que ces jetons fonctionnent sur Bitcoin et tirent donc parti de son immuabilité, de sa permanence, de la facilité de transfert et de la transparence du registre.

Pour prendre une analogie simple, ces métadonnées seraient comme un texte inscrit sur un billet de dix euros pour le rendre unique. L’auteur de ce texte pourrait, par exemple, indiquer que tout propriétaire dudit billet serait titulaire d’une fraction de son entreprise, ou de sa voiture ou encore d’un tableau qu’il aurait chez lui.

À notre sens, si l’opération semble virtuelle, elle ne l’est sans doute pas plus que celle qui consiste à considérer qu’une action représente la propriété d’une fraction du capital d’une entreprise, ou encore que les unités de comptes numériques (euros) qui s’affichent sur l’interface de notre application bancaire ont une quelconque valeur d’échange.

C’est aussi une solution astucieuse pour s’échanger des actifs sur une blockchain. En effet, comme l’ensemble des données stockées sur une blockchain doivent être traitées, vérifiées et répliquées par l’ensemble des participants du réseau, il serait trop coûteux de stocker de grandes quantités de données sur celle‑ci [5], comme un document entier ou l’image d’un tableau.

3. Du  “smart contract” au NFT: ceci n'est pas un contrat

Théorisé en 1996 par Nick Szabo [6], le concept de « smart contracts » consiste à mettre des contrats sous forme informatique pour qu’ils s’exécutent d’eux-mêmes lorsque les conditions qu’ils prévoient sont remplies. Par exemple, une personne pourrait souscrire une assurance en cas de retard de son vol, et les fonds lui seraient automatiquement transférés si un retard était constaté, sans intervention humaine.

En pratique, les smart contracts sont donc des programmes informatiques, c’est-à-dire :

  • des instructions sous forme d’un code source (lisible par l’homme) permettant d’exécuter des tâches spécifiques,

  • compilées pour être comprises par des machines,

  • puis enregistrées dans la blockchain,

  • pour être exécutées par les machines appartenant à ce réseau quand certaines conditions précisées par ce code se réaliseront (ex. : le retard d’un vol) ;

  • lorsque ce programme s’exécute, le résultat de cette exécution est enregistré dans la blockchain.

 

Si Bitcoin offrait déjà la possibilité d’écrire des smart contracts simples, c’est bien la blockchain Ethereum qui permit d’en populariser la pratique grâce à son langage de programmation plus complet (« Solidity ») et sa machine virtuelle (baptisée « EVM ») utilisée par les machines du réseau (appelées « nœuds ») permettant d’exécuter facilement les smart contracts.

En janvier 2018, certains programmeurs [7] ont proposé d’utiliser les smart contracts pour représenter sur Ethereum des actifs uniques en inscrivant des métadonnées dans leur code source : le NFT était né.

Ces smart contracts ont ainsi ouvert de nouvelles possibilités que n’offraient pas les précédents colored coins pour leurs créateurs : non seulement ils peuvent représenter un droit ou un bien de façon unique, mais les règles de leur gestion peuvent être programmées à l’avance pour que, par exemple, tout transfert d’un jeton se traduise automatiquement par l’envoi de "coins" à son créateur permettant de le rémunérer lors de chaque transaction.

Cette fonctionnalité, qui pourrait s’apparenter (bien imparfaitement) à une forme de droit de suite, intéresse autant les plateformes d’échanges de NFT que les artistes.

Mais alors, pourquoi dit-on des NFT qu’ils sont des « tokens », s’ils sont des smart contracts ?

La terminologie liée aux technologies blockchains n’est pas encore fixée et des travaux de normalisation sont à l’œuvre, comme ceux du comité technique ISO/TC 307. Sans prétendre épuiser les distinctions possibles, « token » (ou « jeton ») peut désigner un fichier numérique (colored coins, smart contracts, etc.) déployé sur une blockchain, et chargé par son créateur de représenter un « actif sous-jacent ». C’est-à-dire que le token est utilisé pour symboliser la titularité d’un droit, comme des parts d’une entreprise ou la propriété d’un bien (meuble ou immeuble).

Actuellement, l’un des standards pour l’écriture d’un NFT les plus utilisés est « ERC-721 ». Voyons brièvement comment il fonctionne.

 
4. Dissection d'un NFT célèbre : “EVERYDAYS: THE FIRST 5000 DAYS” de Beepl

Comme dans beaucoup de communautés open source, dans l’écosystème de la blockchain Ethereum, tout le monde peut proposer des améliorations pour le développement de programmes et de protocoles[8].

Si ces propositions d’amélioration sont retenues, elles deviennent des « standards », appelés « ERC » (« Ethereum request for comment »)  dans l’univers de la blockchain Ethereum.

 

Ces standards sont notamment adoptés par la communauté afin de favoriser le développement d’un écosystème interopérable utilisant des standards harmonisés (développement d’API, de plateformes, etc.).

Parce qu’il fut l’un des premiers, le standard « ERC-721 » [9] est actuellement l’un des plus utilisés pour réaliser des NFT. 

Informatiquement, il reprend des fonctions déjà utilisées par d’autres smart contracts qui l’ont précédé, permettant notamment :

  • de connaitre le nom du jeton (« function name  »), son symbole (« symbol »),

  • d’informer sur le nombre total de jetons en circulation («TotalSupply »),

  • d’informer sur le montant total de possédés par une adresse particulière (« BalanceOf »),

  • de le transférer entre différentes adresses du réseau (« Transfer »),

  • ou encore les fonctions d’approbation accordant à quelqu’un d’autre que le propriétaire le droit de transférer le jeton (« function approve », « getApproved », « setApprovalForAll », etc.).

 

 

 

 

 

 

 

 

 

 

Exemple de Smart contract ERC-721

Ce qui distingue ERC-721 des autres smart contracts nous semble surtout la fonction « tokenURI ». Le plus souvent, cette fonction pointe à l’aide d’un lien (URL ou autre) vers un fichier de métadonnées stocké en dehors de la blockchain (« off-chain »), sous forme d’un fichier JSON, ou plus rarement vers l’actif que le NFT est censé représenter, comme le visuel d’une image ou encore un fichier musical.

C’est donc cette fonction qui permet de lier le NFT à un actif quelconque (œuvre d’art, contrat, etc.) et de le rendre véritablement unique.

Prenons un exemple avec le NFT le plus célèbre, « Everydays : the First 5000 days » de Beepl vendu en mars 2021 par Christie’s pour 65 millions de dollars – en réalité pour 42329,453 ETH.

Si nous reprenons chronologiquement ce qu’a réalisé Beepl, ce dernier a :

  1. réalisé une œuvre d'art sous forme d’un fichier numérique ;

  2. placé une copie de ce fichier numérique dans un réseau décentralisé de stockage et de distribution de contenus appelé « IPFS » (nous reviendrons sur ce terme ci-dessous), dans lequel les fichiers sont répertoriés sous forme d’empreintes numériques (« hash ») ;

  3. décrit les caractéristiques de cette œuvre (titre, description, etc.) dans un « fichier de métadonnées » qui contient notamment un lien vers le fichier numérique de son oeuvre, qu’il a également stocké sur IPFS ;

  4. codé un smart contract [10] dans lequel une ligne de code renvoie vers son « fichier de métadonnées » stocké sur IPFS ;

  5. déployé son smart contract dans la blockchain (« to mint ») et en a transféré le contrôle au gagnant des enchères.

 

En pratique, nous avons reproduit ci-dessous le fichier de métadonnées auquel renvoie son NFT, librement accessible, et qui contient notamment un lien vers une copie de son œuvre (que vous téléchargerez si vous cliquez dessus) :

« https ://ipfsgateway.makersplace.com/ipfs/QmZ15eQX8FPjfrtdX3QYbrhZxJpbLpvDpsgb2p3VEH8Bqq »

{“title”: “EVERYDAYS: THE FIRST 5000 DAYS”, “name”: “EVERYDAYS: THE FIRST 5000 DAYS”, “type”: “object”, “imageUrl”: “https://ipfsgateway.makersplace.com/ipfs/QmZ15eQX8FPjfrtdX3QYbrhZxJpbLpvDpsgb2p3VEH8Bqq”, “description”: “I made a picture from start to finish every single day from May 1st, 2007 – January 7th, 2021.  This is every motherfucking one of those pictures.”, “attributes”: [{“trait_type”: “Creator”, “value”: “beeple”}], “properties”: {“name”: {“type”: “string”, “description”: “EVERYDAYS: THE FIRST 5000 DAYS”}, “description”: {“type”: “string”, “description”: “I made a picture from start to finish every single day from May 1st, 2007 – January 7th, 2021.  This is every motherfucking one of those pictures.”}, “preview_media_file”: {“type”: “string”, “description”: “https://ipfsgateway.makersplace.com/ipfs/QmZ15eQX8FPjfrtdX3QYbrhZxJpbLpvDpsgb2p3VEH8Bqq”}, “preview_media_file_type”: {“type”: “string”, “description”: “jpg”}, “created_at”: {“type”: “datetime”, “description”: “2021-02-16T00:07:31.674688+00:00”}, “total_supply”: {“type”: “int”, “description”: 1}, “digital_media_signature_type”: {“type”: “string”, “description”: “SHA-256”}, “digital_media_signature”: {“type”: “string”, “description”: “6314b55cc6ff34f67a18e1ccc977234b803f7a5497b94f1f994ac9d1b896a017”}, “raw_media_file”: {“type”: “string”, “description”: “https://ipfsgateway.makersplace.com/ipfs/QmXkxpwAHCtDXbbZHUwqtFucG1RMS6T87vi1CdvadfL7qA”}}}

 

Métadonnées liées au NFT Everydays : the First 5000 days de Beepl

Techniquement, ce qu’a donc acheté l’acquéreur du NFT est le contrôle du premier maillon d’une chaîne unique de liens cryptographiques le reliant in fine à un exemplaire de l’œuvre de Beepl : un smart contract (1), qui renvoie à un fichier informatique, stocké sur un service de partage de fichiers décentralisé (IPFS) (2), et renvoyant lui-même à l’empreinte numérique d’une œuvre stockée sur ce même service (IPFS) (3).

La valeur d’un NFT dépend ainsi de l’actif vers lequel il renvoie et donc de la robustesse de cette chaîne cryptographique existant entre les deux. Or, comme le dit bien l’adage : « une chaîne est aussi solide que son maillon le plus faible ».

5. Les NFT sont des chaînes cryptographiques aussi solides que leur maillon le plus faible

La robustesse de la chaîne qui va du smart contract à l’actif s’évalue d’abord à son premier maillon, le smart contract. En tant que programme informatique, il doit présenter des garanties concernant son fonctionnement. Un NFT défectueux présentant des bugs empêchant de remplir les tâches pour lesquelles il a été programmé, comme l’impossibilité de sa transmission entre plusieurs propriétaires ou la défaillance de la fonction permettant d’en rémunérer son créateur, perdrait grandement de son intérêt.

Obtenir des garanties concernant le fonctionnement du smart contract nous semble donc essentiel tant pour l’artiste que les propriétaires successifs.

Pour un artiste voulant faire réaliser un NFT par un développeur informatique, ces garanties pourraient notamment être obtenues avant le déploiement du NFT sur la blockchain, via des opérations de tests et recettes sur des environnements de tests comme des « testnets ». On retrouvera donc ici une pratique familière dans le domaine des projets informatiques.

Pour les acquéreurs, il est toujours possible, a posteriori, de consulter le code source d’un smart contract déployé sur une blockchain avant d’en faire l’acquisition. Par exemple, Christie’s indique bien l’adresse du smart contract de Beepl sur son site web, ce qui permet à tout internaute d’aller consulter directement le code source sur la Blockchain Ethereum ici.

Par ailleurs, si un smart contract ne peut être modifié une fois compilé et déployé sur une blockchain, puisque celle-ci est immuable, ce n’est pas le cas des données qui se trouvent hors de la blockchain (« off-chain »).

Ainsi, dans le cas d’un lien URL classique, qui pointerait vers des données stockées sur un serveur centralisé et géré par une personne physique ou morale, celles-ci pourraient être modifiées, détruites, ou rendues indisponibles à tout moment. 

Dans une telle situation, l’acquéreur du NFT se retrouverait donc possesseur d’un NFT qui ne pointerait plus nulle part (liquidation judiciaire de l’entité gérant le serveur, changement de propriétaire du serveur, destruction du serveur, etc.) ou alors vers un autre actif dont personne ne lui garantit l’intégrité ou l’existence (les images, morceaux de musique, contrats pourraient aisément être modifiées). 

Pour l’ensemble de ces raisons, des solutions décentralisées sont utilisées dans le monde des NFT comme les solutions « IPFS » ou encore « Arweave » qui proposent ainsi des systèmes de stockage et de distribution décentralisés (réseau pair à pair), permettant notamment d’identifier les fichiers de façon unique et d’en garantir l’intégrité via des fonctions cryptographiques.

Si nous reprenons l’œuvre de Beepl, il nous semble que le fichier de métadonnées pointe vers un portail URL (« gateway ») géré par une start-up et non vers l’empreinte du fichier lui-même. Dit autrement, le lien entre l’œuvre « Everydays : the first 5000 days » et son NFT pourrait disparaitre avec la liquidation de la société gérant ce portail.

En tout état de cause, même si Beepl avait fait le choix d’un lien pointant directement vers le fichier de son œuvre pour ne pas dépendre de la société gérant ce portail, la permanence du lien unissant son NFT et son œuvre n’aurait pas nécessairement été mieux garantie.

L’existence d’un fichier sur le réseau IPFS dépend de sa réplication par un des participants du réseau. Si aucun participant ne choisissait d’héberger son œuvre, celle-ci disparaîtrait donc du réseau.

Si IPFS propose donc une solution intéressante pour empêcher quiconque de modifier le fichier, il ne garantit pas nécessairement que les fichiers restent toujours disponibles sur le réseau[11].

Par ailleurs, aussi robuste soit-elle, quelle valeur a pour le droit français cette chaîne de lien cryptographique ? Est-ce que l’acheteur d’un NFT acquiert un quelconque droit ? 

6. Des liens cryptographiques aux liens juridiques

 

Le fait d’acquérir un NFT ne revient pas à acquérir des droits de propriété intellectuelle quelconques sur le smart contract ou l’actif (œuvre, par exemple) qu’il représente. 

L’existence d’une série de liens cryptographiques liant une personne à un actif n’est pas une condition suffisante pour faire naître des liens juridiques entre cette personne et cet actif.

Bien que les NFT intéressent le monde de l’art, il nous semble aussi que le secteur d’activité auquel ils s’appliquent ne doit pas nous tromper sur leur nature première. Parce qu’ils sont très majoritairement des smarts contracts, les NFT sont des programmes informatiques développés par des personnes physiques et des entreprises qui se distinguent de l’actif qu’ils représentent.

Pour reprendre l’exemple du NFT lié à « Everydays : the First 5000 days », la détermination éventuelle d’un propriétaire du smart contract (au sens du droit de la propriété intellectuelle) nous semble reposer sur au moins deux questions rarement posées : le smart contract développé est-il assez complexe pour être qualifié de « logiciel », et original pour être protégé au titre du droit d’auteur ? Le cas échéant, qui sera son propriétaire : le développeur ou l’artiste (s’il n’est pas l’auteur du smart contrat) qui a donné les instructions pour le créer ?

En tout état de cause, l’acquéreur du NFT de Beepl n’a obtenu aucun droit de propriété intellectuelle sur le code source du NFT.

Dans le même sens, l’acquéreur du NFT de Beepl n’a obtenu aucun droit de propriété intellectuelle sur l’œuvre qu’il représente. En effet, tout auteur d’une œuvre de l’esprit en demeure le propriétaire sauf à avoir conclu un acte de cession respectant un certain formalisme [12]. La propriété de l’œuvre est ainsi complètement distincte de la possession du NFT qui n’emporte pas la cession ou la concession de droits quelconques.

Autrement dit, cette chaîne de liens cryptographiques n’a pas de valeur juridique, sauf à ce qu’une chaîne juridique de dévolution de droits se superpose à elle.

Par conséquent, la transmission éventuelle de droits entre le créateur du NFT et son acquéreur dépendra des propres droits du créateur du NFT sur l’actif qu’il représente et des liens contractuels unissant le créateur au(x) possesseur(s) du NFT.

Ces droits pourraient ainsi être des droits de propriété si un artiste décidait de céder les droits sur son œuvre à tout acquéreur du NFT, ce qui, avouons-le, est assez rare en pratique.

En tout état de cause, pour que cette opération soit efficace juridiquement, la chaîne juridique de transmission de droits doit se superposer parfaitement à la chaîne des liens cryptographiques.

L’existence d’une licence, dont les termes pourraient être rédigés directement dans le smart contract, ou reliée de manière incontestable au NFT, devrait être un point attentivement scruté par tout acquéreur d’un NFT au regard des attentes qu’il place dans son achat.

Aussi, pour que les blockchains deviennent ces registres fiables, permettant de s’échanger des actifs sur Internet profitant à la fois aux artistes, aux collectionneurs et aux marchands d’arts, des garanties juridiques sont nécessaires. En particulier, des garanties contractuelles, doivent être obtenues concernant la création du NFT, la transmission de droits accompagnant éventuellement son acquisition, ou encore la permanence du lien unissant l’œuvre et son NFT, mais aussi l’intégrité de l’œuvre elle-même.

Cette rencontre fracassante entre le monde de l’art et celui des blockchains est peut-être aussi, au fond, celle entre le droit de l’informatique et celui du marché de l’art.

 
Jocelyn Pitet
 
Avocat et enseignant en droit des nouvelles technologies
 
 

Cet article est le premier d’une série de contributions réalisées à l’invitation de Me Adrien Basdevant, qui propose à des experts de tous horizons de partager leurs visions sur le « Big Bang » des Blockchains.

Avocat au sein de Basdevant avocat, Jocelyn Pitet travaille aux côtés d’Adrien Basdevant en cybercriminalité,  innovations de rupture (IA, chiffrement homomorphe…), données personnelles ou encore en matière de contrats complexes.

Basdevant Avocats propose ses services à ses clients dans le monde entier sur des sujets liés aux blockchains.

Notes de bas de page :
1. Distributed Ledger Technology, DLT [retour au texte]

2. Empreinte de hachage. [retour au texte]

3. C’est-à‑dire des données arbitraires inscrites par un participant du réseau et qui n'affectent pas les transferts des bitcoins.[retour au texte]

4. En particulier Yoni Assia, Vitalik Buterin, Meni Rosenfeld et Rotem Lev.[retour au texte]

5. Pour donner un ordre d’idées, la taille de tout l’historique des transactions de Bitcoin depuis sa création en 2009 faisait (seulement) un peu plus de 300 gigabits au 19 septembre 2021.[retour au texte]

6. « Smart Contracts: Building Blocks for Digital Markets », Nick Szabo, 1996. [retour au texte]

7. William Entriken, Dieter Shirley, Jacob Evans et Nastassia Sachs. [retour au texte]

8.  Pour ce faire, les développeurs soumettent une documentation décrivant un ensemble de règles et de fonctions à respecter appelée « Ethereum Improvement Proposal ». [retour au texte]

9.  Ce standard est en fait un dérivé d’autres standards bien connus, puisqu’on y retrouvera par exemple les interfaces classiques du standard ERC-20 (utilisé notamment lors des ICO).[retour au texte]

10. Celui-ci a été codé dans un standard dérivé de l’ERC-721, le standard « MakersTokenV2 ». [retour au texte]

11. Le « Filecoin » peut toutefois servir à récompenser les participants du réseau qui choisisse de conserver certains fichiers. [retour au texte]

12. CPI, arts. L 111-1 et L 111-3. [retour au texte]

Smart contract erc 721 sample.png