A blokkláncok titkosítása veszélyben lehet a kvantumszámítógépek megjelenésével, hiszen ezen technológia egyik alkalmazási területe a matematikai kriptográfia feltörése. Ugyan a technológia még új és kiforratlan, de a jövőben sok, eddig feltörhetetlennek hitt titkosítás kerülhet veszélybe.
A kvantumszámítógépek rövid története
A számítástechnika a XX. század második felében egyre nagyobb teret nyert. A fizikusok és feltalálók keresték az alkalmazási lehetőségeket és folyamatosan fejlesztették gépeiket. A mai számítógép alapjait Neumann János, magyar származású matematikus fektette le és publikálta 1946-ban. A kvantumszámítógép eredete 1980-ra tehető, amikor Paul Benioff azt javasolta, hogy a számításokra kvantummechanikát alkalmazzunk. Az ötlet kijelentése után több kutatóintézet és egyetem (többek között az Oxford is) nekiállt kidolgozni az elméleti hátteret.
2007-ben egy D-wave nevezetű startup vállalat kijelentette, hogy a kvantumszámítógépük képes megoldani egy Sodoku-t. A technológia tesztelésébe beszálltak a nagy vállalatok, a D-wave hardware-ét 2013-ban teszteli a Google és a NASA is. Majd nem is olyan rég, 2019-ben a Google kijelentette, hogy elérte a kvantumfölényt. Ez azt jelenti, hogy túlszárnyalták az általános számítógépek tudását. E szerint a kvantumszámítógép már képes megoldani olyan problémát, amit egy számítógép nem tud. Ebben az esetben a “nem tud” annyit jelentett a Google értelmezése szerint, hogy túlságosan sok időbe kerülne, tegyük fel 10 ezer évbe.
Miben különbözik a hagyományos számítógép a kvantumszámítógéptől? Nos, nem vagyok fizikus, ezért nem mennék bele a részletekbe (nem is tudnék), de alapelveit az interneten gyorsan felkutathatjuk. A hagyományos számítógépek kettes számrendszert használnak, minden számítás nullákból és egyesekből áll. Ezzel szemben a kvantumszámítógép kvantumbiteket használ, amik értéke 0, 1 vagy ezek bármilyen, úgynevezett kvantum-szuperpozíciója lehet, ami végtelen sok lehetőséget tartalmaz. Ezen kívül a kvantumszámítógép a számításokat egymással párhuzamosan hajtja végre.
Bitcoin (BTC) címek titkosítása
A Bitcoin tárcák létrehozásához a publikus kulcs titkosítást használja a rendszer. A privát kulcs a “jelszó” a tárcához, míg a publikus kulcson keresztül utalhatnak nekünk Bitcoint, azt nyugodtan megoszthatjuk a nagyvilággal. A titkosítás alapja egy olyan matematikai függvény, ami az egyik irányba könnyen kalkulálható (privát kulcsból könnyen generálható a publikus kulcs), másikba nagyon nehezen (publikus kulcsból nehezen tudjuk megmondani a privát kulcsot). Mindaddig, ameddig a privát kulcs nem kerül más kezébe, a tulaj biztonságban tudhatja a kriptovalutáit. Ezt azért merjük kijelenteni, mert a publikus kulcsból túlságosan sok idő visszafejteni a privát kulcsot (több emberöltő alatt). Legalábbis mindez igaz, ha a hagyományos számítógépek kapacitásával számolunk. 1994-ben egy matematikus – Peter Shor – publikált egy tanulmányt, amiben azt a kérdést fejtegette, hogyan tud feltörni egy kvantumszámítógép egy titkosítást.
Megjelenése óta voltak ráncfelvarrásai a Bitcoin rendszernek. Kezdetekben a publikus kulcs megfelelt a tárca címének, ezt logikusan “pay to public key”-nek hívják, röviden p2pk. A Bitcoin megjelenése után megannyian bányásztak és kapták fizetségüket p2pk címekre, és máig azon tárolják. Az ilyen típusú címmel több probléma is van. Nagyon sok karakterből áll, így könnyen félreüthetjük, valamint a blokkláncon sok helyet foglal, így a feldolgozása is hosszú időbe kerül. Nem beszélve a kvantumszámítógépről, ami Peter Shor algoritmusával visszafejti a publikus kulcsot, hogy megkapja a privát kulcsot.
Manapság a címeket úgy hozzák létre, hogy hashelik a publikus kulcsot. Ezzel egy rövidebb karaktersorozatot kapunk egy olyan egyirányú függvény segítségével, ami nagyon apró eséllyel generál két különböző karaktersorozatot ugyanarra a hash értékre. Ez esetben nem a publikus kulcsot osztjuk meg a nagyvilággal, hanem a hashelt változatát. Ennek a neve “pay to public key hash”, röviden p2pkh, amit 2010-ben vezettek be a hálózaton. Ez megannyi problémáját megoldja a p2pk rendszernek, hiszen a publikus kulcs is rejtve marad mindenki elől mindaddig, amíg a tulajdonos nem indít tranzakciót a tárcáról. Ugyanis ilyenkor megjelenik a publikus kulcs a blokkláncon. Így azok a p2pkh címek, amik nem indítottak még tranzakciót, védve vannak a kvantumszámítógépektől.
Megoldás a kvantumszámítógépek megjelenésére
Ugyan jelenleg még senkinek nincs a kezében egy olyan kvantumszámítógép, amivel feltörhetné az összes sebezhető Bitcoin tárcát, de valószínű, hogy belátható időn belül a nagyobb vállalatoknak lehet. Abban az esetben, ha valaki rendelkezne ilyen gépezettel, a tárcák egy része biztosan feltörhető lenne. Ezek a p2pk, illetve a már “használt” (indítottak róla tranzakciót) p2pkh alapú címek. A Deloitte-nak köszönhetően grafikonon ábrázolhatjuk a sebezhető Bitcoinok számát.
A megoldás egy potenciális jövőbeli veszélyre, ha olyan címen tároljuk a Bitcoinunkat, ami p2pkh alapú, valamint még nem küldtünk tranzakciót róla. A HD pénztárcák egy mesterkulcsból generálnak több privát kulcsot, így több címünk is lehet, ami növelheti a biztonságunkat.
Egy scenárióról még nem beszéltünk. Egy tranzakciót megközelítőleg 10 perc alatt dolgoz fel a hálózat. Ha egy olyan címről indítottuk a tranzakciót, ami p2pkh alapú, valamint még nem használt, akkor is a tranzakció indításakor a publikus kulcsunk felkerül a blokkláncra. Ha képes lenne egy kvantumszámítógép 10 percen belül feltörni egy publikus kulcsot, valamint elindítani egy új tranzakciót, amit saját maga kibányászik, akkor nincs menekvés, bármilyen tárca feltörhető lenne.
Zárógondolatok a kvantumszámítógépekről
Ne felejtsük el, hogy a Satoshi Nakamoto által 12 éve lefektetett alapoktól már azért jóval fejlettebb a Bitcoin hálózata, mint akkor volt. Gondoljunk csak a SegWit-re, Lightning Networkre. Vagyis látható, hogy ugyan szépen lassan, de a Bitcoin hálózatát is folyamatosan fejlesztik, ha pedig meg van a konszenzus a felhasználók részéről, akkor képes a Bitcoin programkódja is folyamatosan fejlődni. A kvantumszámítógépek potenciális térhódítása pedig egy olyan téma, amivel a legtöbb fejlesztő tisztában van. Így nagyon simán elképzelhető, hogy amikorra valóban “bevethető” kvantumszámítógépek lesznek, addigra a Bitcoin tovább fejlesztett hálózata simán hárítani fogja már ezt a problémát.
A fejlesztőknek észben kell tartaniuk a hosszútávú célokat, ugyanis ha nem fejlesztik a blokklánc titkosítási rendszerét, akkor a kvantumszámítógépek fenyegetni fogják a hálózat biztonságát a jövőben. Azok, akik fórumon is szeretnék megvitatni a kérdést másokkal, itt és itt megtehetik.
Felmerül a kérdés, hogy azok a veterán bányászok, akik elvesztették a privát kulcsukat egy p2pk alapú címhez, a jövőben visszaszerezhetik-e elveszettnek hitt Bitcoinjaikat. Ha egy nagyobb vállalat, mint a Google rendelkezne az erőforrásokkal, valamint hajlandó lenne segíteni ezeken a bányászokon, akkor megmenthető lenne sok ezer Bitcoin. A bányászoknak persze valahogyan bizonyítania kellene, hogy valóban őket illeti meg az adott tárca, de ez már egy másik probléma.
Addig is, aki a legnagyobb biztonságban szeretné tudni a pénzét, használjon p2pkh alapú címeket, ne küldjön róla tranzakciót, és legyen a tárca teljesen offline (“cold storage“).
Egy blokklánc szakértő korábban így vélekedett a témáról
A kifejezetten a kvantumszámítógépek ellenállására kifejlesztett képességek fejlesztése és megvalósítása kulcsfontosságú lesz a blokkláncok jövője és a túlélésük szempontjából. A Blockchain támogatóinak és fejlesztőinek ezért szorosan figyelemmel kell kísérniük a szabványosítási folyamatokat. Ez mellett fel kell készülniük az eredmények integrálására a meglévő és a jövőbeli blockchain projektekbe.
Nem kérdés, hogy jönni fognak a kvantumszámítógépek és az se, hogy nagy hatásuk lesz a jelenlegi technológiai világra. Ahogyan a többi technológiai ágazatnak, a blokkláncnak is fel kell készülnie erre!
De azok, akik úgy vélik, hogy annak egyszerű létezése a blokklánc halálát képezi, nem veszik figyelembe, hogy a blokklánc is növekszik és fejlődik a kvantumszámítás mellett. Rengeteget lehet tenni annak érdekében, hogy a blokkláncok dinamikusabbak és robusztusabbak legyenek. Ha ezeket megtesszük, akkor pedig nekünk semmi esetre sem kell aggódnunk a kvantum-fölény miatt.
Ez a cikk a Cryptofalkán is megjelent.
Vélemény, hozzászólás?