Accueil / Chroniques / Cryptomonnaies : le rôle décisif des « rollups » à l’avenir
tribune04_-Julien-Prat_FR copy
π Économie π Numérique

Cryptomonnaies : le rôle décisif des « rollups » à l’avenir

AUGOT_Daniel
Daniel Augot
directeur de recherche à l'Inria et responsable de la chaire Blockchain
En bref
  • Le rollup utilise une technique cryptographique nommée arbre de Merkle : en une seule transaction, il permet d’engager et de confirmer des milliers d’autres.
  • Seulement, cette technique ne peut fonctionner sur toutes les cryptomonnaies, comme Ethereum qui n’accepte pas plus de 12 transactions par seconde.
  • Cette limite d’utilisation fait exploser les frais et rend ce type de blockchain moins attractive.
  • Automatiser les systèmes de transactions pose néanmoins des questions de sécurité : il faut s’assurer que l’opérateur des rollups soit régulé.
  • L’objectif est de réduire le nombre d’informations par transaction et repousser au maximum la preuve de validité vers des mécanismes cryptographiques.

Le monde de la blockchain et celui des cryp­toac­t­ifs sont en pleine ébul­li­tion. En effet, il suf­fit de voir la fail­lite reten­tis­sante du marché FTX ou encore la mise à jour récente d’Ethereum – la plus impor­tante dans la jeune his­toire de la cryp­tomon­naie – pour le com­pren­dre. Néan­moins, même si ces actu­al­ités font beau­coup de bruit, d’autres évo­lu­tions sont en cours dans le monde des cryp­toac­t­ifs… Plus dis­crètes certes, mais pas moins influ­entes sur le long terme. Par­mi celles-ci, les « rollups » : une nou­velle tech­nique que les chercheurs iden­ti­fient comme étant déci­sive pour le futur de la cryptomonnaie. 

Revenons aux bases

Afin de mieux cern­er l’importance de ces tech­niques, rap­pelons que la blockchain est un sys­tème de reg­istre inde­struc­tible que tout le monde peut con­sul­ter à sa guise. De plus, tout un cha­cun peut écrire dessus, ce qui fait de la blockchain un sys­tème en con­stante évo­lu­tion. Elle gag­n­erait néan­moins à devenir plus rapi­de, moins coû­teuse et plus soucieuse de l’environnement, ce qui con­stitue une des promess­es de trans­for­ma­tions futures dans ce secteur. D’autant plus que ces amélio­ra­tions se font de plus en plus pres­santes dès lors que la blockchain se démoc­ra­tise dans tous les secteurs : sport, com­merce ou encore culture. 

Cepen­dant, ce n’est pas aus­si sim­ple qu’il n’y parait : les obsta­cles sont nom­breux. Et c’est prin­ci­pale­ment dû au fait que ces ori­en­ta­tions promet­teuses doivent préserv­er les trois piliers de la blockchain : la sécu­rité (le réseau doit pou­voir valid­er l’authenticité des trans­ac­tions) ; la décen­tral­i­sa­tion (il doit être suff­isam­ment autonome pour ne pas être assu­jet­ti à un organe cen­tral) ; et la scal­a­bil­ité ( c’est-à-dire sa capac­ité à traiter un nom­bre de trans­ac­tions don­nées). Cette scal­a­bil­ité est la clé de voûte des recherch­es actuelles, notam­ment cryp­tographiques. Par exem­ple, le Bit­coin ne peut traiter que sept trans­ac­tions par sec­onde con­tre 24 000 pour le sys­tème VISA. On com­prend dès lors que la sim­ple val­i­da­tion d’un banal achat peut devenir une dif­fi­culté en cas de trans­ac­tions mas­sives sur le réseau.

Afin de répon­dre en par­tie à ces enjeux, deux notions impor­tantes liées à la cryp­togra­phie se sont imposées dans le champ des cryp­tomon­naies : le rollup et le zero knowl­edge

Le rollup, qu’est ce que c’est ? 

Le mécan­isme du rollup utilise une tech­nique cryp­tographique qui s’ap­pelle un arbre de Merkle (ou arbre de hachage). Le hachage trans­forme n’importe quel input – un texte ou une image, par exem­ple –­ en une chaîne d’octets dont la longueur et la struc­ture sont fix­es. En une seule courte trans­ac­tion, cet arbre de Merkle per­met con­crète­ment d’engager et de con­firmer non pas une, mais des mil­liers de trans­ac­tions avec elle – chose qui n’était pas pos­si­ble auparavant. 

Merkle Tree, (CC0 : Aza­ghal).

Pour mieux com­pren­dre le rôle décisif du rollup, nous avons besoin d’une autre notion essen­tielle : l’entête de bloc. Ce bloc, celui présent dans le terme blockchain, désigne ces liens où sont stock­ées chronologique­ment les trans­ac­tions suc­ces­sives effec­tuées entre util­isa­teurs depuis la créa­tion de la blockchain, cha­cun des blocs et leur séquence étant pro­tégés con­tre toute modification. 

Le cas du Bitcoin

Même au sein de la cryp­tomon­naie la plus con­nue, le Bit­coin, il existe une notion d’entête de bloc et de con­tenu de bloc. Cet entête ne con­tient que la racine de l’ar­bre de Merkle, au con­traire du bloc qui con­tient toutes les trans­ac­tions. Ce mécan­isme per­met par exem­ple de con­cevoir des appli­ca­tions légères afin de pou­voir gér­er les cryp­toac­t­ifs sur des smart­phones. Ces pro­grammes appli­cat­ifs n’utilisent, en cas de paiement avec des bit­coins par exem­ple, que les entêtes des blocs, car ils ne pèsent que quelques mégaoctets cha­cun, et n’embarquent pas la blockchain tout entière, ce qui serait impos­si­ble à gér­er techniquement.

Il est pos­si­ble de valid­er des mil­liers de trans­ac­tions dont on peut ensuite prou­ver qu’elles ont bien été engagées. Et tout cela à faible coût. 

Ces entêtes sont générés par du hachage cryp­tographique et validés par ce qu’on appelle une preuve de tra­vail (ou Proof of Work). Il s’agit du prin­ci­pal mécan­isme de con­sen­sus des blockchains. Le mécan­isme des rollups offre la même sécu­rité que la preuve de tra­vail des bit­coins, mais en réal­ité, l’u­til­isa­teur n’a affaire qu’à des entêtes et ne voit pas l’intégralité des trans­ac­tions con­tenues dans les arbres de Merkle. Ici, avec très peu d’in­for­ma­tions, il est pos­si­ble de valid­er des mil­liers de trans­ac­tions dont on peut ensuite prou­ver qu’elles ont bien été engagées. Et tout cela à faible coût.

Le cas de l’Ethereum

Cette notion de rollup, on la retrou­ve sur d’autres blockchains qui embar­quent un opéra­teur : les fameux smart con­tracts, et en pre­mier lieu l’Ethereum. Cette cryp­tomon­naie fait face à une demande d’utilisateurs de plus en plus crois­sante. De fait, la vitesse de traite­ment des trans­ac­tions baisse, alors que les frais de trans­ac­tion aug­mentent inexorablement. 

Au sein de l’Ethereum, les smart con­tracts sont des pro­grammes enreg­istrés dans la blockchain et que chaque trans­ac­tion actionne automa­tique­ment. Ils garan­tis­sent l’intégrité, la valid­ité et l’inviolabilité des trans­ac­tions, si et seule­ment si toutes les con­di­tions sont rem­plies. L’ensemble du proces­sus est automa­tisé. Mais ces smart con­tracts exé­cutés à chaque trans­ac­tion ralen­tis­sent égale­ment le sys­tème de validation. 

L’idée d’intégrer du rollup dans Ethereum relève de la même idée que pour le Bit­coin : libér­er de la bande pas­sante. L’opérateur de rollups, qui est en réal­ité en dehors de la chaîne de blocs, met régulière­ment à jour la racine de l’ar­bre de Merkle dans une unique trans­ac­tion déposée sur la blockchain principale. 

Ce mécan­isme cryp­tographique per­met, en très peu d’in­for­ma­tions, de fournir plus tard des preuves que des trans­ac­tions ont bien été effec­tuées, de prou­ver leur exis­tence dans le futur. En une seule opéra­tion, on peut ain­si faire pass­er 1 000 ou 10 000 trans­ac­tions. Or, Ethereum accepte aujourd’hui seule­ment 12 trans­ac­tions par sec­onde, ce qui fait explos­er les frais de trans­ac­tion et rend cette blockchain de moins en moins attractive. 

Une question de sécurité

Ce mécan­isme soulève un défi majeur, celui de la sécu­rité, car il faut s’assurer que l’opérateur de rollups ne fasse pas n’importe quoi. Ce procédé lui per­met dans les faits de plac­er sur la blockchain un hash qui ne per­met pas de valid­er immé­di­ate­ment une trans­ac­tion engagée. Or, la blockchain doit être capa­ble de cer­ti­fi­er le hash. À par­tir de là, deux philoso­phies se déga­gent. Il y a les rollups dit opti­mistes d’un côté et les rollups appelés un peu abu­sive­ment « zero knowl­edge » (ZK) rollups de l’autre.

Côté rollups opti­mistes, on par­le de preuves de fraude émis­es par des agents, générale­ment des pro­grammes, qui obser­vent la blockchain et les trans­ac­tions des util­isa­teurs. Si le hash placé par un opéra­teur est fraud­uleux par rap­port aux règles applica­tives, l’opérateur est puni et l’observateur est récom­pen­sé. Tout cela se passe sur une fenêtre tem­porelle assez longue de plusieurs jours. Ce proces­sus hors chaîne est qual­i­fié d’optimiste parce que tout ce qu’on espère, c’est que ce mécan­isme d’alerte ne se déclenche pas. 

L’autre famille, les ZK rollups, fonc­tionne dif­férem­ment. À chaque fois que l’opéra­teur de rollups place la racine de l’ar­bre de Merkle sur la blockchain, il dépose égale­ment une preuve, au sens cryp­tographique du terme, que tout est cor­rect. Ce procédé fait appel à un con­cept majeur de la cryp­togra­phie bap­tisé les SNARK et qui prou­ve qu’un cal­cul s’est exé­cuté cor­recte­ment. Surtout, cette preuve est très courte même si le cal­cul est très long. Si ce dernier com­porte 100 mil­lions d’opéra­tions, elle ne pèse que quelques cen­taines d’octets au max­i­mum. C’est un peu miraculeux. 

Ces deux tech­nolo­gies, les rollups opti­mistes et les ZK rollups, relèvent de la même philoso­phie : réduire le nom­bre d’informations par trans­ac­tion et repouss­er au max­i­mum la preuve de valid­ité vers des mécan­ismes cryptographiques. 

Jean Zeid 

Le monde expliqué par la science. Une fois par semaine, dans votre boîte mail.

Recevoir la newsletter