Digitalcash.hu
  • Telefonszámunk:
    +36 70 538-8940
  • Címünk
    Budapest, Hungary
  • Munka időnk:
    Hétfő - Péntek 9.00 - 17.00

New to site?


Login

Lost password? (X)

Already have an account?


Signup

(X)
Farooq
30
Júl

Utreexo.

  • Szerző
    dr. Varsányi Károly
  • Kommentek
    0 Komment
  • Kategória

Az egyik legkorábbi és tartósan fennálló Bitcoin-probléma a skálázhatóság. Magunk is írtunk már erről többször, többféle megközelítésben.

A Bitcoin a szó szoros értelmében veszi a „légy a saját bankod” elképzelést, mivel a bitcoin hálózat minden számítógépe minden olyan felhasználói fiókot tárol, amely a rendszerben pénzt birtokol. A hálózatban ez a “ki nem használt tranzakciók outputjai” vagyis “UTXO”.

A felhasználó bitcoin egyenlege az összes UTXO összege. Amikor a felhasználó tranzakciót hajt végre, a pénztárca UTXO gyűjtést végez, hogy elegendő pénzt találjon a tranzakció fedezésére. A tranzakció (amikor a blokkláncon megerősítést nyer) lényegében „megsemmisíti” a használt UTXO-kat, és „létrehoz” új UTXO-kat, amelyeket most a tranzakció fogadója irányít, hogy felhasználhassák a következő tranzakcióban.

Tehát minden egyes tranzakciónak van egy inputja (hogy mennyi bitcoint küldenek el), és egy UTXO-ja (hogy mennyi maradt az adott kulcson).

Mikor tranzaktálok, akkor az én UTXO értékem lesz az új input tefeléd, nálad pedig ismét UTXO lesz, egészen addig, míg el nem költöd te is.

A Bitcoin csomópontok emiatt a teljes UTXO adatkészletet is tárolják annak érdekében, hogy megtudhassák, hogy a korábbi kifizetések melyik outputjai nem kerültek még felhasználásra, azaz meghatározzák azt, hogy mely UTXO-k állnak még rendelkezésre.

Amikor új tranzakciót kapnak a hálózatról, ellenőrzik ezt a tranzakciót az UTXO listá(já)val szemben, hogy megbizonyosodjanak arról, hogy a tranzakcióban felhasznált érmék valóban léteznek-e, és hogy még nem költöttek el. Ha a tranzakció érvényes, frissítik az UTXO adatbázist.

A Bitcoin csomópontoknak tehát két nagy adattára van tárolásra: a blokklánc és az UTXO lista.

Fontos különbséget tenni a tranzakciók előzményei és a rendszer jelenlegi állapota között.

A Bitcoin tranzakciós előzménye(i) jelenleg 290 GB nagyságú(ak) és minden tranzakciót tartalmaz(nak), mióta a Bitcoin 2009. elején elindult. Ezek az előzményi adatok idővel csak növekedhetnek.

A jelenlegi rendszerállapotot rögzítő adatbázis (amely csak azokkal foglalkozik, akiknek jelenleg is a tulajdonában vannak bitcoinok) azonban sokkal kisebb, csak pár giga.

A skálázhatóság fontos kérdése tehát az, hogy (a feldolgozás után) el lehet távolítani az előzményeket a biztonság elvesztése nélkül?

A legújabb kutatások kriptográfiai akkumulátorok (vagy még inkább aggregátorok), a Merkle-fa „unokatestvérének” felhasználását javasolják.

Ha a Merkle fa az adatokat egyetlen hash-ként hajtja végre, akkor egy aggregátor szűkíti az adatokat egy rögzített méretű adat egyetlen összegére: a “gyökérre”.

Más adatokkal – „bizonyítékkal” – kombinálva az aggregátor lehetővé teszi a felhasználók számára, hogy ellenőrizzék, hogy egy adott adat el van-e tárolva a gyökérben.

Az Utreexo aggregátort használ az UTXO halmazának gyökérkészítéséhez. Azáltal, hogy csak a teljes UTXO készlet helyett ezt az összeget tárolja, az aggregátor kevesebb, mint kilobájtnyi adatot tárol (RAMban és lemezen)

Az Utreexo tehát egy új hash alapú dinamikus aggregátor, amely lehetővé teszi a milliónyi UTXO megjelenítését 1 kilobájt alatt. A csomópontokat, amelyek ezt az Utreexo akkumulátort/aggregátort használják, „kompakt csomópontoknak” nevezzük.

Az Utreexo a hálózat karbantartásának költségeit a megfelelő helyekre osztja el: egy millió tranzakciót létrehozó központnak szüksége lehet egy millió igazolás karbantartására, míg csak néhány kihasználatlan kimenettel rendelkező személyes fióknak csupán néhány kilobájtnyi bizonyítékot kell fenntartania.

Az Utreexo hosszú távú skálázhatósági megoldást kínál, mivel az aggregátor mérete nagyon lassan növekszik az alapul szolgáló készlet növekedésével (az aggregátor mérete logaritmikus a beállított méretnél)

Mi történik, ha egy tranzakciót nem egy kompakt csomópont hoz létre?

Annak érdekében, hogy a kompakt csomópontok kommunikálhassanak a teljes csomópontokkal, az Utreexo bemutatja a „híd csomópont” koncepciót is.

A híd csomópont tárolja a blokkláncot és a teljes UTXO készletet. Ez a híd csomópont fontos „indító lépcső” a meglévő hálózat számára.

A kompakt csomópontok nem tudnak tranzakciókat közvetlenül a teljes csomópontoktól fogadni, mivel ezek a csomópontok nem küldnek felvételi igazolásokat. Amikor egy teljes csomópont tranzakciót küld egy kompakt csomóponthoz, először át kell haladnia a híd csomóponton.

A híd csomópont megnézi az UTXO-t, igazolást épít fel az aggregátorból, és továbbítja mind a tranzakciót, mind a bizonyítást a kompakt csomóponthoz. A kompakt csomópont ellenőrzi a továbbított beillesztési bizonyítékot a saját bizonylatgyűjtőjén és validálja a tranzakciót, ha egyezik.

A híd csomópontra csak egy irányban van szükség. A kompakt csomópontok közvetlenül a teljes csomópontokra képesek tranzakciókat küldeni. Bár a kompakt csomópontok kevesebb adatot tárolnak, a kompakt csomópontok közötti üzenetek az összes adatot tartalmazzák, amelyet a teljes csomópont üzenetek tesznek, a beillesztési bizonyítékok mellett. Ha egy kompakt csomópont tranzakciót akar küldeni egy teljes csomópontra, akkor csak annyit kell tennie, hogy kihagyja a zárványbizonyítást és a teljes csomópont ekkor is elfogadja a tranzakciót.

Mivel a híd csomópontok több tárolási kapacitást igényelnének, mint a hagyományos teljes csomópontok, (mivel nemcsak a szokásos UTXO készletet tárolják, hanem a beillesztési igazolásokra is szükségük lenne, amelyeket továbbítanak a kompakt csomópontokhoz) ezért felmerül a kérdés, vajon lenne-e elegendő „irgalmas szamaritánus” közvetlen pénzügyi ösztönzés nélkül ezeknek a híd csomópontoknak a működtetéséhez?

A választ egyelőre nem tudjuk még.

Ha tetszenek a posztok és szeretnéd támogatni a munkánkat, akkor itt megteheted:

BTC: 1G9ReJJUXqwwtAUCajzUk4GWm6BDWoKCCf

LTC: LPFXf42zHTgT8BAGmi2dgBKMUCpUJyYVxy

DASH: XuD7Am4yoyDh6tR3GdgWpFFMTnkEQ4KP26

ETH: 0xe984642d5f84e2043a535aba5b6c7ff1691ac15b

MONERO: 358a3bac054b9c91dfaf6f5b3a57cd43d92e4d8056127201a64067e55eff0607


Címkék:

dr. Varsányi Károly ügyvéd, a digitalcash.hu oldal szerkesztője, más oldalak vendégírója, blokklánc jogász. Ha kérdésed van a digitális fizetőeszközök vagy a digitális eszközosztályok (tokenek, etc.) kapcsán, akkor írj neki.
SZÓLJ HOZZÁ

Leave A Comment

Ez az oldal az Akismet szolgáltatást használja a spam csökkentésére. Ismerje meg a hozzászólás adatainak feldolgozását .

Digitalcash.hu