„Google“ apskaičiavo per kiek laiko kvantinis kompiuteris galėtų „nulaužti“ bitkoiną
„Google“ tyrėjų skaičiavimai rodo: teoriškai pakankamai didelis klaidoms atsparus kvantinis kompiuteris galėtų išvesti bitkoino privatų raktą maždaug per savaitę, jei turėtų apie milijoną fizinių kubitų. Tačiau šiandien tokio įrenginio nėra, o praktinis bitkoino „nulaužimas“ priklausytų ne tik nuo kubitų skaičiaus, bet ir nuo to, ar užpuolikas spėtų pasinaudoti viešai matomu raktu prieš sandoriui galutinai įsitvirtinant tinkle.
Skaičiavimas kalba apie teorinį kvantinį puolimą, o ne apie dabartinę grėsmę bitkoinui
Svarbiausia detalė – „Google“ skaičiavimai nėra pranešimas, kad bitkoinas jau pažeidžiamas. Jie apibūdina scenarijų, kuriame egzistuoja didelis, klaidas taisantis kvantinis kompiuteris. Tokia mašina turėtų veikti stabiliai pakankamai ilgai, kad galėtų atlikti sudėtingus kvantinius skaičiavimus be lemtingų klaidų.
Šiuolaikiniai kvantiniai kompiuteriai dar nėra tokio lygio. Dabartiniai įrenginiai turi ribotą kubitų skaičių, jų būsenos yra trapios, o klaidų taisymas tebėra viena pagrindinių technologinių kliūčių. Todėl skaičius „apie savaitę“ yra ne praktinis perspėjimas vartotojui rytoj ištuštinti piniginę, o riba, rodanti, kokio masto technologijos būtų pavojingos dabartinei kriptografijai.
Bitkoiną silpniausioje vietoje atakuotų ne kasimas, o skaitmeniniai parašai
Bitkoino saugumas remiasi keliais kriptografiniais elementais. Dažnai viešai kalbama apie SHA-256 algoritmą, naudojamą kasimui ir blokų grandinės darbo įrodymui, tačiau didesnė kvantinė rizika siejama su skaitmeniniais parašais. Bitkoino sandoriams naudojamas ECDSA parašo algoritmas su secp256k1 elipsine kreive.
Čia ir atsiranda Shoro algoritmas. Teoriškai jis leidžia kvantiniam kompiuteriui spręsti uždavinius, kurie klasikinėms mašinoms yra praktiškai neįveikiami, įskaitant elipsinių kreivių diskretinio logaritmo problemą. Jei viešasis raktas yra žinomas, pakankamai galingas kvantinis kompiuteris galėtų iš jo apskaičiuoti privatų raktą.
Praktiškai tai reikštų, kad pavojus kyla ne pačiai blokų grandinei kaip duomenų bazei, o konkrečių monetų valdymui. Kas turi privatų raktą, tas gali pasirašyti sandorį. Todėl sėkmingas kvantinis puolimas prieš parašą leistų užpuolikui sukurti konkuruojantį sandorį ir nukreipti lėšas kitur.
Savaitės terminas nėra pakankamas įprastam sandoriui perimti
Bitkoino sandorio metu viešasis raktas paprastai tampa matomas tada, kai vartotojas išleidžia monetas. Nuo tos akimirkos potencialus užpuolikas turėtų ribotą laiką: jis turėtų apskaičiuoti privatų raktą ir pateikti alternatyvų sandorį dar prieš tinklui patvirtinant pradinį mokėjimą.
Bitkoino blokas vidutiniškai sukuriamas maždaug kas 10 minučių. Dėl šios priežasties savaitės trukmės kvantinis skaičiavimas daugeliui įprastų sandorių nebūtų pakankamas. Net jei hipotetinė mašina galėtų nulaužti vieną raktą per septynias dienas, ji nespėtų veikti realiuoju sandorio patvirtinimo laiku.
Tačiau yra išimtis. Rizikingesnės būtų monetos, kurių viešieji raktai jau seniai atskleisti blokų grandinėje, pavyzdžiui, dėl senų adreso tipų arba pakartotinio adreso naudojimo. Tokiu atveju užpuolikas turėtų daugiau laiko bandyti išvesti privatų raktą.
Milijonas fizinių kubitų nereiškia milijono tiesiogiai naudingų kubitų
Kvantinių kompiuterių vertinimuose svarbu atskirti fizinius ir loginius kubitus. Fizinis kubitas yra realus įrenginio elementas, tačiau jis linkęs klysti. Loginis kubitas sukuriamas iš daugelio fizinių kubitų, naudojant klaidų taisymo schemas, kad skaičiavimas būtų patikimas.
Todėl skaičius apie milijoną fizinių kubitų nereiškia, kad visa ši galia tiesiogiai naudojama vienam matematiniam veiksmui. Didelė kubitų dalis būtų skirta klaidų taisymui. Būtent dėl to kvantinių atakų sąmatos kalba apie milžiniškus įrenginius, o ne apie laboratorinius prototipus.
Ši detalė yra esminė vertinant grėsmę. Neužtenka turėti daug kubitų reklaminėje specifikacijoje. Reikia stabilios architektūros, mažo klaidų lygio, patikimo valdymo ir pakankamai ilgo veikimo laiko, kad Shoro algoritmas būtų įvykdytas iki pabaigos.
Didesnis kubitų skaičius galėtų trumpinti puolimo laiką, bet tai didintų techninius reikalavimus
Teoriškai daugiau kvantinių išteklių leistų sutrumpinti rakto išvedimo laiką. Jei savaitė yra vienas apskaičiuotas scenarijus, didesnis mašinos mastas galėtų priartinti puolimą prie valandų ar minučių. Būtent tada bitkoino sandorių perėmimas taptų kur kas realesnis.
Vis dėlto toks scenarijus reikalautų ne vien daugiau kubitų. Reikėtų ir geresnio klaidų taisymo, greitesnių kvantinių vartų, efektyvios aušinimo bei valdymo infrastruktūros. Kitaip tariant, laiko sutrumpinimas nėra paprastas „pridėk kubitų“ uždavinys.
Dėl šios priežasties „Google“ skaičiavimai svarbūs kaip krypties ženklas. Jie rodo, kad kriptografija turi ruoštis ateičiai, tačiau kartu patvirtina, kad dabartinis pavojus priklauso nuo dar nepasiekto kvantinių kompiuterių brandos lygio.
Bitkoino tinklas teoriškai gali prisitaikyti, bet tam reikėtų bendro sutarimo
Jei kvantiniai kompiuteriai priartėtų prie praktinės grėsmės, bitkoino bendruomenė galėtų svarstyti perėjimą prie kvantiniams puolimams atsparesnių parašų schemų. Tokios krypties kriptografija jau nagrinėjama plačiau, nes kvantinė rizika aktuali ne tik kriptovaliutoms, bet ir bankams, valstybės sistemoms bei interneto saugumui.
Tačiau bitkoino pakeitimai nevyksta centralizuotai. Reikėtų techninio pasiūlymo, testavimo, piniginių ir mazgų programinės įrangos atnaujinimų, kasėjų bei naudotojų pritarimo. Tai lėtas procesas, todėl kvantinė tema nėra vien teorinis akademinis klausimas.
Galutinė išvada aiški: „Google“ skaičiavimas nereiškia, kad bitkoinas jau „nulaužtas“. Jis reiškia,