Jak dlouho trvá rozbití soukromého klíče velkému počítači?

Provádím prezentaci na bitcoinech a hledám nějaké výpočty, aby se lidé cítili bezpečně ohledně šifrování soukromého klíče. Nejprve prosím odpovězte, jak dlouhý v bajtech je soukromý klíč, poté, kolik kombinací čísel bude obsahovat, a potom, jaký je nejrychlejší počítač nebo síť superpočítačů a jak dlouho bude trvat rozlomení soukromého klíče pomocí tohoto počítače. Myslím, že výsledek by byl velmi poučný na základě mých vlastních výpočtů. Děkuji.

Komentáře

Odpověď

jak dlouhý je v bajtech soukromý klíč

32 bytů nebo 256 bitů

kolik kombinací čísel bude obsahovat

Existuje 2 ^ 256 různých soukromých klíčů. To „je o něco větší než 1 a následuje 77 nul.

co je nejrychlejší počítač nebo síť superpočítačů

Na svém vrcholu kolem srpna 2011 síť bitcoinů kontrolovala 15 bilionů sha256 hashů za sekundu. (Viz http://bitcoin.sipa.be/ )

jak dlouho by trvalo prolomení soukromého klíče pomocí tohoto počítače

Pokud předpokládáme, že spuštění operace ECDSA trvá stejně dlouho, jako kontrola hash sha256 (trvá mnohem déle), použijeme optimalizaci, která nám umožní pouze 2 ^ 128 operací ECDSA, lze vypočítat potřebnou dobu:

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

Je to 0,65 miliardy miliard let.

To “ je velmi konzervativní odhad doby potřebné k rozbití jedné bitcoinové adresy.

Upravit: bylo zdůrazněno, že počítače mají tendenci se časem exponenciálně zrychlovat, podle Moorův zákon . Za předpokladu, že se výpočetní rychlost každý rok zdvojnásobí (Moorův zákon říká 2 roky, ale my budeme chybně na straně opatrnosti), pak za 59 let to „bude trvat jen 1,13 roku. Vaše mince jsou tedy v bezpečí dalších 60 let bez změna algoritmů používaných k ochraně blockchainu. Očekával bych však, že se algoritmy změní dlouho předtím, než bude možné prolomit ochranu, kterou poskytují.

Komentáře

  • Moore ‚ s zákonem (nebo podobným) by toto číslo pravděpodobně trochu snížilo, ale na to nezáleží. Pokud je odpovědí nějaká forma “ delší, než by trvalo těžení mincí uložených na této adrese “ měli bychom být v bezpečí 🙂
  • Záleží na tom, protože lidé si zaslouží vědět, jak bezpečné jsou jejich peníze.
  • To ‚ předpokládá Moore může trvat dalších 6 desetiletí. Na druhou stranu, možná je do té doby QC mainstream.
  • Skvělá odpověď. Stojí za zmínku, že kumulativní výkon bitcoinu ‚ v síti je nyní téměř desetinásobek hodnoty, protože byla napsána tato odpověď. Takže výpočet ‚ s “ trvá pouze “ ~ 653 milionů let.

Odpověď

Soukromý klíč bitcoinu je náhodné 256bitové číslo. Veřejný klíč však odhaluje některé informace o soukromém klíči. Nejznámější algoritmy pro rozbití ECDSA vyžadují operace O (sqrt (n)). To znamená, že k rozbití bitcoinového účtu by bylo zapotřebí 2 ^ 128 operací.

Největší klíč ECDSA, který byl doposud porušen u typu, který bitcoin používá, byl dlouhý 112 bitů. Bitcoinový účet je více než 4 000 miliard miliardkrát těžší prolomit.

Jediným realistickým rizikem by bylo kvantové počítání.

Komentáře

  • Je třeba také poznamenat, že se dokonce očekává, že dokonce i kvantové výpočty zkrátí čas z pow (2, N) na pow (2, N / 2), který, i když je významný, jej nerozluští. Viz en.wikipedia.org/wiki/Key_size
  • @GaryRowe Vy ‚ se mýlíte . U symetrických klíčů platí polovina délky klíče. Většina asymetrických šifer (včetně ECDSA, která se používá pro bitcoint) může být pomocí algoritmu Shor ‚ prolomena v polynomiálním čase pomocí kvantového počítače.Citovat tento článek na wikipedii “ Obecná shoda je, že tyto algoritmy veřejného klíče nejsou bezpečné při jakékoli velikosti klíče, pokud dostatečně velké kvantové počítače schopné provozovat Shor ‚ s. „. I když existují podpisová schémata s kvantovým důkazem, ‚ d pravděpodobně blockchain hodně nadouvá.
  • @CodeInChaos Dobré body – omlouvám se zavést zmatek.
  • O (sqrt (n)) útok je narozeninový útok, který je možný v každém šifrovacím schématu. Na jaké “ informace o soukromém klíči „, které odhaluje veřejný klíč, odkazujete?
  • @dionyziz I ‚ Nemluvím o útoku na narozeniny, ‚ mluvím o obrácení veřejného klíče ECDSA a získání příslušného soukromého klíče. “ Informace o soukromém klíči „, které odhalí veřejný klíč, je bod odpovídající tomuto soukromému klíči vynásobený generátorem. To umožňuje použití diskrétních logaritmických algoritmů, jako je velký krok, malý krok .

Odpověď

Soukromý klíč bitcoinu (klíč ECC) je celé číslo mezi jednou a přibližně 10 ^ 77. To se nemusí zdát jako velký výběr, ale z praktických důvodů je to v podstatě nekonečné. Pokud byste mohli zpracovat jeden bilion soukromých klíčů za sekundu, jejich spočítání by trvalo více než miliónkrát více než věk vesmíru. horší je, že pouze výčet těchto klíčů by spotřeboval více než celkový energetický výkon slunce po dobu 32 let. Tento obrovský prostor klíčů hraje zásadní roli při zabezpečení bitcoinové sítě.

Komentáře

  • Chuck Norris se započítal do nekonečna dvakrát.
  • Chuck Norris řekl Satoshi Nakomotovi, co má dělat.

Odpověď

2 ^ 256 = 1,1×10 ^ 77 = počet kombinací kláves

2 ^ 128 = 3,4×10 ^ 38 = průměrný počet potřebných odhadů

Podle tohoto webu: http://en.wikipedia.org/wiki/TOP500 , nejrychlejší superpočítač je počítač K, který má 10,51 petaflops.

Petaflop je 10 ^ 15 FLOPS, plovoucí desetinná čárka instr akce za sekundu.

Zatím je to v pořádku, ale potřebuji vědět, kolik FLOPS je potřeba na odhad?

[Odhaduji odhad:]

Mezi 1 000 a 10 000 FLOPS (nebo celočíselnými ekvivalenty) na odhad.

10,51×10 ^ 15 operací / s / 1000 až 10 000 operací / odhad) = 10,51×10 ^ 12 až 10,51×10 ^ 11 odhadů / s.

3,4×10 ^ 38 odhadů / crack / 10,51×10 ^ 12 odhad / s = 3,2×10 ^ 25 sekund.

3,2×10 ^ 25 sekund / 60 sekund / minuta / 60 minut / hodina / 24 hodin / den / 365,25 dní / rok = 1,01×10 ^ 18 let

1,01×10 ^ 18 let / 1×10 ^ 9 / 1×10 ^ 9 = 1,014 až 10,014 miliardy miliard let.

Počítače v bitcoinové síti jsou tedy dvakrát rychlejší než jeden největší laboratorní počítač.

Komentáře

  • K tomu je zapotřebí přesně 0 FLOPů zkuste kombinaci, protože FLOP je operace s plovoucí desetinnou čárkou a matematika EC vyžaduje pouze celočíselné operace.
  • Nikdy nebyl počítač, na kterém jsem pracoval, který by nemohl ‚ t do integer ma th. Předpokládal bych tedy, že jihokorejský počítač K to dokáže také.
  • Ano, ale poměr mezi rychlostí celočíselných operací a operací s plovoucí desetinnou čárkou se mezi hardwarem výrazně liší. Vzhledem k určité distribuci typů hardwaru, které tvoří těžební sílu bitcoinu ‚, můžete uvést odhad, ale odpověď na otázku “ kolik FLOPS je potřeba na odhad „, odpověď je určitě 0.
  • počet kombinací kláves = 2 ^ 256; průměrný počet potřebných odhadů = 2 ^ 256/2 = 2 ^ 256 * 2 ^ -1 = 2 ^ 255, nikdo si toho nevšiml? Nezmění to potřebnou miliardu (miliard) let.

Odpověď

Existuje vanitygen obslužný program (podívejte se na verzi exploitagency což je vylepšená vidlice verze samr7 ), která vám poskytne odhady, jak dlouho trvá najít soukromý klíč pro daný vzor (viz: vg_output_timing_console() ). Některé speciální případy (například opakované znaky) jsou obtížnější než ostatní.

Obtížné nalezení marné adresy závisí na její přesné struktuře (úvodní písmena a čísla) a jak pravděpodobný je takový výstup vzhledem k použitým algoritmům, které mohou sestávat z několika otočných čepů, kde se obtížnost náhle změní. bitcoinová wiki

Zde je tabulka, kterou lze najdete na bitcoinové wiki stránce , která poskytuje odhadované časy prolomení soukromých klíčů pro dané vzory adres:

bitcoin, vanitygen k pokusu o útok na adresy, Vanitygen, tabulka Keysearch Rates, Mkey / s, CPU / GPU, tabulka, roky decillion, průměrná doba

Níže uvedená příkladová tabulka ukazuje, jak stále složitější marnost ovlivňuje obtížnost a průměrnou dobu potřebnou k nalezení shody pouze pro tuto marnost, natož pro celou adresa, pro stroj schopný prohlížet 1 milion klíčů za sekundu.

Pomocí vanitygenu si možná myslíte, že byste pro danou adresu mohli najít soukromý klíč. V praxi je to považováno za nemožné.


Praktický příklad

Pojďme vytvořit následující unspendable bitcoinová adresa :

$ unspendable.py 23456789A123456789A12345678 mainnet: 123456789A123456789A12345678Yr8Dxi 

Pak pomocí vanitygen mohu vypočítat výkon na mém stroji (> 240 Kkey / s):

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

Poznámka: Výše bylo testováno na MacBook Pro (2,3 GHz Intel Core i7, 16 GB 1600 MHz DDR3).

Dále může vypočítat odhadovaný čas při hledání konkrétních vzorů, např.

  • najít prvních 5 znaků z 26–35 (několik sekund):

    $ vanitygen -q -k -o/dev/null 12345 [698.17 Kkey/s][total 8192][Prob 0.2%][50% in 4.5s] 
  • 6 prvních znaků z 26–35 (několik minut):

    $ vanitygen -q -k -o/dev/null 123456 [701.39 Kkey/s][total 51712][Prob 0.0%][50% in 4.3min] 
  • 7 znaků z 26–35 (několik hodin):

    $ vanitygen -q -k -o/dev/null 1234567 [471.87 Kkey/s][total 8192][Prob 0.0%][50% in 6.3h] 
  • 8 znaků z 26–35 (několik týdnů):

    $ vanitygen -q -k -o/dev/null 12345678 [658.82 Kkey/s][total 2548480][Prob 0.0%][50% in 10.8d] 
  • 9 znaků ou t 26-35 (několik let):

    $ vanitygen -q -k -o/dev/null 123456789 [572.50 Kkey/s][total 1631744][Prob 0.0%][50% in 2.0y] 
  • 10 znaků z 26-35 (století):

    $ vanitygen -q -k -o/dev/null 123456789A [630.48 Kkey/s][total 118528][Prob 0.0%][50% in 104.2y] 
  • 11 znaků z 26–35 (několik tisíciletí)

    $ vanitygen -q -k -o/dev/null 123456789A1 [579.78 Kkey/s][total 17348352][Prob 0.0%][50% in 6571.6y] 
  • 12 znaků z 26–35 (stovky tisíciletí):

    vanitygen -q -k -o/dev/null 123456789A12 [751.61 Kkey/s][total 6720512][Prob 0.0%][50% in 294013.9y] 
  • 13 znaků z 26–35 (tisíce tisíciletí, několik milionů let):

    $ vanitygen -q -k -o/dev/null 123456789A123 [666.93 Kkey/s][total 3886080][Prob 0.0%][50% in 1.921802e+07y] 
  • 14 znaků z 26- 35 (miliardy let):

    $ vanitygen -q -k -o/dev/null 123456789A1234 [817.44 Kkey/s][total 3994880][Prob 0.0%][50% in 9.094109e+08y] 
  • 15 znaků z 26-35 (50 miliard let):

    $ vanitygen -q -k -o/dev/null 123456789A12345 [784.31 Kkey/s][total 4633856][Prob 0.0%][50% in 5.497420e+10y] 
  • … 28 znaků ( decillion let, pokud „re lucky)

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

Stojí za povšimnutí, že výše vygenerovaná adresa má 34 bytů, ale první znak je pouze identifikátor sítě (pro bitcoiny je to obvykle 1 nebo 3) a poslední 4 bajty je jen kontrolní součet. Další informace o adrese najdete na této bitcoinové wiki stránce .


Ceny vyhledávání klíčů

Určitě Rychlost vyhledávání kláves lze zvýšit použitím lepšího GPU nebo více CPU (viz: -t), ale odhady mohou být obrovské.

Například zde je tabulka sazeb vyhledávání klíčů na bitcoinové wiki stránce :

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

A zde je několik přehledů od uživatelů pro různé GPU:

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

Zdroj: Seznam podporovaných GPU (GH-46) .

Odpověď

Jediným realistickým rizikem by bylo kvantové počítání.

Nebo objev chyby nebo chyby v softwarových algoritmech BTC. Pak by praskání mohlo být otázkou sekund, v závislosti na typu chyby.

Komentáře

  • Dobrý den, vítejte na StackExchange. Jste si jisti, že jste ‚ nechtěli udělat z tohoto komentáře nějakou jinou odpověď, než samostatnou odpověď?
  • @ThePiachu, děkuji . Jak možná víte, noví uživatelé nemohou přidávat komentáře, pouze odpovědi. Moderátor to může opravit. (Mohu komentovat pouze své vlastní odpovědi)
  • Ach, jste moderátorem. Právě jsem si toho všiml. 🙂

Odpověď

Nejrychlejší počítač je 150 Petraflops FPC za sekundu, ne 10 … Zkuste a držte krok s dobou (karty NV Link a Volta HCP na výkonových procesorech IBM) … více si můžete přečíst nebo sledovat na webových stránkách týmu green nebo na konferenci 2015 ve videu U tube. Protože se zdá, že obecná odpověď je založena na 10 Petraflops jako nejrychlejší počítač na světě …Měli byste jasně vidět, jak rychle se může FPC za sekundu změnit, ministerstvo energetiky plánuje systém 300P, který je již založen na stejné technologii.

Jde o to, že vaši bitcoinoví lidé, kteří vám říkají, jak bezpečná je na základě 10P, již mají základní matematiku špatnou 15–30krát, protože evidentně nevědí tolik, kolik si myslí. Vylepšení jsou nezávisí ani na Moorově zákoně, nedávný pokrok a současná omezení mají co do činění se zcela odlišným zákonem, což NV Link vyřešil, jak nejlépe mohl, a vylepšil výpočetní čas tak dobře, toto je právě dnes příklad toho, jak jejich Teorie miliardy miliard let je již 15-30krát špatná a bude se každý rok i nadále mýlit mnohem vyšším tempem, než předpokládají. Za 30 let nebo méně bude bitcoin na dnešní úrovni snadno prolomen kdokoli, kdo má utratit 40 až 50 000 dolarů (v dnešních penězích) nebo může použít libovolný počet univerzitních nebo podnikových superpočítačů.

Každý, kdo skutečně věří, že 50letá technologie zachová něco digitálně zabezpečeného 50 let později není upřímně ten typ člověka, kterým byste měli být p věnovat vůbec JAKÉKOLI pozornosti … Znamená to, že bitcoin je dnes nebezpečný? Ne tak docela, ale pokud za její bezpečnost budou za 30 let odpovědní stejní lidé, jsou tu stejní bezradní lidé, kteří jsou právě teď tady.

Komentáře

  • NVLink je technologie umožňující rychlejší a energeticky efektivnější komunikaci mezi uzly v superpočítači. Žádný z nich se opravdu netýká, pokud ‚ znovu budujete distribuovaný cracker klíčů.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *