Comprendre les algorithmes de minage
Les algorithmes de minage sont l'épine dorsale des réseaux basés sur la blockchain comme Bitcoin et d'autres protocoles.
Dans la technologie blockchain, les algorithmes de minage sont nécessaires à la vérification des transactions et à la sécurité du réseau. Un algorithme de minage demande aux ordinateurs des mineurs de suivre un ensemble de règles pour générer un bloc valide.
La preuve de travail (PoW) est l'algorithme de consensus bien connu utilisé par Bitcoin et d'autres crypto-monnaies. Dans le cadre de la preuve de travail, les mineurs rivalisent en utilisant la puissance de calcul pour trouver une valeur de hachage spécifique qui leur donnera le nouveau bloc. Les circuits intégrés spécifiques à l'application (ASIC) sont le matériel spécialisé nécessaire aux mineurs pour être compétitifs dans un processus aussi énergivore, mais avant les ASIC, les équipements miniers à CPU et GPU de plus petite taille étaient utilisés par les utilisateurs à domicile.
Le minage ASIC utilise principalement la fonction de hachage SHA-256, conçue par l'Agence de sécurité nationale américaine (NSA) et publiée en 2001 comme norme d'intégrité des données. Bitcoin utilise SHA-256 pour garantir une sécurité et une intégrité maximales, car la moindre modification de l'algorithme altèrerait le résultat de la fonction de hachage.
Pour suivre le rythme des opérations de minage à l'échelle industrielle, de nombreux mineurs rejoignent des pools de minage afin de combiner leur puissance de calcul et d'augmenter ainsi leurs chances de miner un bloc avec succès. Les récompenses par bloc sont partagées proportionnellement à la contribution de chaque membre.
Le choix de l'algorithme de minage est une décision cruciale pour un projet de cryptomonnaie, car il détermine les règles et les exigences nécessaires à la création et à la sécurisation du réseau blockchain, outre la manière dont les participants sont récompensés par les nouvelles pièces. Parmi les autres algorithmes de minage populaires, on peut citer Ethash, utilisé par la blockchain Ethereum, et CryptoNight, utilisé par le réseau Monero.
Qu'est-ce que l'algorithme CryptoNight ?
CryptoNight est l'un des algorithmes de minage les plus rapides et fait partie du protocole de consensus CryptoNote.
CryptoNight est un algorithme de minage PoW pour le minage CPU et GPU, conçu pour résister aux ASIC afin d'empêcher la centralisation de la puissance de minage. Il vise à aider les utilisateurs à miner plus efficacement grâce à une combinaison de fonctions de hachage, notamment CryptoNight et Keccak.
Sa fonction de hachage cryptographique s'appuie sur l'Advanced Encryption Standard (AES), un algorithme de niveau militaire garantissant une sécurité extrême, faisant de CryptoNight un algorithme de minage hautement sécurisé. Depuis que Monero l'utilise comme algorithme de hachage pour son consensus blockchain, la réputation de CryptoNight en tant qu'algorithme de sécurité s'est renforcée dans le monde des cryptomonnaies.
La création de l'algorithme CryptoNight est fascinante et rappelle l'origine du Bitcoin. Son créateur — qui porte le nom fictif de Nicolas van Saberhagen — a disparu, tout comme le célèbre Satoshi Nakamoto.
Compte tenu de cette similitude, beaucoup pensent que les deux développeurs sont la même personne, le mystère étant d'autant plus grand que la date de sortie inquiétante de CryptoNote, le 12 décembre 2012 (12/12/2012), est venue renforcer ce mystère. CryptoNote était un protocole de sécurité et un outil de confidentialité favorisant les transactions confidentielles, les transactions non liées et les signatures circulaires.
Comment fonctionne l'algorithme de minage CryptoNight ?
CryptoNight utilise le protocole de consensus CryptoNote pour renforcer la confidentialité afin que personne ne puisse savoir quel participant à la transaction paie et qui reçoit l'argent.
CryptoNight est compatible avec le minage GPU, mais ses caractéristiques le rendent idéal pour le minage CPU. Avec son ensemble de multiplicateurs rapides 64 bits pour une vitesse maximale, l'architecture CPU est très performante ; de plus, l'utilisation intensive des caches CPU garantit des performances optimales.
Son processus de travail comprend trois étapes principales :
Créer un « bloc-notes »
Une grande quantité de données en mémoire contenant des valeurs intermédiaires est stockée lors d'une fonction de hachage. Les premières données d'entrée sont hachées avec la fonction de hachage Keccak-1600, ce qui génère 200 octets de données générées aléatoirement.
Transformation du chiffrement
Il prend ensuite les 31 premiers octets de ce hachage Keccak-1600 et les transforme en clé de chiffrement pour un algorithme AES-256, la valeur la plus élevée au sein de la famille AES.
Hachage final
CryptoNight utilise l'intégralité des données créées par les fonctions AES-256 et Keccak à l'étape précédente et les transmet aux autres fonctions de hachage. La preuve de travail CryptoNight produit un hachage final. Ce hachage possède une extension de 256 bits, soit un total de 64 caractères.
Pourquoi CryptoNight est-il important ?
CryptoNight a été conçu pour donner aux CPU et aux GPU une opportunité égale d'exploiter des blocs et de décourager l'utilisation des mineurs ASIC.
CryptoNight est important pour trois raisons essentielles : il offre une confidentialité renforcée grâce à des transactions intraçables, sa résistance ASIC et son évolutivité. La plupart des cryptomonnaies, dont le Bitcoin (BTC), sont quasiment privées, car les transactions et le solde d'une personne peuvent être facilement tracés sur la blockchain open source via une adresse publique.
CryptoNight, quant à lui, a été conçu pour satisfaire les utilisateurs soucieux de leur confidentialité et souhaitant effectuer des transactions privées sur la blockchain. Ses créateurs ont intégré deux outils de confidentialité essentiels à l'algorithme pour garantir une sécurité et un anonymat optimaux : les signatures circulaires et les adresses furtives, toutes deux développées par l'équipe Monero.
L'atténuation des inquiétudes croissantes concernant la centralisation des cryptomonnaies due aux plateformes de minage ASIC a été l'une des principales raisons du développement de CryptoNight. Les développeurs du projet se sont attachés à remettre en question la domination des ASIC et ont développé un système permettant aux GPU et aux CPU de conserver leur avantage concurrentiel dans le minage.
L'évolutivité et la haute efficacité sont également au cœur de CryptoNight, dont le calcul a augmenté de manière exponentielle, garantissant une plus grande évolutivité grâce à des transactions plus rapides.
Quelles crypto-monnaies utilisent l'algorithme de minage CryptoNight ?
Bytecoin a été la première crypto-monnaie à appliquer le protocole CryptoNote à sa blockchain, mais son application sur Monero a aidé le projet à gagner en réputation et en notoriété.
Un certain nombre de crypto-monnaies ont intégré l'algorithme CryptoNight, le tout premier exemple étant CryptoNoteCoin, une référence claire au projet CryptoNight.
Bytecoin
Bien qu'initialement déterminé à résister à la domination ASIC, la première pièce CryptoNight qui a soutenu le développement du projet a annoncé en 2018 qu'elle intégrerait le minage ASIC tout en conservant l'algorithme pour éviter les problèmes de sécurité et d'anonymat.
Monero
Bien que Monero n'utilise plus CryptoNight, il était l'un de ses plus fervents défenseurs de sa position contre la puissance des ASIC. Monero a hérité de CryptoNight comme preuve de travail en 2014, et depuis, il a légèrement fait évoluer l'algorithme, créant CryptoNight-R pour rompre intentionnellement la compatibilité avec les ASIC existants.
Cependant, un CryptoNight performant et compatible ASIC a été développé en 2017 par Bitmain, et en 2018, les ASIC ont réintégré le réseau Monero. En 2019, Monero a remplacé son algorithme de minage par RandomX, axé sur le minage par CPU.
Electroneum (ETN)
Electroneum utilise l'algorithme de minage CryptoNight, avec une innovation notable dans sa version mobile, permettant aux utilisateurs d'exploiter la crypto-monnaie non seulement par la méthode conventionnelle mais également en utilisant leurs smartphones via un mineur mobile.
D'autres projets moins connus implémentant l'algorithme CryptoNight incluent Boolberry, Dashcoin, DigitalNote, DarkNetCoin et Pebblecoin. Cependant, ces projets ont été exposés à des attaques malveillantes en 2017, suscitant des inquiétudes quant à la sécurité de leurs réseaux et à la fiabilité de l'algorithme CryptoNight.
Différentes variantes de l'algorithme CryptoNight ont été créées, et CryptoNight Heavy est une version de l'algorithme de hachage. Il est implémenté dans divers projets de cryptomonnaie, notamment Ryo Currency, Sumokoin et Loki.
Cependant, comme CryptoNight Heavy repose sur un réseau pair-à-pair sans confiance, il peut entraîner de graves vulnérabilités. Les nœuds devant vérifier la preuve de travail de chaque nouveau bloc et consacrer un temps considérable à l'évaluation de chaque hachage, ils peuvent devenir plus vulnérables aux attaques par déni de service distribué (DDoS), des activités coordonnées ciblant des botnets qui surchargent un réseau avec du faux trafic.
Quel avenir pour l’algorithme CryptoNight ?
Depuis sa création en 2012, l'algorithme CryptoNight a subi des changements importants, des mises à niveau et de légères modifications pour s'adapter aux différents projets de crypto-monnaie jusqu'à ce que la version ultime créée par Monero, CryptoNight-R, soit introduite.
CryptoNight est-il toujours un algorithme de minage valide, ou a-t-il échoué dans sa mission de devenir un outil égalitaire ? Toutes les versions avaient un objectif commun : résister aux ASIC et empêcher sa domination accrue dans le minage de cryptomonnaies.
Beaucoup pensent que cela n'a pas eu lieu et que le projet n'a pas tenu sa position initiale. L'équipe Monero a déclaré que l'échec était dû à des raisons de sécurité. Le hachage CryptoNight étant plutôt coûteux et long à vérifier, il peut représenter un risque de déni de service pour les nœuds, comme cela a été souligné précédemment pour certaines cryptomonnaies basées sur CryptoNight.
D'autres pensent qu'il a fait de son mieux pour empêcher une nouvelle expansion du pouvoir des entreprises ASIC. Il est né comme un type d'algorithme égalitaire qui pouvait garantir l'égalité des droits aux personnes en matière d'exploitation minière, et pas seulement au monde de l'entreprise.
Il reste un outil de minage accessible à tous, même si la résistance des ASIC n'est plus envisageable, car les ASIC ont pu s'adapter pour miner avec succès pour cet algorithme. Néanmoins, il peut constituer un bon point de départ pour le développement de futurs projets de cryptomonnaie, notamment pour les utilisateurs soucieux de la confidentialité et d'un minage équitable.
