Bitcoin résistant aux quantiques utilisant les signatures Lamport

  • Bitcoin est menacé par l'informatique quantique et pourrait être compromis
  • Les signatures Lamport offrent une solution résistante aux attaques quantiques
  • Une implémentation fonctionnelle de vérification de signature Lamport a été réalisée avec succès sur Bitcoin

Cet article a été publié pour la première fois sur Medium.

Alors que l’informatique quantique passe potentiellement de la théorie à la pratique, ses implications pour les systèmes cryptographiques, en particulier ceux qui sous-tendent les crypto-monnaies comme Bitcoin, deviennent de plus en plus profondes. Bitcoin, qui repose sur l’algorithme de signature numérique à courbe elliptique (ECDSA), est confronté à une vulnérabilité potentielle à l’ère quantique.

Le idée cruciale est de programmer des signatures Lamport dans des contrats intelligents, et ainsi Non un changement/ »correction » de la couche de base est nécessaire. Cela diffère radicalement de l’approche existante consistant à mettre à niveau les algorithmes cryptographiques de Bitcoin via un fork (softfork ou hardfork) pour les rendre résistants aux quantiques, qui sont actuellement favorisées par les soi-disant experts Bitcoin.

Bitcoin résistant aux quantiques utilisant les signatures Lamport

La vérité est que Bitcoin a toujours été résistant aux quantiques.1

il est recommandé d’explorer des ressources supplémentaires telles que [1].

Ordinateurs quantiques et Bitcoin

Les ordinateurs quantiques fonctionnent selon les principes de la mécanique quantique, ce qui leur permet d’effectuer des calculs complexes à des vitesses inaccessibles par les ordinateurs classiques. Cette capacité constitue une menace importante pour les algorithmes cryptographiques tels que l’algorithme de signature numérique à courbe elliptique (ECDSA) utilisé dans Bitcoin, qui repose sur l’impossibilité de dériver des clés privées à partir de clés publiques. Les algorithmes quantiques, tels que l’algorithme de Shor, pourraient théoriquement briser l’ECDSA, compromettant ainsi le modèle de sécurité de Bitcoin.

Signatures de Lamport

En réponse à cette menace imminente, les signatures Lamport, un système de signature unique utilisant des fonctions de hachage, apparaissent comme une alternative résistante aux quantiques. Contrairement à l’ECDSA qui s’appuie sur des hypothèses de théorie des nombres vulnérables à l’informatique quantique, les signatures Lamport tirent leur sécurité de la difficulté d’inverser les fonctions de hachage, qui restent robustes contre les attaques quantiques connues.

Voici une description technique concise du fonctionnement des signatures Lamport  :

Génération de clé

  • Clé publique : Appliquez une fonction de hachage cryptographique H à chacune des 512 chaînes de la clé privée. La sortie forme la clé publique.
  • Signature

  • Hachage des messages  : Tout d’abord, hachez le message à l’aide d’une fonction de hachage sécurisée H pour garantir une sortie de longueur fixe
  • Création de la signature  : Pour chaque bit du message haché, sélectionnez une chaîne de l’une ou l’autre paire dans la clé privée. Si le bit est 0, sélectionnez parmi le premier ; si 1, sélectionnez parmi le second. L’ensemble de ces sélections constitue la signature
  • Vérification de la signature

  • Hachage des numéros sélectionnés  :
    • Appliquez la même fonction de hachage cryptographique utilisée lors de la génération de clé à chaque chaîne de la signature

    Comparaison avec la clé publique  :

    • Alignement avec les bits de clé publique  : Alignez les nombres hachés de la signature avec les parties correspondantes de la clé publique, en fonction des bits du message haché
    • Vérification : Vérifiez si les hachages de la chaîne de signature correspondent aux chaînes correspondantes dans la clé publique. Si toutes les paires correspondent, la signature est valide

    Les signatures Lamport sont des « signatures temporelles uniques » et nécessitent une nouvelle clé de signature pour chaque transaction, dont la nature unique correspond au modèle d’adresse à usage unique de Bitcoin. Les signatures sont plus grandes que les signatures ECDSA mais seulement à environ 16 Ko, ce qui les rend pratiques aujourd’hui.

    Mise en œuvre

    Nous avons implémenté un exemple fonctionnel de vérification de signature Lamport. Le code est plutôt simple. Le contrat intelligent expose une méthode publique unique appelée « déverrouillage », qui permet à un échangeur de récupérer les bitcoins verrouillés en fournissant une signature Lamport valide. À un niveau supérieur, il s’agit à peu près du même mécanisme que dans une transaction P2PK(H) standard.

    Nous avons réalisé avec succès la première transaction utilisant les signatures Lamport sur Bitcoin  :

    Le code source complet de ce contrat, ainsi que quelques tests, sont disponibles sur GitHub.

    Discussion

    Il existe des optimisations pour rendre les signatures Lamport plus efficaces en termes de signature et de taille de clé.

    Il existe également des approches alternatives pour utiliser des contrats intelligents pour rendre Bitcoin résistant aux quantiques sans interrompre les changements, comme les hachages addictifs.

    ***

    [1] Bitcoin et informatique quantique  : Craig S Wright 2017

    Regardez  : les applications sCrypt prouvent la puissance du Bitcoin

    Nouveau sur la blockchain ? Consultez la section Blockchain pour les débutants de CoinGeek, le guide de ressources ultime pour en savoir plus sur la technologie blockchain.