A kvantumszámítógépektől féltik a bitcoin titkosítását
Az elmúlt hetekben bejárta a nemzetközi sajtót a hír, hogy brit tudósok szerint a bitcoint fel lehet majd törni kvantumszámítógépekkel. Utánajártunk a történetnek, és úgy tűnik, egyelőre nem kell gyorsan eladni a bitcoinjaitokat – vagy legalábbis nem ezért. A Sussexi Egyetem fizikusai és társaik csak azt mutatták meg, hogy a bitcoin tranzakcióinál az azonosítást védő jelenlegi titkosítás az, ami hatékonyan támadhatóvá válik a kvantumszámítógéppel, abban a nagyjából 10 perces–1 órás időtartamban, amíg a tranzakció végig nem fut a teljes rendszeren.
Tehát a mai bitcoin-tranzakciók továbbra is biztonságosak maradnak, a jövőbeli támadás ellen pedig a bitcoin fejlesztői viszonylag könnyen védekezhetnek, ha áttérnek hosszabb kulcsok használatára, vagy váltanak az azonosítási műveletek úgynevezett posztkvantum-titkosítására. Erre még van bő tíz évük: a Google és az IBM ambiciózus tervei is a 2030-as évekre teszik a több millió bites kvantumszámítógépek megjelenését, márpedig a sussexi csoport friss eredménye szerint a bitcoin adásvételeinek támadásához 300 millió kvantumbitre van szükség.
De nézzük egy kicsit a részleteket! A „brit tudósok”, akik a bitcoint akarják feltörni kvantumszámítógéppel, valójában a Sussexi Egyetem és egy onnan kivált spin-off cég, a Universal Quantum (részben német) kutatói, valamint egy holland társuk, a Qu&Co kvantumos startuptól. Idén januárban jelent meg tanulmányuk az online ingyenesen elérhető AVS Quantum Science című, magas impaktfaktorú folyóiratban. A cikk címében („The impact of hardware specifications on reaching quantum advantage in the fault tolerant regime”) is jelzi, hogy nagy áttörés helyett a kvantumszámítógépek tágabb értelemben vett benchmarkolása a téma.
Mit is jelent ez pontosan?
A cikkben arra az általánosan elfogadott feltevésre építenek, hogy a kvantumszámítógépek fejlesztésénél a pontosságon nagyon nehéz javítani, viszont az egy gépbe integrált kvantumbitek számát könnyebb növelni. A mainál ezért csak kicsit pontosabb hardverből indulnak ki, azaz kb. 0,1 százalékos hibavalószínűséggel számolnak egy-egy logikai kapura a szupravezető alapú architektúráknál (ami az élvonalnak tekinthető, bár a kiolvasás még sokkal zajosabb), illetve kb. 0,01 százalék hibával a csapdázott ionos gépekre. Az elemi műveletek sebességét is nagyjából a mai élvonalhoz illesztik, azaz a méréseket is beleértve körülbelül mikroszekundumos hibajavítási ciklust vesznek a szupravezetős kvantumszámítógépekre, 235 mikroszekundumot az ioncsapdásokra. Azt kérdezik meg, hány kvantumbitet kell összerakni egy ilyen gépbe, hogy bizonyos fontos feladatok értelmes időn belül elvégezhetők legyenek.
Szemben a Google kvantumfölény-kísérletével (quantum supremacy), itt az úgynevezett kvantumos előnyt (quantum advantage) keresik, azaz a társadalom számára hasznos feladatok kvantumos gyorsítását. Két konkrét példát vizsgálnak: az első a műtrágyagyártás energiaigényének lényeges csökkentéséhez szükséges kémiai szimuláció (a nitrogenáz enzim központi elemének, a FeMo kofaktor működésének szimulációja), illetve a bitcoin tranzakcióit védő, 256 bites elliptikus görbéken alapuló kódolás feltörése. Ez utóbbi támadás ugyanúgy a Shor-algoritmusra épül, mint az internetet titkosító több algoritmusnak, így például az RSA2048-nak a feltörése, csak ez utóbbinál talán ritkábban említett alkalmazás.
Mindkét feladathoz olyan kvantumszámítógép kell, ami több millió számítási lépést tud egymás után elvégezni anélkül, hogy elveszne a számítási pontosság. Márpedig a legjobb esetben is 0,1 százalékos hibaráta mellett ez csak úgy érhető el, ha az egyes logikai kvantumbiteket többszáz fizikai kvantumbit között osztjuk el, és gyakori mérésekkel csípjük fülön és javítjuk a hibákat. Azt, amikor ilyen módon kvantumos hibajavító kódokat (quantum error correcting codes) használnak a kvantumalgoritmus elvégzésére, „hibatűrő kvantumszámításnak” (fault tolerant quantum computing) nevezik. Erre a legígéretesebb eljárás az úgynevezett felületi kód (surface code), ezt használják ebben a tanulmányban is. Építenek a legfrissebb algoritmikus fejleményekre, amik részben egy berlini doktorandusztól származnak (Daniel Litinski azóta a PsiQuantumnál dolgozik, egyik kulcsfontosságú ötletét lásd az ábrán), részben a Google és a Microsoft kvantumszámítógépes csoportjaiból.
Ami a bitcoin-tranzakciók azonosításánál használt 256 bites titkosítást illeti, a cikk eredményei szerint a legfrissebb módszerekkel, és a mainál kicsit jobb hardverrel ehhez kb. 300 millió kvantumbitre van szükség. De megvizsgálták azt is, hogy módosul ez a becslés, ha pontosabb vagy gyorsabb alkatrészek állnak rendelkezésre.
A kriptográfus válaszol
Hogy miként lehet megvédeni a bitcoint ettől a támadástól? Ezzel a cikk nem sokat foglalkozik, ezért a BME TTK kriptográfiával foglalkozó matematikusához, Nagy Gábor Péterhez fordultunk segítségért.
Az első, időnyerő lépés lehet a jelenlegi 256 bites kulcshossz ütemes növelése. Ezt a bitcoin felhasználói szinte észre sem vennék, csak picivel növelné meg a tranzakciók idejét, de a kvantumszámítógépet használó hackereknek lényeges akadályt jelentene. A kódtörő kvantumalgoritmus erőforrásigénye ugyanis a kulcs hosszának köbével skálázik (a cikkben hivatkozott friss munka szerint), tehát pl. 4096 bites kulcsnál többezerszeresére nőne.
A második, tartósabb megoldás, ha az elliptikus görbéken alapuló titkosító eljárást lecserélik olyanra, ami ellen nem ismert hatékony támadás kvantumszámítógéppel sem. Az ilyen, úgynevezett posztkvantum-kriptográfiai eljárások szabványosítása folyamatban van, az amerikai szabványügyi kutatóintézet (NIST) erre kiírt versenye zajlik, és új fordulók meghirdetése is várható.
A szerző a BME Elméleti Fizika Tanszékének docense és a Wigner FK Kvantumoptikai és Kvantuminformatikai Osztály tudományos főmunkatársa.
***
A QHungary csoportot, a QWorld szervezet magyar tagját, 2019 júniusában alapították magyar, a kvantumszámítógépek fizikai alapjaival és alkalmazásaival foglalkozó elméleti fizikusok: Zimborás Zoltán (Wigner FK), Asbóth János (BME/Wigner FK), Oroszlány László (ELTE) és Pályi András (BME). A csoport célja a kvantumszámítógépek népszerűsítése, használatuk és fejlesztésük oktatása, valamint a témával foglalkozó kutatók és a potenciális felhasználók közti kapcsolatteremtés Magyarországon. A QHungary képzéseket, műhelyeket, találkozókat szervez, és a QHungary Facebook-csoportban is folytatja az ismeretterjesztést.