Tábornok úr, van egy kis gond!

A lenti sorok szerzője Sziller (sziller.eu), Bitcoin és Bitcoin Lightning szoftverfejlesztő, tanácsadó, vendégszerző: 

Ha nem lenne elég lehangoló, hogy két szereplő között képtelenek vagyunk a tökéletes egyetértés elérésére, mit fogunk gondolni ha megértjük, hogy pusztán egy sokkal összetettebb témakör felszínét kapirgáljuk.

Nagyival ugyanis tökéletesen megbízhattunk egymásban. Sose hívtam azelőtt, hogy hazaértem volna, ő várta és – amint hallotta – egyből viszonozta is a csörgetésemet. Nem akartuk átejteni a másikat.

Igenám, de mi történik, ha rengeteg szereplő szeretne egyetértésre jutni. Olyanok, akik nem bíznak egymásban, sőt nem is ismerik egymást? Olyan szereplőkről beszélünk, akik adott esetben készakarva átverik a többieket vagy hébe-hóba egyszerűen csak tévednek. Mondok rosszabbat: mi van, ha maga az amúgy semleges médium – amin a kommunikáció folyik – is megbízhatatlan, vagy ha rosszindulatú külső játékosok akarnak időről időre kibabrálni a résztvevőkkel. És akkor még nem beszéltünk arról, hogy pontosan miről kellene megállapodnunk. Ha nem abban kell egyetértsünk, hogy a kölök hazaért-e időben úszásóráról, hanem fontosabb kérdésekről: emberéletekről, vagyonról, energiáról, környezetről, emberek boldogulásáról.
Azaz mi történik, ha a szereplők számára növekszik a tét? Mi történik, ha a szereplőknek veszítenivalójuk van?

Ha már az előző írásomban felvetettem, nézzük most meg hogyan néz ki bizánci tábornokunk problémája?

Érdekes, hogy a kérdést először a XX. században számítástechnikában nevesítették és fogalmazták meg, miközben az élethelyzet velünk van, mióta ember az ember. Végül számítógépek közötti kapcsolattartás buktatóinak absztrakciójakor került elő a probléma s így a hozzá kerekített alábbi történet is:

Hadvezérünknek egy várost kellene megtámadnia csapataival, több különböző irányból. Katonái a város körül, táborokban várják az utasítást. A támadás biztosan sikerrel jár, ha egyszerre indítják minden irányból, de könnyen meghiúsulhat, ha nem egy időben támadnak. Az órák ugyan minden táborban ugyanúgy járnak, de a táborok vezetői csak futárokkal tudnak üzeneteket küldeni egymásnak. A futárok viszont ellenséges területen kelnek át: feltarthatják, elfoghatják, kényszeríthetik, megvesztegethetik őket; elvehetik, olvashatják sőt átírhatják az üzeneteiket. A város védői akár küldhetnek ál-futárokat is, téves adatokkal. Sőt Tábornokunk abban sem lehet biztos, nincs-e áruló a saját táborvezetői között, aki végiggondolt stratégia mentén tudatosan szabotálni akarja a támadást.
A tábornoknak elő kellene állnia egy stratégiával, ami biztosítja az egyetértést a különböző táborok parancsnokai között:

Mindegy, mennyi időbe telik és milyen időpontban állapodnak meg, de minden tábor parancsnokának ugyanazt az időpontot kell elfogadnia.

Megszívtuk, nemde? Teljesen esélytelen, hogy ellenséges környezetben, sok szereplő között egyetértést érjünk el? Nemhogy képtelenség megoldani egyenlő felek között a konszenzus elérését, de a megkerülő megoldás is reménytelennek látszik. A valósághoz hozzátartozik, hogy a helyzetet lehetetlen tökéletesen kezelni. Adott felhasználás függvényében tudunk jobb (de főleg) rosszabb stratégiákat kidolgozni.

Nézzük meg miféle erőfeszítéseket tett az emberiség mindez idáig. Anélkül, hogy megfogalmaztuk volna a kihívást, valahogy mintha legbelül éreztük volna, hogy egyenrangú szereplők – egymás között – nem gondolhatják ugyanazt a világról, és ezt alapvetésnek tekintettük. Természeti törvénynek feltételezve az alapvető kedvezőtlen helyzetet, igazán neki sem álltunk megoldani, ehelyett bevezettük a “felelősség” koncepcióját, azt pedig a játéktéren kívüli entitásokra helyeztük. Ha egyenrangú résztvevők között kívánunk egyetértést elérni keresünk valakit, akiben mindannyian jobban megbízunk, mint egymásban. Erre a valakire felelősséget hárítunk, valamilyen ellentételezés fejében: Megjutalmazzuk, ha megteremti vagy betartja illetve megbüntetjük, ha rombolja vagy megszegi a bizalmat, a szabályokat. Központi – közbülső – résztvevőket illesztünk a rendszereinkbe, akik vagy amik ezáltal fontos és megkerülhetetlen részei lesznek ezeknek a rendszereknek. Ezáltal pedig értelem szerűen hatalomra tesznek szert.

Következő cikkemben megnézzük: miért nem szerencsések ezek a látszatmegoldások, de előbb hozok pár példát arra, hol és milyen nagyságrendben merül fel a bizánci tábornok problémája:

  • Te, kedves olvasóm ki- vagy feltaláltál valami remek dolgot. Szeretnéd, ha bárki számára igazolni tudnád, hogy ez a Te ötleted. Sőt még azt is, hogy mikor rukkoltál elő vele. Be kell nyújtanod egy szabadalmi kezdeményezést egy hivatalba, egy intézménybe, amiben Te, én és vélhetőleg mindenki más is – aki felé majd valamikor az ötleted eredetiségét bizonyítani kívánod – megbízunk.

  • Ketten úgy döntünk, hogy összeházasodunk? Felkérünk valakit szerződésünk rögzítésére, hogy vita esetén bármelyikünk igazolhassa bárki számára házasságunk létrejöttét.

  • A suliból tízen imádunk zsugázni. Ha leülünk verni a blattot, egyikünket mindig megbízzuk a pontok írásával, és reméljük, hogy nem hagyja, hogy bárki illetéktelenül belepiszkáljon a pontszámokba meg persze, hogy ő sem ver át minket.

  • Száz lakóval társasházat alapítunk. Az alapító okiratot, pénzügyeinket, és szerződéseinket a közös képviselőre bízzuk. Ha bármelyikünknek kérdése, kételye merül fel, hozzá fordulhat, benne bízunk, ő felügyeli a megállapodásunkat.

  • Ezerfős községünk nyomon akarja követni telkei tulajdonviszonyainak alakulását. Kénytelenek leszünk egy központi nyilvántartást létrehozni, ott követni a változásokat és természetesen megbízni e nyilvántartást vezető személyekben, intézményben.

  • Na és mit teszünk, ha a Földgolyón mindannyian szeretnénk használni egy fizetőeszközt, amit senki nem tud szabálytalanul manipulálni? Nos, akkor is szükségünk van központi szereplőre, szereplőkre, akik kezelik a fizetőeszközt, a számlákat, hogy semelyikünk ne tudja többször elkölteni ugyanazt az egységet, senki ne tudjon új egységeket elővarázsolni a semmiből. Valakire vagy valakikre akik tudják, mekkora mennyiségű fizetőeszköz van forgalomban.

Aki egyszer megérti a bizánci hadvezér problémáját, lépten-nyomon bele fog botlani társadalmunk működésének, emberi kapcsolataink vagy gazdasági interakcióink vizsgálatakor. A konszenzus létrehozásának problémája MINDENÜTT jelen van. Mi pedig újra és újra ugyanúgy kerüljük meg a problémát: központi szereplőket ruházunk fel hatalommal és toljuk rájuk a felelősséget.

Kivétel nélkül.

 — Miért vagyok ennyire rácsúszva erre a problémára egy Bitcoin cikksorozat immár második részében is, anélkül, hogy a megoldásról beszélnénk? Arról a megoldásról, amit – lassan mindannyian sejtünk – a Bitcoinban fogunk megtalálni.

 — Azért, hogy emeljem a tétet! Azért, hogy érzékeltessem: Soha nem is hittük, hogy elérhető a decentralizált anonim konszenzus. Egy egész civilizációt építettünk fel arra a feltételezésre, hogy ez lehetetlen. Azért, hogy megértsük, ha előállnánk egy megfejtéssel, az alapjaiban írna át mindent, amit a világról gondolunk.

És igen, a következő cikket is az anonim decentralizált konszenzusnak szenteljük megnézve, milyen békákat nyeltünk le ezidáig abból kiindulva, hogy matematikai képtelenség ilyen konszenzus megteremtése.

Találkozzunk egy hét múlva!

A BitcoinBázis podcastjának, a Bitcoin Kebabnak e heti vendége ismét Szilárd. Katáék ebben az adásban is érdekes témákat fognak feszegetni – szó lesz például az orákulum problémáról és a kvantumszámítógépekről, melyről többek között kiderül, hogy valóban veszélyt jelent-e a kriptovaluták számára. A két Bitcoin maxi szót ejt az Ethereumról is, na meg persze a Lightning Network-ről és a node-ok működéséről.