A bizalom decentralizálása
2011-07-24Szerző: Vitalik Buterin
A legtöbb gazdasági tranzakcióhoz szükséges valamennyi bizalom is az abban érintett felek között. Ha egy valós holmit veszünk bitcoinért, akkor az eladó átverhet minket azzal, hogy egyszerűen nem küldi el a kívánt holmit, miután már kifizettük azt. Mivel pedig a bitcoinok lenyomozhatatlanok, és a tranzakciók sem fordíthatóak vissza, ezért a pénzünk már végleg nála marad. Ez a veszély leginkább egyszeri vásárlások esetén áll fenn. Ezzel szemben hosszú távú megállapodások esetén, amikor például valaki rendszeres szolgáltatást vagy rendszeres termékszállítást vállal rendszeres fizetségért cserébe, a megállapodás mindkét félnek többet ér annál, amennyit egy egyszeri csalással nyerhetne.
A Bitcoin gazdaságának fejlődésével azonban egyre inkább szükségessé válik egy, a csalókat büntető rendszer bevezetése – különösképpen amióta feltűnt a színen a Global Bitcoin Stock Exchange is. Ez utóbbi ugyanis ragyogó lehetőséget kínál a csalóknak egy fantomvállalkozás beindítására, “indulótőke” begyűjtésére, majd az azzal való villámgyors lelécelésre.
A hagyományos gazdaság minden további nélkül hagyatkozhat a törvényeket betartató bíróságokra, de a Bitcoin gazdasága már nem, mivel a bíróság csak akkor működik, ha azonosítani és lokalizálni is tudja a vádlottat, míg ugyebár a Bitcoin egyik legfontosabb jellemzője épp a tranzakciók lenyomozhatatlansága és fizikai helyhez vagy személyhez köthetetlensége. Példának okáért magának a GLBSE-nek is szándékában áll teljes névtelenségben, a “kódtérből” működni, bármely állam és kormány hatáskörén kívülről.
Ennélfogva megoldást itt leginkább a hírnév jelenthet; mivel mindenki szívesebben üzletel jó hírnévnek örvendő partnerrel, ezért ez egy igen fontos és értékes tulajdonsággá válhat. Ha valaki átver valakit, akkor a sértett nem eredhet ugyan az elkövető nyomába és nem oszthat vagy oszttathat fizikailag is igazságot, viszont hírét keltheti az esetnek. A Bitcoin gazdasága ugyanis csak látszólag névtelen. Valamilyen neve az elkövetőnek is van, és a csalás tényének a közösség előtt való felfedésével a sértett rossz hírét keltheti ennek a névnek. Az elkövető persze minden további nélkül felvehet egy másik nevet, de a régivel már nem fog tudni mit kezdeni, és kárba veszett minden erőfeszítése, amit annak a fényesítésére szánt.
Így tehát kulcsfontosságúvá válik az online személyazonosság – ezeket azonban ellopni is jóval könnyebb, mint a fizikaiakat. Ha például Alice a közösség köztiszteletben álló tagja, akkor mi tartja vissza Carlt attól, hogy Alice-nek adva ki magát, átverje Bobot egy “üzleti ajánlattal”? Tény persze, hogy ehhez Carlnak előbb be kell törnie Alice fiókjába. De ez nem feltétlenül jelent nagy akadályt. Az email és a fórum ugyanis amellett, hogy korlátozza a kommunikációs lehetőségeket, centralizált és nem is mindig biztonságos. Ha Carl talál egy sebezhetőséget a fórumban, úgy akár több ezer felhasználó személyazonosságát is ellophatja egyszerre. De ugyanígy megszemélyesíthetnek másokat a fórum bennfentesei és kormányhivatalok is, kötelezve az illetékeseket az erről való hallgatásra. Végül, de nem utolsósorban, a fórumok egyszerűen el is tűnhetnek a netről. Mivel az ilyen informális rendszereknek mindig van egy központja, ami sebezhető vagy meghibásodhat, így éppen azért nem érdemes megbízni bennük, amiért a Bitcoin felhasználói sem bíztak meg az e-goldban vagy más netes valutákban – vagy épp egyszerűen a hitelkártyákban vagy a PayPalben – és tették le a voksukat inkább a Bitcoin mellett.
Hogyan tehetjük hát biztonságosabbá a netes személyazonosságokat? Például nyilvános kulcsú aláírással ellátott üzenetekkel. Ha Alice üzenni akar Bobnak, akkor egy széles körben ismert hash-funkcióval, például az SHA1-gyel előállítja az üzenete egy rövid, 160 bites hashét. (A hash-funkció úgy működik, hogy már az üzenet akár csak egyetlen betűjének a megváltoztatása is teljesen más hasht eredményez, és szinte lehetetlen célzottan olyan üzenetet előállítani, ami konkrétan egy meghatározott hash-értéket eredményezne.) Ezt aztán lekódolja a titkos kulcsával, majd elküldi az üzenetet Bobnak. Bob dekódolja Alice kódolt hashét Alice nyilvános kulcsával, amely utóbbit egyben nyilvánosságra is hozza, majd maga is lehasheli az üzenetet. Ha a két hash megegyezik, akkor biztos lehet benne, hogy az valóban Alice-től érkezett. Carl ugyanis Alice titkos kulcsa nélkül nem tudja úgy lekódolni az üzenetét, hogy az dekódolható legyen Alice nyilvános kulcsával – így pedig nem is személyesítheti meg őt.
Ez tehát a hírnévrendszer alapja, de önmagában még nem elég. Ha Bob csak megbízható partnerekkel akar tárgyalni, hogyan tájékozódhat egy számára új, ismeretlen ember megbízhatósága felől? Rákereshet persze a nevére, de ugyanakkor Carlt sem tartja vissza semmi attól, hogy fantomfiókok százait hozza létre, amelyekkel mind a fő nevét dicséri. Megoldást itt egy bizalomhálózat jelenthet, ahol az emberek beszámolhatnak a sikeres interakciókról éppúgy, ahogy a csalásokról is, nevükön nevezve a partnereiket – és ahol maguk a beszámolókat író emberek is ellenőrizhetőek. Így ha Bob azt látja, hogy száz ember dicséri Alice-t, akkor ellenőrizheti, hogy szintén a közösség megbecsült tagjai-e ők is, vagy csak fantomfiókok. Utóbbi esetben Alice természetesen nem megbízható, míg az előbbiben már akár a GLBSE-n is indíthatna egy vállalkozást. De hasonlóképp figyelmen kívül hagyható az is, ha száz fantomfiók mocskolódásaival próbálják befeketetíteni Alice-t.
Egy ilyen bizalomrendszerünk már most is van, jelesül a Bitcoin OTC Web of Trust. A baj csak az, hogy ez is egy központi szerveren tárolja a minősített személyazonosságokat. Így ha Carl valahogyan átveszi az irányítást a Bitcoin OTC felett – mert mondjuk az egyik bennfentes a barátja, esetleg ő maga egy ügyes hacker vagy épp egy kormányügynökség képviselője -, akkor könnyen fel is értékelheti magát. És hiába kér a Bitcoin OTC nyilvános kulcsú azonosítást mindenkitől, ha a széles nyilvánosság nem fér hozzá ezekhez a biztonyítékokhoz. A bizalomhálózat így mindig csak annyira lehet erős, mint a hátterét adó oldal. Egyelőre ez elfogadható ugyan, és most még talán nem is lenne érdemes átfogó megoldást kidolgozni a problémára, de minél magasabbra tör a bitcoin értéke, minél több és drágább ügyletet bonyolítanak le rajta (akár a GLBSE-n keresztül is), annál nagyobbá és fontosabbá válik majd a bizalomhálózat is, és annál kevésbé lesz megengedhető számára bármilyen gyengeség – ide értve a centralizáltságot is.
Van továbbá egy másik, jóval gyakorlatiasabb jellegű gond is a nyilvános kulcsokkal – mégpedig az, hogy az egy adott kulcshoz kötött személyazonosságnak nincs lejárati ideje – és abban az esetben sem lehet mit tenni, ha az ember elveszti a titkos kulcsát, vagy ha egy támadó megtalálja a nyilvánosat. Lehet persze küldeni egy olyan aláírt üzenetet, hogy “Nyilvános kulcsot váltok, mostantól ez ez új kulcs képvisel majd engem”, de ez nem segít sem elvesztés, sem lopás esetében. Egy megoldás lehet tehát a megelőzés, egy ilyesféle aláírt üzenet formájában: “Ez és ez a kulcs is képviselhet engem”. Feltételezve, hogy normál körülmények között az elvesztés és a lopás esélye is 1:1.000, ebben az esetben az elvesztés esélye 1:1.000.000-ra zuhan ugyan, viszont ezzel együtt a lopás esélye 2:1.000-re nő. Ha egyszerre kell használni mindkét kulcsot, akkor megcserélődnek az arányszámok. További megoldás lehet tehát az, ha 3 kulcsból kell használni egyszerre 2-t. Ez már jóval biztonságosabb, mivel így az elvesztés és a lopás esélye is 3:1.000.000-ra csökken. Megvan továbbá az az előnye is, hogy a 3-ból 2 idővel le is játhat és lecserélheti a 3.-at; így idővel akkor is le lesz cserélve mindegyik kulcs, ha az egyiket valóban megtalálja valaki, és erre még csak nem is derül fény. Így azonban az a kérdés merül fel, hogy hogyan tartson lépést az ember a folyamatosan változó kulcsaival? Ehhez egy, a lejárati üzeneteket aláíró időbélyegző szerverre lesz szükség, hogy a támadó két régi kulcs megtalálása esetén se tehesse lejárttá és cserélhesse le az áldozata személyazonosságát.
Erre a két problémára azonban már van megoldásunk – ami ráadásul decentralizált és hasonló is a Bitcoin hálózatához. Mivel a blokklánc szerves részét képezik az időbélyegek, így elég csak azt átnézni és előkeresni belőle, hogy egy adott időpontban melyik kulcsok melyik személyazonossághoz tartoztak. Így nem igényelne megerősítést az aláírt üzenetküldés sem, mivel elég lenne csak összevetni azt a pillanatnyilag a kérdéses személyazonossághoz kötött kulcsokkal. Ha pedig ezek lejártak, akkor egyszerűen meg lehet kérni a küldőt az üzenet újbóli, immár az új kulcsokkal való elküldésére. Egy ilyen rendszer felépíthető például egy Bitcoin-szerű, a Namecoinhoz hasonló blokklánc-alkalmazásra. Mi több, ezt akár magára a Namecoinra is fel lehetne építeni. Hiszen a Namecoinnak már megvannak a “személyes”- és a DNS-névhelyei, a bizalomhálózat pedig lehetne az egymásra hivatkozó weboldalak szimpla kiterjesztése. Decentralizált pénzhez elvégre decentralizált perifériák is kellenek: decentralizált váltók, decentralizált DNS, Namecoin és decentralizált bizalomhálózat.
Forrás: Bitcoin Weekly
A lap szövege Creative Commons Nevezd meg! – Ne add el! – Így add tovább! 3.0 licenc alatt áll, felhasználni csak forrásmegjelöléssel, és ide mutató linkkel szabad.