Cryptonote : un protocole de transactions anonymes

Collectionnez les articles du JDC en NFT

Collecter cet article

Analyse de CryptoNote, un protocole qui depuis 2013, permet d’augmenter la confidentialité des transactions grâce à l’utilisation d’adresses uniques et des ring signatures. 

Cet article est le second d’une série d’articles consacrée aux protocoles assurant l’anonymat des cryptomonnaies.

Les origines de CryptoNote

CryptoNote a été proposé par Nicolas van Saberhagen à travers le whitepaper « CryptoNote V2.0 » en octobre 2013. Plusieurs publications à ce sujet avaient déjà été réalisées par Saberhagen depuis décembre 2011.

À la différence de Coinjoin, l’idée ici est de réaliser un nouveau protocole palliant aux faiblesses du Bitcoin tout en ajoutant des fonctionnalités assurant l’anonymat et la confidentialité de ses utilisateurs. L’objectif du protocole est de répondre à deux conditions pour les transactions :

  • Impossibilité de traçabilité : pour chaque transaction entrante, tous les expéditeurs possibles sont équitablement probables.
  • Non-associativité : pour deux transactions sortantes, il est impossible de prouver qu’elles ont été envoyées à la même personne.

Seule la seconde condition peut être remplie sur Bitcoin en utilisant Coinjoin. À travers son whitepaper, Nicolas van Saberhagen expose un schéma de transactions entièrement anonymes satisfaisant à la fois les conditions d’impossibilité de traçabilité et de non-associativité.

Pour réaliser les deux conditions présentées précédemment, plusieurs technologies ont été utilisées et combinées afin de travailler dans un but commun.

Utilisation d’adresses uniques

La première est l’utilisation de clés publiques uniques. Ces clés publiques sont dérivées de l’adresse du destinataire et de données aléatoires de l’expéditeur, ce qui permet de pallier au problème de réutilisation d’adresses

En effet, la réutilisation d’adresses pose un grand problème d’anonymat. Lorsque l’on connait l’adresse publique d’un utilisateur – comme dans le cas de Bitcoin – il est possible d’accéder à l’historique des transactions.

Ainsi aucun observateur ne peut déterminer si des transactions ont été envoyées à une adresse spécifique ou relier deux adresses ensemble.

Les ring signature

En plus de cela, CryptoNote utilise les One-time ring signatureSignature de cercle – permettant d’assurer l’intraçabilité. Cette approche est dans un sens comparable au fonctionnement de Coinjoin : une ring signature permet de signer une transaction avec N clés publiques et une seule clé privée correspondant à l’une des N clés publiques. Ces clés publiques sont sélectionnées parmi toutes les sorties de la blockchain ayant le même montant que la sortie dépensée.

Un observateur externe peut vérifier la signature, et affirmer que l’une des clés publiques présentes dans la transaction correspond à la clé privée qui a signé le message. Cependant, il lui est impossible de savoir laquelle.

Dans le schéma ci-dessous, Alice, Bob et Carol ont signé le message, cependant, l’observateur n’a aucun moyen de savoir qui des trois est réellement à l’origine de la transaction.

Schéma de fonctionnement des ring signatures. Source : CryptoNote.org

Une fois encore, plus le nombre de clés publiques N utilisées est grand moins la probabilité que vous en soyez à l’origine est grande et de ce fait votre anonymat est renforcé.

Conclusion sur CryptoNote

CryptoNote est utilisé dans de nombreuses cryptomonnaies telles que Monero ou Bytecoin, tout en connaissant quelques variantes d’implémentations. Par exemple, dans le cas de Monero le protocole a été amélioré en janvier 2017 afin d’intégrer Ring CT. Ceci améliore les ring signatures en permettant de dissimuler les montants, les origines et les destinations des transactions avec une efficacité raisonnable.

Renaud H.

Ingénieur en software et en systèmes distribués de formation, passionné de cryptos depuis 2013. Touche à tout, entre mining et développement, je cherche toujours à en apprendre plus sur l’univers des cryptomonnaies et à partager le fruit de mes recherches à travers mes articles.

Commentaires

Une réponse à “Cryptonote : un protocole de transactions anonymes


Ale
Bonjour qu'en est t'il des récentes failles du Monero? N'est t'il pas vulnérable? Car selon les dires de certains analystes cette crypto n'est pas la plus fiable en matière d'anonymat... Je pense que le Dero as une meilleure approche! Salutations
Répondre · Il y a 5 ans

Votre email ne sera pas publié. En publiant un commentaire, vous acceptez notre politique de confidentialité.


Recevez un condensé d'information chaque jour