Comment un ordinateur quantique peut être utilisé pour voler votre bitcoin en « 9 minutes »

La première partie de cette série explique ce que sont réellement les ordinateurs quantiques. Pas seulement des versions plus rapides des ordinateurs classiques, mais un type de machine fondamentalement différent qui exploite les étranges règles de la physique qui ne s’appliquent qu’à l’échelle des atomes et des particules.

Mais savoir comment fonctionne un ordinateur quantique ne vous dit pas comment il peut être utilisé pour voler du bitcoin par un mauvais acteur. Cela nécessite de comprendre ce qu’il attaque réellement, comment la sécurité du bitcoin est construite et où se situe exactement la faiblesse.

Cet article commence par le cryptage du bitcoin et se poursuit jusqu’à la fenêtre de neuf minutes nécessaire pour le déchiffrer, comme l’identifie le récent article de Google sur l’informatique quantique.

La carte à sens unique

Bitcoin utilise un système appelé cryptographie à courbe elliptique pour prouver à qui appartient quoi. Chaque portefeuille possède deux clés. Une clé privée, qui est un numéro secret de 256 chiffres en binaire, à peu près aussi long que cette phrase. Une clé publique est dérivée de la clé privée en effectuant une opération mathématique sur la courbe spécifique appelée « secp256k1« .

Considérez-le comme une carte à sens unique. Commencez à un endroit connu sur la courbe sur lequel tout le monde est d’accord, appelé point générateur G (comme le montre le tableau ci-dessous). Effectuez un nombre privé de pas dans un modèle défini par les mathématiques de la courbe. Le nombre d’étapes est votre clé privée. Là où vous vous retrouvez sur la courbe, c’est votre clé publique (point K dans le graphique). N’importe qui peut vérifier que vous vous êtes retrouvé à cet endroit précis. Personne ne peut savoir combien de mesures vous avez prises pour y arriver.

Techniquement, cela s’écrit K = k × G, où k est votre clé privée et K est votre clé publique. La « multiplication » n’est pas une multiplication régulière mais une opération géométrique dans laquelle vous ajoutez à plusieurs reprises un point à lui-même le long de la courbe. Le résultat atterrit à un endroit apparemment aléatoire que seul votre nombre spécifique k produirait.

(CoinDesk)

La propriété cruciale est qu’il est facile d’avancer et que reculer est, pour les ordinateurs classiques, effectivement impossible. Si vous connaissez k et G, le calcul de K prend quelques millisecondes. Si vous connaissez K et G et que vous voulez comprendre k, vous résolvez ce que les mathématiciens appellent le problème du logarithme discret de la courbe elliptique.

On estime que les algorithmes classiques les plus connus pour une courbe de 256 bits prendraient plus de temps que l’âge de l’univers.

Cette trappe à sens unique constitue tout le modèle de sécurité. Votre clé privée prouve que vous possédez vos pièces. Votre clé publique peut être partagée en toute sécurité car aucun ordinateur classique ne peut inverser les calculs. Lorsque vous envoyez du bitcoin, votre portefeuille utilise la clé privée pour créer une signature numérique, une preuve mathématique que vous connaissez le numéro secret sans le révéler.

L’algorithme de Shor ouvre la porte dans les deux sens

En 1994, un mathématicien nommé Peter Shor a découvert un algorithme quantique qui brise la trappe.

L’algorithme de Shor résout efficacement le problème du logarithme discret. Les mêmes mathématiques qui prendraient plus de temps à un ordinateur classique que l’existence de l’univers, l’algorithme de Shor gère ce que les mathématiciens appellent temps polynomialce qui signifie que la difficulté augmente lentement à mesure que les nombres augmentent plutôt que de manière explosive.

L’intuition de son fonctionnement revient aux trois propriétés quantiques de la première partie de cette série.

L’algorithme doit trouver votre clé privée k, étant donné votre clé publique K et le point générateur G. Il convertit cela en un problème de recherche de la période d’une fonction. Pensez à une fonction qui prend un nombre en entrée et renvoie un point sur la courbe elliptique.

Au fur et à mesure que vous lui fournissez des nombres séquentiels, 1, 2, 3, 4, les sorties finissent par se répéter dans un cycle. La durée de ce cycle s’appelle la période, et une fois que vous savez à quelle fréquence la fonction se répète, les mathématiques du problème du logarithme discret se déroulent en une seule étape. La clé privée tombe presque immédiatement.

Trouver cette période d’une fonction est exactement la raison pour laquelle les ordinateurs quantiques sont conçus. L’algorithme place son registre d’entrée dans une superposition (ou, en mécanique quantique, une particule existe simultanément à plusieurs endroits), représentant toutes les valeurs possibles simultanément. Il applique la fonction à tous en même temps.

Ensuite, il applique une opération quantique appelée transformation de Fourier, qui annule le nombre de mauvaises réponses tandis que les bonnes réponses sont renforcées.

Lorsque vous mesurez le résultat, la période apparaît. A partir de cette période, les mathématiques ordinaires récupèrent k. C’est votre clé privée, et donc vos pièces.

(CoinDesk)

L’attaque utilise les trois astuces quantiques du premier morceau. La superposition évalue la fonction sur toutes les entrées possibles à la fois. L’intrication relie l’entrée et la sortie afin que les résultats restent corrélés. « Interférence » filtre le bruit jusqu’à ce qu’il ne reste que la réponse.

Pourquoi le Bitcoin fonctionne encore aujourd’hui

L’algorithme de Shor est connu depuis plus de 30 ans. La raison pour laquelle Bitcoin existe toujours est que son fonctionnement nécessite un ordinateur quantique doté d’un nombre suffisamment grand de qubits stables pour maintenir la cohérence tout au long du calcul.

Construire cette machine est hors de portée, mais la question a toujours été de savoir si la taille est « suffisamment grande ».

Les estimations précédentes faisaient état de millions de qubits physiques. L’article de Google, rédigé début avril par sa division Quantum AI avec la contribution du chercheur de la Fondation Ethereum Justin Drake et du cryptographe de Stanford Dan Boneh, a réduit ce chiffre à moins de 500 000.

Soit une réduction d’environ 20 fois par rapport aux estimations précédentes.

L’équipe a conçu deux circuits quantiques qui implémentent l’algorithme de Shor par rapport à la courbe elliptique spécifique du bitcoin. L’un utilise environ 1 200 qubits logiques et 90 millions de portes Toffoli. L’autre utilise environ 1 450 qubits logiques et 70 millions de portes Toffoli.

Une porte Toffoli est un type de porte qui agit sur trois qubits : deux qubits de contrôle, qui affectent l’état d’un troisième qubit cible. Imaginez cela comme trois interrupteurs (qubits) et une ampoule spéciale (la cible) qui ne s’allume que si deux interrupteurs spécifiques sont allumés en même temps.

Étant donné que les qubits perdent constamment leur état quantique, comme l’explique la première partie, vous avez besoin de centaines de qubits redondants vérifiant le travail de chacun pour maintenir un seul qubit logique fiable. La plupart des ordinateurs quantiques existent uniquement pour détecter les propres erreurs de la machine avant qu’elles ne ruinent le calcul. Le rapport d’environ 400 pour 1 entre les qubits physiques et logiques reflète dans quelle mesure la machine existe en tant qu’infrastructure d’auto-surveillance.

La fenêtre de neuf minutes

L’article de Google n’a pas seulement réduit le nombre de qubits. Il a introduit un scénario d’attaque pratique qui change la façon de penser la menace.

Les parties de l’algorithme de Shor qui dépendent uniquement des paramètres fixes de la courbe elliptique, qui sont publiquement connues et identiques pour chaque portefeuille Bitcoin, peuvent être précalculées. L’ordinateur quantique se trouve dans un état amorcé, déjà à mi-chemin du calcul, en attente.

Au moment où une clé publique cible apparaît, qu’elle soit diffusée dans une transaction vers le mempool du réseau ou déjà exposée sur la blockchain lors d’une transaction précédente, la machine n’a plus qu’à terminer la seconde moitié.

Google estime que la seconde moitié dure environ neuf minutes.

Le temps moyen de confirmation de blocage de Bitcoin est de 10 minutes. Cela signifie que si un utilisateur diffuse une transaction et que sa clé publique est visible dans le pool de mémoire, un attaquant quantique dispose d’environ neuf minutes pour dériver une clé privée et soumettre une transaction concurrente qui redirige les fonds.

Le calcul donne à l’attaquant environ 41 % de chances de terminer avant que votre transaction initiale ne soit confirmée.

C’est l’attaque mempool. C’est alarmant mais cela nécessite un ordinateur quantique qui n’existe pas encore.

La plus grande préoccupation, cependant, concerne les 6,9 millions de bitcoins (environ un tiers de l’offre totale) stockés dans des portefeuilles dont la clé publique a déjà été exposée en permanence sur la blockchain. Ces pièces sont vulnérables à une attaque « au repos » qui ne nécessite aucune course contre la montre. L’attaquant peut prendre autant de temps que nécessaire.

(CoinDesk)

Un ordinateur quantique exécutant l’algorithme de Shor peut transformer une clé publique Bitcoin en clé privée qui contrôle les pièces. Pour les pièces négociées depuis Taproot (une mise à niveau de confidentialité sur Bitcoin mise en ligne en novembre 2021), la clé publique est déjà visible. Pour les pièces dans des adresses plus anciennes, la clé publique est cachée jusqu’à ce que vous la dépensiez, après quoi vous disposez d’environ neuf minutes avant que l’attaquant ne vous rattrape.

Ce que cela signifie dans la pratique, quels 6,9 millions de bitcoins ont déjà été exposés, ce que Taproot a changé et à quelle vitesse le matériel réduit l’écart, fait l’objet du prochain et dernier article de cette série.

Laisser un commentaire