Bitcoin n’est pas sûr quantum et comment nous pouvons le réparer si nécessaire

Bitcoin et Quantum-Safe

Au cours de la dernière année, il est devenu une vérité connue dans les cercles spécialisés Bitcoin que Bitcoin, dans sa forme actuelle, est partiellement quantique. La revendication est que xe2x80x9cusedxe2x80x9d Bitcoin adresses xe2x80x93 qui est, les adresses qui ont à la fois reçu et envoyé bitcoins, ont leur clé publique correspondante exposée sur la blockchain, permettant aux adversaires quantique de casser la cryptographie elliptique Bitcoinxe2x80x99s, tandis que xe2x80x9cunusedxe2x80x9d Bitcoin adresses, qui peuvent avoir ont obtenu des bitcoins mais n'ont pas été dépensés, n'ont pas leurs clés exposées, ce qui leur permet de bénéficier des promesses cryptographiques considérablement plus fortes de SHA256 et RIPEMD-160. À condition que les premières dépenses commerciales de n'importe quelle adresse Bitcoin drainent tous les fonds enregistrés dans ce discours à de nouvelles adresses comme changement, le concept est que Bitcoin devrait rester aussi sûr qu'avant. En réalité, comme la plupart des portefeuilles s'efforcent déjà de ne pas réutiliser les adresses pour améliorer la confidentialité, pour la plupart des utilisateurs, des modifications logicielles mineures seront nécessaires pour satisfaire aux exigences de sécurité les plus strictes. Cet argument a été avancé par beaucoup de gens de la communauté Bitcoin, en particulier comme moi-même. En réalité, mais l'argument a un défaut fatal.

Pour commencer, l'arrière-plan spécialisé. La clé publique générale provient de la clé privée par multiplication de courbe elliptique, et, étant donné seulement les ordinateurs classiques tels que ceux qui existent actuellement, la récupération de la clé privée à partir d'une clé publique est fondamentalement impossible. Le discours provient de la clé publique par une série de trois étapes: appliquer la fonction de hachage SHA256 au secret public, en utilisant la fonction de hachage RIPEMD-160 pour cela et enfin inclure une valeur appelée checksum à des fins de correction d'erreurs ( Si vous tapez accidentellement un caractère lors de l'envoi d'un discours Bitcoin votre argent ne disparaît pas dans un trou noir). Le but des fonctions de hachage est que, tout comme la multiplication de la courbe elliptique, ils sont impossibles à inverser; étant donné une adresse, il n'y a aucun moyen, en dehors de l'approche de la force brute consistant à essayer toutes les clés publiques possibles, de trouver la clé publique dont le discours est dérivé.

Algorithme Shorxe2x80x99s est principalement utile pour factoriser les nombres xe2x80x93 à titre d'exemple, compte tenu du nombre 1728499, en supposant que le nombre se compose des variables 1129 * 1531. Avec des nombres à sept chiffres, le problème peut même être résolu avec assez de patience, mais si les nombres sont des centaines de chiffres longs ordinateurs quantiques sont exigés. En réalité, la difficulté de factoriser de très longs nombres est basée sur RSA, le premier algorithme de cryptage à clé publique et un encore en usage aujourd'hui. Groverxe2x80x99s algorithme est beaucoup plus générique xe2x80x93 étant donné une liste de nombres avec une propriété mathématique, il peut comprendre que l'un de ces nombres satisfait votre propriété. Une version modifiée de l'algorithme Shorxe2x80x99s peut également craquer une cryptographie à courbe elliptique, et l'algorithme de Groverxe2x80x99s frappe pratiquement n'importe quoi, comme SHA256 et RIPEMD-160.

D'autre part, les deux calculs diffèrent radicalement dans leur efficacité. D'autre part, l'algorithme de Groverxe2x80x99s n'offre rien d'aussi rapide. Dans le cas du RIPEMD-160, le plus pauvre des deux hash utilisé pour faire une adresse Bitcoin, cela signifie que le nombre d'étapes nécessaires pour récupérer une clé publique à partir d'une adresse passe de 1,4 trillion trillion trillion à xe2x80xa6 1,2 trillion trillion. Un peu plus facile, mais heureusement impraticable. Comme expliqué ci-dessus, xe2x80x9cusedxe2x80x9d Bitcoin adresses d'avoir un secret public exposé, donc c'est le défi simple de diviser la cryptographie de la courbe elliptique en utilisant l'algorithme Shorxe2x80x99s qui est le goulot d'étranglement. Xe2x80x9cUnusedxe2x80x9d Les adresses Bitcoin, en revanche, n'exposent que le discours lui-même, c'est donc le problème RIPEMD-160 Grover qui pose l'obstacle affaibli, mais toujours insurmontable.

Alors Whatxe2x80x99s le problème?

Bitcoin n'est pas sûr quantum et comment nous pouvons le réparer si nécessaire_[en-fr]_2018-05-30 13-25-37--593 utilisant la fonction de hachage

Voici où la logique susmentionnée se trompe. Qu'en est-il des ordinateurs quantiques dans les deux paragraphes ci-dessus est également, compte tenu de l'expertise publique, fondamentalement correcte, et si un discours Bitcoin est vraiment inutilisé, alors, même les ordinateurs quantiques décernés, tout bitcoins à l'intérieur sont bien. D'un autre côté, la question est: comment pouvez-vous vraiment dépenser les fonds? Pour pouvoir libérer les bitcoins envoyés à cette adresse, il est nécessaire de faire un échange Bitcoin, lequel trade doit avoir une signature et une clé publique pour vérifier que c'est la personne qui possède la clé privée qui l'a signée. Mais voici le problème. En faisant ce commerce, vous venez de publier toutes les informations que toute personne possédant un ordinateur quantique devrait vous imiter pleinement, sur-le-champ. Avec l'informatique quantique, les signatures de courbes elliptiques sont aussi fragiles qu'une feuille de papier électronique.

Si vous envoyez un échange de 100 BTC en langage 13ign, avec 10 BTC en 1v1tal pour couvrir les biens et 90 BTC en remontant à votre nouvelle adresse à 1mcqmmnx, le premier noeud auquel vous envoyez le trade peut remplacer l'adresse de décalage par quelque chose ils veulent, récupérer la clé privée de votre clé publique et forger votre signature. La seule façon d'éviter le problème consiste essentiellement à expédier le commerce directement à un pool de minage, tel que BTCGuild ou Slush, et espérer que le pool de minage sera juste et placer le commerce directement dans la blockchain. Même après cela, cependant, vous êtes exposé à une attaque de Finney xe2x80x93 un mineur malhonnête peut forger votre signature, et faire un bloc valide comprenant son commerce falsifié en continuant la blockchain d'un avant le bloc le plus récent (celui contenant votre commerce), et, comme les longueurs des nouvelles et anciennes blockchains seraient alors équivalentes, l'attaquant aurait une probabilité de 50% que son bloc prenne la priorité. Ainsi, les transactions sécurisées sont fondamentalement impossibles.

Lamport Signatures: Une option.

Fondamentalement, le but des fonctions de hachage serait de nous fournir l'équivalent mathématique d'un verrou. La publication du hachage d'une valeur est très similaire à la mise en place d'un verrou en public, et la libération de la valeur d'origine est similaire à l'ouverture du verrou. Mais une fois que le verrou est ouvert, il ne peut plus être fermé. Le problème est, cependant, que les verrous indépendamment ne peuvent pas faire un schéma de signature numérique sécurisé. Ce que la cryptographie à courbe elliptique fournit, et SHA256 et RIPEMD-160 non, est un moyen de démontrer que vous avez la valeur secrète derrière un cyber-verrou, et de joindre cette évidence à un message particulier, sans révéler la valeur originale ou même rendre la preuve valable pour tout autre message que celui que vous avez joint. Dans Bitcoin, le message en question est un échange. Chaque fois que votre client Bitcoin envoie un échange à la communauté, ce qu'il fait, c'est envoyer une preuve mathématique de la vérité suivante: ce commerce, qui déclare que j'envoie cette somme d'argent pour ce discours, a été assemblé par quelqu'un responsable de le secret privé soutenant le discours Bitcoin Ixe2x80x99m envoyant de. C'est la base pour le côté transactionnel de la sécurité Bitcoinxe2x80x99s.

Mais, il existe une construction qui nous permet de résoudre ce problème sans RSA, courbes elliptiques ou tout autre système cryptographique à clé publique traditionnelle: signatures Lamport. Une signature Lamport est une signature unique qui contourne le problème du lockbox de la manière suivante: il y a plusieurs verrous, et c'est le contenu de ce message (ou plutôt, le hachage du message) qui détermine quels verrous doivent être ouverts. Si une personne tente d'inventer votre message, il est presque certain (lire: que le soleil fonctionnera à partir d'hydrogène avant qu'une autre situation ne se produise) que le schéma de signature de Lamport les oblige à ouvrir au moins un verrou que vous n'avez pas déjà ouvert., manquant les valeurs secrètes inédits, ne sera pas en mesure d'effectuer.

Les signatures Lamport peuvent sembler techniquement complexes, mais puisqu'elles ont simplement un composant xe2x80x93 la fonction de hachage (dans ce cas, wexe2x80x99ll utilise RIPEMD-160) elles sont en fait parmi les protocoles cryptographiques les plus accessibles pour la personne normale à comprendre. L'algorithme fonctionne comme suit:

Toutes ces valeurs, ou dans certaines implémentations que la graine utilisée pour les créer, sont votre clé privée. Tout cela est votre clé principale, et sera également requis de la communauté pour vérifier plus tard votre signature. Pour signer un message, calculez le hachage RIPEMD-160 de ce message, puis, en fonction de chaque bit du hachage, libérez le numéro de clé derrière le premier ou le deuxième hachage de chaque paire. Si le bit est nul, ouvrez le hachage, et si le bit est un, ouvrez le second décor.

Selon cette stratégie, un discours Bitcoin sera toujours le hachage SHA256 RIPEMD-160 de la clé publique; la seule distinction est que la clé publique sera composée de 320 hachages au lieu d'un point de courbe elliptique. Un métier inclura la clé publique avec la signature, comme maintenant, et, une fois de plus comme maintenant, les vérificateurs vérifieront que la clé publique correspond au discours ainsi que la correspondance de la signature avec le message avec la clé publique. Les signatures sont infalsives; néanmoins avec l'algorithme Groverxe2x80x99s, il faudra donc 2 80 étapes pour qu'un adversaire construise une transaction frauduleuse qui lui demande de révéler les mêmes 160 numéros secrets que vous avez déjà démontrés, ou même un adversaire peut prendre deux étapes de 80 * 80 pour simplement cracker tous les hashs. Les deux nombres sont dans les billions de trillions des deux calculs.

Le seul changement de comportement qui sera nécessaire est que les gens commencent à utiliser les adresses une seule fois; après deux utilisations, la sécurité du schéma de Lamport tombe à deux 40, une valeur qui peut encore être sûre contre les ordinateurs quantiques au début, mais juste à peine, et suit trois utilise itxe2x80x99s aussi faible que la cryptographie à courbe elliptique. Théoriquement, mais même cela peut être partiellement surmonté; le schéma de signature de Merkle se construit à partir de l'idée de Lamportxe2x80x99s de faire des signatures qui peuvent être utilisées des centaines ou des dizaines, voire des milliers de fois, avant que la clé privée ne soit retirée. La seule limitation au nombre maximum de transactions par discours est essentiellement une question de restriction du ballonnement blockchain.

Compte tenu de ce qui est maintenant une expertise publique, les ordinateurs quantiques sont encore loin; L'ordinateur quantique le plus efficace à ce jour a réussi à utiliser l'algorithme Shorxe2x80x99s pour factoriser le nombre 21. Mais, des progrès soudains sont toujours possibles, et nous devons constamment avoir une stratégie de ce que nous pouvons faire si Edward Snowden décide de divulguer que la NSA a ordinateurs quantiques complètement fonctionnels se cachant dans un centre de données secret. Nous ne pouvons probablement pas gérer un événement aussi surprenant, mais nous pouvons certainement traiter des cas où nous recevons un avertissement d'un mois. La solution est la suivante: dès qu'une pré-urgence quantique est déclarée, tout le monde devrait transférer ses richesses dans un échange multisignature 1 sur 2 entre un discours Bitcoin inutilisé et à l'ancienne, avec une adresse générée avec le nouveau Lamport. schème. Par la suite, les développeurs devraient rapidement créer le correctif Lamport pour autant de clients Bitcoin que possible et faire en sorte que tout le monde se mette à jour. Si toute la procédure est effectuée dans les quatorze jours, alors au moment où les ordinateurs quantiques deviennent une menace, la majorité des bitcoins de gensxe2x80x99s seront dans des adresses Lamport de nouveau style et seront également sécurisés. Pour les personnes qui ont leur prospérité dans les discours à l'ancienne (adresses inutilisées à l'ancienne, qui est à partir de ce point les pièces dans les adresses à l'ancienne utilisées peuvent être trivialement volés), quelques organisations établies consentent à servir de noeuds fiables, en utilisant le schéma de signature de Merkle pour apporter une signature supplémentaire aux transactions envoyant des discours de style ancien vers des adresses de style nouveau. Pour stopper la fraude communautaire et les grèves de Finney, les nouvelles règles Bitcoin nécessiteront toutes les transactions de plus en plus anciennes après une étape spécifique devant être signée par ces autorités. Le système d'alimentation introduira la centralisation, mais ce ne sera qu'une mesure d'urgence temporaire, et après quelques années, le système peut être complètement retiré. À partir de là, nous légeons nos blessures, sélectionnons nos pertes et passons à apprécier quelques-uns des objets les plus merveilleux que l'informatique quantique a à vous offrir.

Comments are Disabled