Litecoin : la mise à jour Mimblewimble axée sur la vie privée
7 juillet, 2022
9 min
La confidentialité est un des idéaux qui a stimulé la création des cryptomonnaies. Le Litecoin (LTC) n’est pas différent : la mise à jour Mimblewimble vise à protéger l’identité des expéditeurs et des destinataires des transactions, ainsi qu’à masquer la valeur réelle des échanges. Reconstruisons donc l’histoire des mises à jour du Litecoin et plongeons dans les rouages du protocole Mimblewimble !
SegWit : une signature pour le Lightning Network
Le 8 octobre 2011, le bloc de genèse de Litecoin (LTC) a été miné. Au cours de cette décennie, le protocole de Charlie Lee a été mis à jour à plusieurs reprises afin de faire du digital silver une monnaie populaire. En effet, l’offre et la vitesse native, quatre fois supérieure à celle du bitcoin, n’ont pas suffi à répondre aux nouvelles exigences de la DeFi.
Des temps de bloc plus courts (2,5 minutes) garantissent plus de transactions par seconde (tps) : ainsi, Litecoin était destiné à être un moyen d’échange plus pratique et plus évolutif, mais la révolution du Web 3.0 exige une rapidité encore plus performante. Par conséquent, le moteur de LTC a été modifié avec un premier soft fork : Segregated Witness (SegWit).
SegWit, en bref, est une mise à jour du Litecoin qui a organisé la blockchain de manière plus efficace : en séparant les signatures, qui autorisent les mouvements, du reste des données ; elle a fait de la place dans les blocs. SegWit n’a pas modifié la taille réelle des blocs (ce qui aurait nécessité un hard fork), mais il a permis d’économiser jusqu’à 65 % d’espace et d’augmenter les tps.
Cependant, le véritable avantage est d’avoir résolu le problème de la “malléabilité” des transactions : en stockant les signatures dans une structure annexe, à la fin du bloc, elles ne peuvent plus être modifiées avant que le réseau ne rende les transactions immuables. Ce résultat semble évident mais a rendu possible des solutions de couche 2 telles que le Lightning Network ! En effet, Litecoin, ayant des caractéristiques très similaires à Bitcoin, a servi de réseau de test : en août 2017, peu après l’activation réussie de SegWit sur le réseau de LTC, Bitcoin a intégré la mise à niveau, ouvrant l’innovation du Lightning Network.
OmniLite : DeFi sur Litecoin
Des transactions plus rapides et plus sûres ne sont toutefois pas suffisantes : la DeFi exige un niveau fondamental de smart contracts et de dapps. Par conséquent, OmniLite, une plateforme construite sur la blockchain de LTC, facilite à partir de 2021 la création de tokens, de DAO et de NFT. Cette extension permet également l’émission de stablecoins sur Litecoin : n’oublions pas que le protocole Omni, sur lequel Omnilite est basé, prenait en charge Tether (USDT) jusqu’à ce qu’il soit remplacé par la norme ERC-20 d’ethereum.
Les frais moindres, la sécurité et la persistance du réseau Litecoin (le seul à avoir une fiabilité historique comparable à celle du Bitcoin) ne suffisent cependant pas à en faire le meilleur candidat pour soutenir le Web 3.0. L’évolution de la blockchain se poursuit donc : la prochaine étape est le protocole Mimblewimble.
Mimblewimble : la mise à niveau de Litecoin pour la confidentialité et l’anonymat
Bienvenue à la première leçon de crypto-magie : la formule que nous apprenons aujourd’hui est “Mimblewimble”, également connue sous le nom de malédiction de Languelingua. Dans l’univers créé par J.K. Rowling, c’est ainsi que les sorciers se réduisent au silence, pour empêcher leur adversaire de lancer des sorts ou de parler en dehors de leur tour. La première formulation de Mimblewimble est signée par un certain Tom Elvis Jedusor, un hommage au personnage de Voldemort. L’auteur de ce premier whitepaper, probablement un programmeur français, est manifestement un fan de Harry Potter ! L’anonymat est d’ailleurs un topos crypto (qui rappelle Satoshi Nakamoto et la Team Rocket), particulièrement adapté au créateur d’un protocole visant à protéger la vie privée.
Andrew Poelstra, chercheur chez Blockstream, a ensuite développé la proposition de Tom, publiant sa version en octobre 2016. Le protocole Mimblewimble a été conçu à l’origine comme une mise à jour du Bitcoin, mais sa difficile intégration dans le BTC en a fait plutôt une solution possible de couche 2.
Litecoin, cependant, étant extrêmement compatible avec Bitcoin, a proposé la mise en œuvre du Mimblewimble : à partir du bloc d’extension Mimblewimble (MWEB), une chaîne parallèle (sidechain) a été créée afin de préserver la confidentialité des transactions. Par la suite, les mineurs publieront des “résumés” des échanges qui ont eu lieu sur la sidechain, sur la blockchain principale de Litecoin. Cette mise à niveau de Litecoin fera définitivement partie du protocole dans sa forme actuelle si, dans l’année qui suit sa mise en œuvre (19 mai 2022), ¾ des nœuds l’utilisent.
Tout d’abord, qu’est-ce qui change dans le Litecoin ? Le protocole Mimblewimble introduit l’option “transactions anonymes“, une caractéristique commune aux cryptomonnaies focalisées sur la vie privée. Avec le Bitcoin, tout comme Litecoin, les adresses sont des chaînes de lettres et de chiffres, mais il est possible de croiser les données d’échange, par le biais de services centralisés tels que Chainalysis et blockchain explorer, pour en déduire certaines données d’identification. La mise à jour Litecoin Mimblewimble, quant à elle, masque toutes les informations potentiellement sensibles contenues dans les blocs, de manière à préserver la confidentialité des transactions. Une cape d’invisibilité pour l’expéditeur, le destinataire et la valeur des échanges.
Curiosité
Le Litecoin a été créé sur la base du code source du Bitcoin, mais les adresses alphanumériques LTC comportent 33 caractères et commencent toujours par la lettre L. Inexplicablement, cependant, les adresses multi-signatures ont conservé le chiffre initial 3, ce qui les rend indiscernables des adresses BTC. Attention : si tu envoies des LTC à une adresse BTC multi-signatures, tes coins seront irrémédiablement perdus !
Cryptage du protocole Mimblewimble
Techniquement, la mise à jour Litecoin Mimblewimble comporte plusieurs couches de cryptage, dont une série de “masques” pour chaque élément de données d’une transaction : valeurs, expéditeurs et destinataires.
Elliptic Curve Cryptography (ECC)
La cryptographie asymétrique (ou à clé publique) est une solution utilisée par toutes les blockchains pour préserver la sécurité du réseau ; en particulier, le protocole Mimblewimble utilise la elliptic curve cryptography (cryptographie à courbe elliptique, ou ECC). En bref, chaque adresse (de n’importe quelle blockchain) possède une paire de clés : privée et publique. Leur sécurité repose sur le problème du logarithme discret : la clé privée ne peut être découverte à partir de la clé publique, car elle est liée par une fonction qui ne peut être résolue que dans un sens.
Dans le cas de l’ECC, il s’agit de P=k*G, où P est la clé publique, k la clé privée et G une constante. Cette formule augmente considérablement la difficulté du cryptage, c’est pourquoi le protocole Mimblewimble est une excellente mesure de sécurité cryptographique. L’ECC protège intrinsèquement chaque portefeuille sur la blockchain, mais ce n’est pas la seule défense.
Confidential Transaction
La confidential transaction est un code également utilisé par Monero : simplement, du côté du destinataire, un algorithme choisit un nombre aléatoire avec lequel, du côté de l’expéditeur, la véritable quantité de tokens sera remplacée. Une technique brillante, car le facteur choisi sera également la preuve de propriété des LTC reçus : seul ce code, connu des seules parties contractantes, pourra déchiffrer leur valeur.
En outre, ce protocole exclut toute utilisation ultérieure de clés privées : moins d’utilisation, plus de sécurité. On peut considérer la clé comme un mot de passe : utiliser le même pour plusieurs services faciliterait sa découverte.
Dandelion
La mise à jour Mimblewimble cache les identités de l‘expéditeur et du destinataire grâce à un autre mécanisme : “the dandelion” cette fleur que nous appelions “pissenlit” quand nous étions enfants ; le nom suggère une métaphore parfaite pour expliquer le mécanisme !
Afin d’être anonyme, une transaction ne sera pas annoncée à l’ensemble de la blockchain : le nœud qui la propose transmettra l’information à un seul nœud choisi au hasard. Ce dernier enverra à son tour les détails de la transaction à un autre participant aléatoire, et ainsi de suite, jusqu’à ce que l’un des suivants fasse “exploser” les données et les diffuse dans le reste de la blockchain. De cette manière, il sera plus difficile de retrouver l’identité de l’expéditeur et du destinataire.
CoinJoin
Pour rendre les transactions intraçables, le protocole Mimblewimble met en œuvre deux autres moyens cryptographiques, et CoinJoin (également utilisé par Dash et Bitcoin) est le premier d’entre eux. CoinJoin combine plusieurs transactions en une seule, en “désencombrant” les entrées et les sorties afin de cacher ce qui a été envoyé (déjà remplacé par la transaction confidentielle) et entre qui.
Cut through
Cut through est le deuxième mécanisme qui agit sur les transactions : elle coupe le chemin des tokens, n’indiquant que le point de départ et le point d’arrivée. Imagine : A envoie 10 LTCs à B, puis les transfère à C. Le MW n’enregistrera qu’un seul passage, de A à C, ce qui rendra également l’ensemble du système plus évolutif, en raison de la moindre quantité de données à stocker.
Fait amusant
La courbe ECC la plus utilisée dans le monde de la cryptographie est y² = x³+7, une ellipse appelée secp256k1, choisie par Satoshi pour les clés du Bitcoin.
La mise à jour Mimblewimble fera de Litecoin une forteresse imprenable. Les 5 mécanismes cryptographiques (ECC, Confidential Transaction, Dandelion, CoinJoin et Cut-through), tout en fonctionnant individuellement, rendent la sécurité exponentielle : chaque protocole augmente le degré de confidentialité, multipliant la puissance de la couche précédente. Le Litecoin sera un nouvel exemple de confidentialité décentralisée. Mimblewimble !