Combien de temps faudrait-il à un gros ordinateur pour déchiffrer une clé privée?

Je fais une présentation sur les Bitcoins et je cherchais des calculs pour que les gens se sentent en sécurité sur le chiffrement de la clé privée. Veuillez dabord répondre, combien de temps en octets la clé privée est, puis combien de combinaisons de nombres elle contiendra, puis quel est lordinateur ou le réseau de superordinateurs le plus rapide et combien de temps il faudrait pour déchiffrer une clé privée à laide de cet ordinateur. Je pense que le résultat serait très instructif basé sur mes propres calculs. Merci.

Commentaires

Réponse

la longueur en octets de la clé privée

32 octets ou 256 bits

alors combien de combinaisons de nombres il contiendra

Il y a 2 ^ 256 clés privées différentes. Cest « un peu plus grand quun 1 suivi de 77 zéros.

quel est lordinateur ou le réseau de superordinateurs le plus rapide

À son apogée vers août 2011, le réseau Bitcoin contrôlait 15 billions de hachages sha256 par seconde. (Voir http://bitcoin.sipa.be/ )

combien de temps il faudrait pour casser une clé privée à laide de cet ordinateur

Si nous supposons quil faut le même temps pour exécuter une opération ECDSA que pour vérifier un hachage sha256 (cela prend beaucoup plus de temps), et nous utilisons une optimisation qui nous permet de navoir besoin que 2 ^ 128 opérations ECDSA, puis le temps nécessaire peut être calculé:

>>> pow(2,128) / (15 * pow(2,40)) / 3600 / 24 / 365.25 / 1e9 / 1e9 0.6537992112229596 

Cest 0,65 milliard dannées.

Cest  » est une estimation très prudente du temps nécessaire pour casser une seule adresse Bitcoin.

Modifier: il a été souligné que les ordinateurs ont tendance à devenir exponentiellement plus rapides au fil du temps, selon Loi de Moore . En supposant que la vitesse de calcul double chaque année (la loi de Moore dit 2 ans, mais nous «ferons preuve de prudence), alors dans 59 ans, cela ne prendra que 1,13 an. Ainsi, vos pièces sont en sécurité pendant les 60 prochaines années sans une modification des algorithmes utilisés pour protéger la blockchain. Cependant, je mattendrais à ce que les algorithmes soient modifiés bien avant quil ne soit possible de briser la protection quils fournissent.

Commentaires

    La loi de

  • Moore ‘ (ou similaire) réduirait probablement un peu ce nombre, mais pas assez pour avoir de limportance. Tant que la réponse est une forme de  » plus longue quil nen faudrait pour extraire les pièces stockées à cette adresse « , nous devrions être en sécurité 🙂
  • Cest important, car les gens méritent de savoir dans quelle mesure leur argent est sécurisé.
  • Cest ‘ en supposant que Moore ‘ peut durer encore 6 décennies. Dun autre côté, peut-être que le contrôle qualité est désormais courant.
  • Excellente réponse. Il convient de noter que la puissance cumulée du réseau de Bitcoin ‘ est maintenant presque 10 fois supérieure depuis que cette réponse a été écrite. Ainsi, ‘  » seulement  » environ 653 millions dannées de calcul.

Réponse

Une clé privée Bitcoin est un nombre aléatoire de 256 bits. Cependant, la clé publique révèle des informations sur la clé privée. Les algorithmes les plus connus pour casser ECDSA nécessitent des opérations O (sqrt (n)). Cela signifie que 2 ^ 128 opérations seraient nécessaires pour rompre un compte Bitcoin.

La plus grande clé ECDSA cassée à ce jour du type utilisé par Bitcoin faisait 112 bits de long. Un compte Bitcoin est plus de 4 000 milliards de milliards de fois plus difficile à casser.

Le seul risque réaliste serait linformatique quantique.

Commentaires

  • Il convient également de noter que même linformatique quantique ne devrait réduire que le temps de pow (2, N) à pow (2, N / 2), ce qui, bien que significatif, ne le fait pas grandir. Voir en.wikipedia.org/wiki/Key_size
  • @GaryRowe You ‘ cest faux . La réduction de moitié de la longueur de clé sapplique aux clés symétriques. La plupart des chiffrements asymétriques (y compris ECDSA qui est utilisé pour bitcoint) peuvent être cassés en temps polynomial avec un ordinateur quantique grâce à lalgorithme de Shor ‘.Pour citer cet article de wikipedia  » Le consensus général est que ces algorithmes à clé publique ne sont pas sécurisés à nimporte quelle taille de clé si des ordinateurs quantiques suffisamment grands capables dexécuter Shor ‘ devient disponible. « . Bien quil existe des schémas de signature de preuve quantique, ils ‘ gonflent probablement beaucoup la blockchain.
  • @CodeInChaos Bons points à tous – désolé davoir introduit de la confusion.
  • Lattaque O (sqrt (n)) est lattaque danniversaire, ce qui est possible dans tous les schémas de chiffrement. Quelles sont les  » informations sur la clé privée  » révélées par la clé publique et auxquelles vous faites référence?
  • @dionyziz I ‘ je ne parle pas de lattaque danniversaire, je ‘ parle de linversion dune clé publique ECDSA pour obtenir la clé privée correspondante. Les  » informations sur la clé privée  » que la clé publique révèle est le point correspondant à cette clé privée multiplié par le générateur. Cela permet lutilisation dalgorithmes de logarithme discret comme grand pas, petit pas .

Réponse

Une clé privée Bitcoin (clé ECC) est un entier compris entre un et environ 10 ^ 77. Cela peut ne pas sembler être une grande sélection, mais pour des raisons pratiques, cest essentiellement infini. Si vous pouviez traiter un billion de clés privées par seconde, il faudrait plus dun million de fois lâge de lunivers pour les compter toutes. Même pire, le simple fait dénumérer ces clés consommerait plus que lénergie totale du soleil pendant 32 ans. Ce vaste espace de clés joue un rôle fondamental dans la sécurisation du réseau Bitcoin.

Commentaires

  • Chuck Norris a compté jusquà linfini, deux fois.
  • Chuck Norris a dit à Satoshi Nakomoto ce quil devait faire.

Réponse

2 ^ 256 = 1,1×10 ^ 77 = nombre de combinaisons de touches

2 ^ 128 = 3,4×10 ^ 38 = le nombre moyen destimations nécessaires

Daprès ce site Web: http://en.wikipedia.org/wiki/TOP500 , le supercalculateur le plus rapide est lordinateur K qui a 10,51 pétaflops.

Un pétaflop est 10 ^ 15 FLOPS, instr en virgule flottante uctions par seconde.

Jusquici tout va bien, mais jai besoin de savoir combien de FLOPS sont nécessaires par supposition?

[Je vais me risquer à deviner:]

Entre 1000 et 10000 FLOPS (ou équivalents entiers) par estimation.

10,51×10 ^ 15 opérations / seconde / 1000 à 10000 opérations / estimation) = 10,51×10 ^ 12 à 10,51×10 ^ 11 estimation / seconde.

3,4×10 ^ 38 suppositions / fissure / 10,51×10 ^ 12 estimation / seconde = 3,2×10 ^ 25 secondes.

3,2×10 ^ 25 secondes / 60 secondes / minute / 60 minutes / heure / 24 heures / jour / 365,25 jours / an = 1,01×10 ^ 18 ans

1,01×10 ^ 18 ans / 1×10 ^ 9 / 1×10 ^ 9 = 1,014 à 10,014 milliards dannées.

Ainsi, les ordinateurs du réseau Bitcoin sont deux fois plus rapides que le plus grand ordinateur de laboratoire.

Commentaires

  • Il y a exactement 0 FLOP requis pour essayez une combinaison, car un FLOP est une opération en virgule flottante, et les mathématiques EC ne nécessitent que des opérations sur des nombres entiers.
  • Il ny a jamais eu dordinateur sur lequel jai travaillé qui naurait pu ‘ t faire un entier ma e. Je suppose donc que lordinateur K sud-coréen peut le faire aussi.
  • Oui, mais la proportion entre la vitesse des opérations en nombre entier et en virgule flottante diffère considérablement dun matériel à lautre. Compte tenu dune certaine répartition des types de matériel qui constituent la puissance minière de Bitcoin ‘, vous pouvez donner une estimation, mais la réponse à la question  » combien de FLOPS sont nécessaires par estimation « , la réponse est certainement 0.
  • nombre de combinaisons de touches = 2 ^ 256; nombre moyen de suppositions nécessaires = 2 ^ 256/2 = 2 ^ 256 * 2 ^ -1 = 2 ^ 255, personne na remarqué? Eh bien, cela ne change pas le milliard (de milliards) dannées nécessaires.

Réponse

Il y a un vanitygen utilitaire (consultez la version de exploitagency «  qui est un fork amélioré de la version de samr7 « ) qui peut vous donner les estimations du temps nécessaire pour trouver la clé privée pour le modèle donné (voir: vg_output_timing_console() ). Certains cas particuliers (comme les caractères répétés) sont plus difficiles que les autres.

La difficulté de trouver une adresse personnalisée dépend de sa structure exacte nombres) et la probabilité quune telle sortie soit donnée aux algorithmes impliqués, qui peuvent consister en plusieurs pivots où la difficulté change soudainement. bitcoin wiki

Voici le tableau qui peut se trouve sur la page wiki bitcoin qui fournit des estimations de temps pour craquer les clés privées pour les modèles dadresse donnés:

bitcoin, vanitygen pour essayer dattaquer les adresses, Vanitygen, tableau Keysearch Rates, Mkey / s, CPU / GPU, table, décillions dannées, temps moyen

Lexemple de tableau ci-dessous montre comment une vanité de plus en plus complexe affecte la difficulté et le temps moyen requis pour trouver une correspondance uniquement pour cette vanité, sans parler du plein adresse, pour une machine capable de parcourir 1 million de clés par seconde.

En utilisant vanitygen, vous pourriez penser que vous seriez capable de trouver la clé privée pour une adresse donnée. En pratique, cela est considéré comme impossible.


Exemple pratique

Créons le unspendable adresse bitcoin :

$ unspendable.py 23456789A123456789A12345678 mainnet: 123456789A123456789A12345678Yr8Dxi 

Puis en utilisant vanitygen je peux calculer les performances sur ma machine (> 240 Kkey / s):

$ vanitygen -q -k -o/dev/null 1 [241.29 Kkey/s][total 2880199][Found 11618] 

Remarque: ci-dessus a été testé sur MacBook Pro (Intel Core i7 2,3 GHz, 16 Go 1600 MHz DDR3).

De plus, il peut calculer le temps estimé lors de la recherche de modèles spécifiques, par exemple

  • pour trouver les 5 premiers caractères sur 26-35 (quelques secondes):

    $ vanitygen -q -k -o/dev/null 12345 [698.17 Kkey/s][total 8192][Prob 0.2%][50% in 4.5s] 
  • 6 premiers caractères sur 26-35 (quelques minutes):

    $ vanitygen -q -k -o/dev/null 123456 [701.39 Kkey/s][total 51712][Prob 0.0%][50% in 4.3min] 
  • 7 caractères sur 26-35 (quelques heures):

    $ vanitygen -q -k -o/dev/null 1234567 [471.87 Kkey/s][total 8192][Prob 0.0%][50% in 6.3h] 
  • 8 caractères hors de 26-35 (quelques semaines):

    $ vanitygen -q -k -o/dev/null 12345678 [658.82 Kkey/s][total 2548480][Prob 0.0%][50% in 10.8d] 
  • 9 caractères ou t de 26-35 (quelques années):

    $ vanitygen -q -k -o/dev/null 123456789 [572.50 Kkey/s][total 1631744][Prob 0.0%][50% in 2.0y] 
  • 10 caractères sur 26-35 (un siècle):

    $ vanitygen -q -k -o/dev/null 123456789A [630.48 Kkey/s][total 118528][Prob 0.0%][50% in 104.2y] 
  • 11 caractères sur 26-35 (quelques millénaires)

    $ vanitygen -q -k -o/dev/null 123456789A1 [579.78 Kkey/s][total 17348352][Prob 0.0%][50% in 6571.6y] 
  • 12 caractères sur 26-35 (centaines de millénaires):

    vanitygen -q -k -o/dev/null 123456789A12 [751.61 Kkey/s][total 6720512][Prob 0.0%][50% in 294013.9y] 
  • 13 caractères sur 26-35 (des milliers de millénaires, quelques millions dannées):

    $ vanitygen -q -k -o/dev/null 123456789A123 [666.93 Kkey/s][total 3886080][Prob 0.0%][50% in 1.921802e+07y] 
  • 14 caractères sur 26- 35 (milliards dannées):

    $ vanitygen -q -k -o/dev/null 123456789A1234 [817.44 Kkey/s][total 3994880][Prob 0.0%][50% in 9.094109e+08y] 
  • 15 caractères sur 26-35 (50 milliards dannées):

    $ vanitygen -q -k -o/dev/null 123456789A12345 [784.31 Kkey/s][total 4633856][Prob 0.0%][50% in 5.497420e+10y] 
  • … 28 caractères ( décillions dannées si vous « re lucky)

    $ vanitygen -q -k -o/dev/null 123456789A123456789A12345678 [910.34 Kkey/s][total 2723072][Prob 0.0%][50% in 3.981113e+33y] 

Il est intéressant de noter que ladresse générée ci-dessus comporte 34 octets, mais que le premier caractère est simplement lidentifiant du réseau (pour Bitcoin, il « est généralement 1 ou 3), et les 4 derniers octets est juste une somme de contrôle. Pour plus de détails sur ladresse, consultez cette page wiki bitcoin .


Taux de recherche de clés

Pour sûr Le taux de recherche de clés peut être augmenté en utilisant un meilleur GPU ou plusieurs processeurs (voir: -t), mais les estimations peuvent quand même être énormes.

Par exemple, voici le tableau des taux de recherche de clés à page wiki bitcoin :

Vanitygen, table Keysearch Rates, Mkey / s, CPU / GPU

Et voici quelques rapports dutilisateurs pour différents GPU:

  • i7 8700K – ~ 3Mkey / c
  • GTX 980TI (v1.42) – ~ 73Mh
  • GTX 1050ti – ~ 23 Mkey / c
  • GTX 1070 – ~ 50Mhkey / s
  • GTX 1080ti – ~ 108 Mkey / c

Source: Liste des GPU pris en charge (GH-46) .

Réponse

Le seul risque réaliste serait linformatique quantique.

Ou la découverte dun bug ou dune faille dans les algorithmes du logiciel BTC. Ensuite, la fissuration pourrait être une question de secondes, selon le type de la faille.

Commentaires

  • Bonjour et bienvenue sur le StackExchange. Êtes-vous sûr de ne ‘ t vouloir en faire un commentaire sur une autre réponse, plutôt quune réponse autonome en soi?
  • @ThePiachu, merci . Comme vous le savez peut-être, les nouveaux utilisateurs ne peuvent pas publier de commentaires, juste des réponses. Le modérateur est invité à résoudre ce problème. (Je ne peux commenter que mes propres réponses)
  • Oh, vous êtes un modérateur. Je viens de remarquer. 🙂

Réponse

Lordinateur le plus rapide est de 150 Petraflops FPC par seconde et non de 10 … Essayez et Tenez-vous au courant (NV Link et Volta HCP Cards sur les processeurs dalimentation IBM) … vous pouvez en lire ou en regarder plus sur le site Web de team green ou sur les vidéos de la conférence 2015 sur U tube. Puisque la réponse générale semble être basée sur 10 Petraflops, lordinateur le plus rapide du monde …Vous devriez être clairement en mesure de voir à quelle vitesse le FPC par seconde peut changer. Le ministère de lÉnergie prévoit un système 300P déjà basé sur la même technologie.

Le fait est que les gens de votre Bitcoin qui vous disent à quel point il est sécurisé basé sur 10P ont déjà 15-30 fois mal les mathématiques de base parce quils nen savent manifestement pas autant quils le pensent. Les améliorations sont ne dépendant pas non plus de la loi de Moore, les progrès récents et les limitations actuelles ont à voir avec une loi entièrement différente qui est ce que NV Link a résolu du mieux quil pouvait et amélioré le temps de calcul si bien, cest juste aujourdhui lexemple de la façon dont leur la théorie dun milliard de milliards dannées est déjà fausse par un facteur de 15 à 30 et continuera de se tromper chaque année à un rythme beaucoup plus élevé quils ne le supposent. Dans 30 ans ou moins, le bitcoin à son niveau actuel sera facilement craqué par toute personne qui a 40 à 50000 dollars à dépenser (en argent daujourdhui) ou qui peut utiliser nimporte quel nombre de superordinateurs universitaires ou dentreprise.

Toute personne qui croit réellement que la technologie vieille de 50 ans va garder quelque chose de sécurisé numériquement 50 ans plus tard nest franchement pas le genre de personne que tu devrais être p Nimporte quelle attention à tous … Cela signifie-t-il que le bitcoin est dangereux aujourdhui? Pas vraiment, mais si les mêmes personnes sont responsables de la sécurité dans 30 ans, ce sont les mêmes personnes ignorantes qui sont ici en ce moment.

Commentaires

  • NVLink est une technologie permettant une communication plus rapide et plus économe en énergie entre les nœuds dun supercalculateur. Ni lun ni lautre ne sont vraiment un problème si vous ‘ construisez un pirate de clé distribué.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *