Tizenötödik lecke: A számok ereje

Lássuk, tehát négyszer öt az tizenkettő, négyszer hat az tizenhárom, és négyszer hét az tizennégy… ó jajj! Sosem fogok így eljutni húszig!

A számok létfontosságúak a mindennapi életünkben. A nagy számokkal viszont kevesen vannak jó viszonyban. A legnagyobb számok, amelyekkel talákozhatunk, a milliós, millárdos, esetleg a billiós tartományba esnek. Olvashatunk az újságokban arról, hogy milliók élnek nyomorban, milliárdos mentőcsomag kell a bankoknak, vagy éppen valahány billió az államadósság. Ezek a főcímek nem nagyon ragadják meg a lényeget, de az emberek többsége mégis viszonylag kényelmesen át tudja gondolni az ekkora számokat.

Viszont hiába tudjuk kezelni ezt a nagyságrendet, az intuíciónk itt azért már kezd rendetlenkedni. Például van elképzelésed arról, hogy mennyi ideig tart, míg eltelik egymillió, egymilliárd, vagy egybillió másodperc? Ha hasonlítasz rám ebben, akkor valójában fogalmad sincs arról, hogy mit is jelentenek ezek a számok. Szóval nézzük meg közelebbről!

A különbség ezek között három nagyságrend, tehát 10⁶, 10⁹, 10¹² másodpercről beszélünk. A másodpercek használata nem túl praktikus, szóval fogalmazzuk meg kicsit hétköznapibb mértékegységgel:

  • 10⁶, tehát egymillió másodperc másfél hetet jelent.
  • 10⁹, egymilliárd másodperc 32 évnyi idő.
  • 10¹², egybillió másodperccel ezelőtt Manhattan szigetét elég vastag jégréteg borította.
1 billió másodperccel ezelőtt; xkcd #1225

Ahogyan belépünk a modern kriptográfia asztronómiai léptékű számainak a világába, a képzeletünk felmondja a szolgálatot. A Bitcoin hatalmas számokra épül, és arra, hogy ezeket nem lehet kitalálni. Ezek a számok pedig sokkal, de tényleg sokkal nagyobbak, mint azt el tudnánk képzelni. Nagyságrendekkel nagyobbak. Hogy megérthesd a Bitcoin egészét, érdemes ezeket a számokat is megérteni.

A Bitcoin az SHA-256 algoritmust használja a hasheléshez, az adatok titkosításához. Azt gondolhatnánk, hogy a 256 az nem olyan nagy szám, de az SHA-256 elnevezésében a 256 valójában a nagyságrendet jelenti. Ekkora nagyságrend már megdolgoztathatja az agyunkat. A 256 bites biztonság esetében félrevezető lehet, ha a kétszázötvenhatra gondolunk. Ez nagyságrendet jelent, ahogyan a millió az annyi, mint tíz a hatodikon, a milliárd pedig tíz a kilencediken. Az SHA-256 az azt jelenti, hogy a használt szám az 2²⁵⁶, tehát kettő a kétszázötvenhatodikon.

Ez mennyire erős titkosítás?

„Az SHA-256 nagyon erős. Nem olyan, mintha csak egy következő lépcsőfok lenne, mint az SHA1 az MD5 után. Évtizedekig használható marad, hacsak nem történik valami hatalmas jelentőségű áttörés a területen.”

Satoshi Nakamoto

Nézzük meg pontosan, hogy miről is beszélünk! Ez egészen pontosan 78 számjegyet jelent a tizes számrendszerben.

2²⁵⁶ = 115.792.089.237.316.195.423.570.985.008.687.907.853.269.984.665.640.564.039.457.584.007.913.129.639.936

Ez sokkal több, mint a létező atomok száma az ismert univerzumban, igazából nincs is mihez hasonlítanunk ekkora számot. Hogy ezt teljes valóságában felfogjuk, szinte lehetetlen. Az emberi agy nem erre van tervezve.

Ha van kedved, egy videót is megnézhetsz erről, Grant Sanderson nagyon jól vizualizálta, hogy mekkora léptékekről van szó. A „How secure is 256 bit security?” című, angol nyelvű videót a https://www.youtube.com/watch?v=S9JGmA5_unY oldalon tekintheted meg. Ahogyan az alkotó többi videója, ez is egyszerre lenyűgöző, és hihetetlenül informatív. Az embernek kedve támad még jobban belemerülni utána a matematika világába.

Bruce Schneier a számítógépek fizikai korlátai segítségével is elmagyarázta, hogy mekkora számokat kell magunk elé idéznünk. Ha sikerülne építeni egy hatalmas számítógépet, és a bolygónk központi csillaga, a Nap összes energiáját fel is használnánk, százmilliárdszor százmilliárd évnyi kalkuláció után is mindössze 25%-os esélyünk lenne megtalálni egy tűt a 256 bites szénakazalban.

„Ezek a számok nem a számítógépek, mint eszközök technológiájától függnek. Ezeket a termodinamika törvényei maximalizálják. A 256 bites kulcsok feltörése nyers erővel azután válik lehetségessé, ha a számítógépeket már nem anyagból készítik, és nem a fizikai térben léteznek.”

Bruce Schneier

Nehéz ennél egyértelműbben megfogalmazni ezt. Ráadásul a kriptográfia erőssége felborítja a valódi, fizikai világban tapasztalható erőviszonyokat. A való világban nincs törhetetlen dolog. Ha elég keményen próbálkozol, kinyitható bármely ajtó, széf, kincsesláda. A Bitcoin kincsesládája viszont máshogyan működik. Kriptográfia védi, az pedig nem törhető fel nyers erővel. Márpedig amíg a matematikai törvényszerűségek működnek, nincs más, csak a nyers erő. Van esély persze az emberi oldal „feltörésére”, de a fizikai erőszak alkalmazása nem old fel minden bitcoin-címet, a nyers erő pedig elvérzik a Bitcoin titkosítási sáncain. Akkor is, ha valaki ezernyi csillag erejét használja. Mármint szó szerint, akkor is. Ahogyan a cypherpunkok körében ismert mondás tartja, „a matematikai problémákat nem lehet kényszerítő erővel megoldani”.

„Nem annyira magától értetődő, hogy a világnak így kellene működnie. De valahogy mégis, az univerzum rámosolyog a titkosításra.”

Julian Assange

Azt még senki sem tudja, hogy az univerzum mosolya vajon őszinte-e. Lehetséges, hogy a matematikai feltevéseink helytelenek, és valahogy rájövünk, hogy X egyenlő Y-nal, vagy esetleg valamely nagyon nehéz, speciális problémáról derül ki, hogy egyáltalán nem nehéz. Ha ez a helyzet, akkor a kriptográfia a jelenlegi formájában megszűnik létezni, a világunk pedig a felismerhetetlenségig megváltozik ennek következményeként.

„Vires in Numeris = Számokban az erő”

epii

Ez a kifejezés nem egyszerűen egy jól hangzó mottó, amelyet a bitcoinerek mantráznak. A felismerés, hogy egyfajta legyőzhetetlen erő van a számokban, a megvilágosodással érhet fel. Mikor megértettem ezt, és a hatását a világ jelenlegi erőviszonyaira, az megváltoztatta a világnézetemet, és azt, ahogyan a jövőbe tekintek. A számok erejének legegyszerűbb bizonyítéka az, hogy senkitől sem kell engedélyt kérned a Bitcoin használatára. Nincs weboldal, ahol regisztrálni kellene. Nincs cég, amely irányítaná a rendszert, nincs állami hatóság, és nincs formanyomtatvány, amelyen be kell adni a kérvényt. Generáltass a számítógépeddel egy jó nagy számot, és kész is vagy. A számok mögötti hatóságot úgy hívják, hogy matematika. És csak Isten tudja, hogy ott ki a főnök.

Elliptikus görbék; Emmanuel Boutet

A Bitcoin a valóságról alkotott jelenlegi ismereteinkre épül. Számos nyitott kérdés létezik még a fizika, számítástechnika, és a matematika terén, de vannak dolgok, amelyekben már eléggé biztosak vagyunk. Aszimmetria van aközött, hogy mennyire nehéz megoldani egy problémát, és leellenőrizni, hogy tényleg megoldottuk-e. Az is biztos, hogy a számításokhoz energia kell. Más szóval megfogalmazva, sokkal nehezebb megtalálni egy tűt a szénakazalban, mint megmondani, hogy az a hosszú, hegyes dolog a kezedben tű, vagy szénaszál. A tű megtalálása pedig munkával jár.

A bitcoin-címek lehetséges változatainak a száma szinte leolvasztja az ember agyát. A privát kulcsok száma is. Lenyűgöző, hogy az egész modern világ elhasal a tűkeresés feladata előtt, akkora elképzelhetetlenül nagy a szénakazal. Most már sokkal jobban értem ezt, mint régebben.

A Bitcoin megtanított a számok erejére.

***

Ez a bejegyzés egy részlet Gigi – 21 Lecke című cikksorozatának magyar fordításából. A tartalomjegyzéket és az ingyen letölthető változatot ide kattintva találod meg.