O munjevitoj mreži – demonstracija u čvrstoći
Gostujuća pošta HodlX Pošaljite svoj post
Lightning Network prvi se put pojavio u tehničkoj knjizi koju su predložili Joseph Poon i Thaddeus Dryja 2015. godine. Potaknuo je goleme odgovore i rasprave među Bitcoin zajednicom i široko se smatra drugom najvažnijem bijelom knjigom o bitcoinima iza revolucionarnog rada Satoshi Nakamota.
Kako se Lightning Network oslanja na protokol odvojenog svjedoka (SegWit), to je uglavnom ostao koncept i razvijao se samo interno. Još od Bitcoin SegWit vilice 2017. godine, razvoj Lightning Network-a neprestano se kreće naprijed pravim putem.
U ožujku 2018. Lightning Labs razvili su i pokrenuli početnu testnu verziju. Kasnije su ACINQ i Blockstream slijedili njihov primjer i pokrenuli brojne implementacije na mreži. Prema podacima od 1 ml, na Lightning Network trenutno postoji ukupno 8.204 čvora i 37.901 kanala plaćanja, s 1.021,37 BTC (približno 5,34 milijuna USD) na kanalima plaćanja, što dokazuje da je Lightning Network ostvario značajan rast u posljednjih godinu dana.
Lightning Network imao je za cilj rješavanje skalabilnosti Bitcoina. Kao što svi znamo, Bitcoin je u početku stvoren kao peer-to-peer elektronički sustav gotovine kako bi pružio decentraliziranu mrežu elektroničkog plaćanja 24/7, no problem skaliranja Bitcoina daleko je od zadovoljavajućeg.
Ako izračunamo na temelju prosječno 300 čvorova po trgovini, Bitcoin je sposoban rukovati samo 5,6 transakcija u sekundi, dok Visa može rukovati 47 000 tps u svom najvećem kapacitetu. Da bi postigao taj kapacitet, Bitcoin bi trebao proširiti veličinu bloka na oko 8 GB, s dodavanjem novih 400 TB podataka svake godine, što je očito nerealno.
Lightning Network samo je jedno od mnogih rješenja koje je blockchain zajednica predložila za rješavanje problema skaliranja Bitcoina, kao što su veliki blokovi, DPoS, DAG, oštrina, dvosmjerno vezani bočni lanac, međusobna komunikacija itd..
Predložili su optimizaciju osnova tehnologije raspodijeljene knjige, na pr. prilagođavanje parametara konfiguracije, optimizacija struktura podataka, izmjena algoritama konsenzusa, obrada podjele knjige, optimizacija mrežnih resursa itd., ali rezultat nije bio idealan i postignuto je samo vrlo ograničeno poboljšanje performansi nakon napornog rada (povećanje kapaciteta za pohranu, povećanje mrežni promet, povećati složenost logike, smanjiti decentralizaciju). U usporedbi s Visom, Bitcoin još uvijek značajno zaostaje.
Čini se da je Lightning Network konačno rješenje.
Zbog složenosti bitcoin pametnih ugovora teško je razumjeti tehničke principe Lightning Network-a. Tim za istraživanje OK-a stoga je ponovno implementirao Lightning Network s Solidity jezikom kako bi razumio tehnologiju koja je uključena u implementaciju Lightning Network-a. U nastavku smo saželi osnovne postupke i principe Lightning Network-a.
Ključni tehnički princip mreže munje
Osnovna ideja Lightning Networka je stvoriti privremene izvanlančane kanale plaćanja koji omogućavaju objema stranama da obavljaju neograničene transakcije izvan lanca s više kanala plaćanja, ali samo će konačna transakcija biti zabilježena na blockchainu. Na taj su način transakcije mnogo učinkovitije i trenutnije, jer ne trebaju čekati da se blok ažurira. Lightning Network radi na tome kako spriječiti da se transakcije izvan lanca uređuju.
1. Lightning Network izgrađen je na tri važna koncepta – virtualnoj banci, transakcijama obveza i kanalima plaćanja.
a) Virtualna banka
Pametni ugovor djeluje poput banke. Uzmimo za primjer Alice i Boba, virtualna banka je –
- Skalabilno – postoje samo dva računa – Alicein i Bob-ov
- Nepouzdan – otvoren, transparentan, ne može se mijenjati, krivotvoriti ili otkazati
- Autonomija korisnika – Alice i Bob upravljaju imovinom zajedno
- Više potpisa – Svaku preraspodjelu fonda moraju potpisati i Alice i Bob
b) Obaveze transakcije
Obvezna transakcija je kada obje strane postignu dogovor o raspodjeli sredstava i potpišu. Ažuriranje se ne emitira odmah na blockchain, već se pohranjuje na lokalnoj mreži.
Obvezna transakcija izražava istinsku volju obje strane. To je sporazum o raspodjeli sredstava između njih. Transakcija –
- Ne može se mijenjati
- Ne može se krivotvoriti
- Može se prebrisati
c) Kanali plaćanja
Kanal za plaćanje je kada obje strane za plaćanje koriste virtualnu banku za deponiranje svoje imovine i preraspodjelu stanja njihovih depozita uzajamnim dogovorom, tako da se vrijednost može prenijeti.
Obvezna transakcija dijeli se na izravnu i neizravnu vezu.
RSMC (ugovor o dospijeću povratne sekvence) i HTLC (ugovori s raspršenim vremenskim ograničenjem)
1. RSMC (ugovor o dospijeću opozive sekvence)
Uključuje aktivnu stranu koja aktivno predaje transakcije obveza virtualnoj banci radi raspodjele sredstava i stranku primateljicu koja pasivno prima alokaciju koju je predala aktivna strana.
RSMC sprječava zlonamjerne motive putem mehanizma pologa povjerenja.
Kad aktivna stranka pokrene zahtjev za likvidaciju, fond stranke primateljice, recimo 100 USD, bit će unovčen i odmah vraćen na račun stranke primateljice. Imovina aktivne strane (100 USD) zaključat će se kao sigurnosni polog. Vrijeme zaključavanja određuje parametar freeze_time postavljen pametnim ugovorom (freeze_time se odnosi na vrijeme aktivne strane koja se zaključava, a o čemu mogu ugovoriti obje strane). Ako je stranka primateljica saznala da je transakcija obveze koju je zahtijevala aktivna stranka opozvana, stranka primateljica može otključati opozivu bravu unutar razdoblja zaključavanja i uzeti depozit povjerenja aktivne strane kao novčanu kaznu. Naprotiv, nakon razdoblja zaključavanja, aktivna strana može preuzeti svoj depozit.
RSMC je dvostruko opredjeljenje za obje ugovorne strane. Svaka strana zadržava kopiju obveze i obje su kopije obvezujuće i na snazi za virtualnu banku. Dvostruka obveza omogućuje podršku dvosmjernih kanala plaćanja, izbjegavajući blokadu u kanalu plaćanja zbog pogreške s obje strane.
Zajednička svojstva dviju obveza – broj obveze, ravnoteža, vrijeme zamrzavanja.
Razlike između dviju obveza – aktivne stranke i stranke primateljice, potpisnice, sigurnosni depoziti i blokada opoziva.
Proces nagodbe RSMC-a može se podijeliti u tri dijela.
Otvaranje kanala
- Alice i Bob stvaraju # 1 RSMC i svaki od njih unosi 100 BTC u fond.
Stvaranje transakcije obveze (plaćanje)
- Između Alice i Boba stvara se nova obavezna veza. Oni će stvoriti broj 2 RSMC i razmijeniti potpise kako bi ažurirali vlasništvo nad fondom. Imajte na umu da Alice i Bob imaju potpis druge ugovorne strane. Jednom kada unesu vlastiti potpis u transakciju, on će odmah stupiti na snagu.
- Obje strane emitiraju privatni ključ za blokadu opoziva # 1 RSMC, koji će istovremeno postati nevaljan. RSMC se može kontinuirano zamjenjivati. Broj obveza povećava se za jedan po zamjeni.
Zatvaranje kanala
- Alice se potpisuje na #N RSMC, koji već uključuje Bobov potpis, i podnosi zahtjev za namiru virtualnoj banci.
- Kao aktivna strana, Alicein 50 BTC zamrznut je kao polog, dok je Bobov 150 BTC pušten odmah. Kad su sredstva Alice zamrznuta, ako Bob utvrdi da preusmjeravanje sredstava ne uspije, na pr. # 1 RSMC ne uspije, on može pokrenuti opoziv u bilo kojem trenutku i zatražiti i sigurnosni polog na koji ima legitimno pravo.
- Ako obveza ostane na snazi tijekom razdoblja zamrzavanja sredstava, Alice će moći povratiti sigurnosni polog.
Iako RSMC može zadovoljiti osnovne potrebe procesa nagodbe, on ima očita ograničenja. Za plaćanje mora biti otvoren kanal između obje strane u RSMC-u. Da bi se riješilo ovo ograničenje, predlaže se ugovor o vremenskom ograničenju (HLC). HTLC omogućuje plaćanje usmjerivim putem dva ili više kanala plaćanja.
2. Hash Timelock ugovor (HTLC): rješavanje problema s atomskošću u kanalima plaćanja
Dva su uvjeta uključena u HTLC: Timelock i Hashlock.
- Timelock – zahtijeva da primatelj potvrdi primitak u određenom vremenskom razdoblju (T).
- Hashlock – jedna strana generira slučajni broj (H) i generira svoj hash (R), ako je drugi dio u stanju dokazati Hash (R) = H, tada je plaćanje valjano.
U većini slučajeva HTLC uključuje svojstva RSMC. Djeluje kao most između dva uvijek učinkovita RSMC-a. Uspostavit će se novi RSMC ako su zadovoljeni uvjeti vremenske blokade i hashlock-a. U suprotnom će se umjesto njega usvojiti prethodni RSMC.
Postupak HTLC plaćanja
S lijeva na desno, uspostavljanje obveze prema naprijed; s desna na lijevo, vraćajući raspršeni broj unatrag za dovršetak plaćanja.
- Carol generira slučajni broj (R), zatim generira svoj hash (H) i oboje šalje Alice;
- Alice postavlja HTLC s Bobom. Vremenska blokada postavljena je na 2T. Alice šalje H Bobu.
- Bob postavlja HTLC s Carol. Zaključavanje vremena postavljeno je na T (mora biti kraće od 2T). Bob šalje H Carol.
- Carol šalje H, raspršeno R, Bobu na provjeru. Ako se broj podudara prije isteka, na temelju HTLC-a uspostavit će se uvijek učinkovit RSMC, a HTLC će se istovremeno poništiti, ispunjavajući svoju odgovornost. Ali ako se broj R ne podudara ili uplata istekne, HTLC neće uspjeti i plaćanje će se vratiti na posljednji RSMC.
- Bob će poslati broj R od Carol do Alice na provjeru. I gornji postupak provjere valjanosti se ponavlja.
Među tri strane, Alice i Carol krajnje su točke transakcije, Bob je samo trgovac koji povezuje ostale dvije strane. Zapravo, Bob može uspostaviti odnos plaćanja s bilo kojom stranom. Na primjer, obveze uspostavljene između Boba i Alice te Boba i Carol mogu biti različite. Bob može platiti Carol 9,9 dolara, a Alice naplatiti 10 dolara. 0,1 dolara bit će naknada za transfer za Boba.
3. Rizici koje dvije vrste ugovora pokušavaju riješiti – varanje i atomskost
- Varanje – što ako je druga strana nevaljala i neprincipijelna?
- U RSMC-u, od # N-1 do #N obveza, aktivna strana može imati koristi ako ne opozove # N-1 obvezu. Stoga se mora dodati dodatni uvjet za aktivnu stranu za emitiranje zaključavanja opoziva.
- U HTLC-u, od obveza # N-1 do #N, samo primatelj može emitirati samo raspršeni broj za primanje uplate (isto kao i opoziv obveze # N-1). Ako aktivna strana ne opozove obvezu # N-1, primatelj je još uvijek može izravno zatražiti putem virtualne banke. Da zaključimo, HTLC uspostavlja uravnoteženo pravilo sve ili ništa kako bi se izbjeglo da sudionici varaju.
- Rizici višestrukih kanala plaćanja: atomskost susjednih kanala
U putu plaćanja aktivna strana primatelju stvara HTLC. Zatim, strana primateljica vraća hashiranu vrijednost unatrag. Isplate s lijeve strane moraju se izvršiti prije onih s desne strane.
- Za sve posrednike dovršavanje plaćanja za čvorove s desne strane znači primanje raspršenog broja unutar vremenske blokade. A zasun s lijeve strane mora biti duži od zaslona s desne strane. Dakle, posrednici moraju biti u mogućnosti zahtijevati jednaku naknadu od čvorova s desne strane, što implicira da prednosti posrednika obično dolaze sa strane s kraćim vremenskim ograničenjem. Ako pokušamo ići unatrag, čvorovi s desne strane nikada ne izvršavaju nikakvu uplatu i nikada ne mogu primiti raspršeni broj. Dakle, plaćanje s lijeve strane također nikada neće biti izvršeno. To je atomskost susjednih kanala.
- U cjelini, mehanizam povjerenja izgrađen je na vrhu autonomije obje strane. U fazi donošenja odluke stranka koja prima potpis potpisuje prije nego što to učini aktivna stranka. Stoga aktivna strana ima pravo na prvu provjeru, a aktivna strana ima pravo na drugu provjeru. U fazi izvršenja aktivna strana ima pravo podnošenja zahtjeva, virtualna banka pravo izvršenja, a primateljica prava pregleda u određenom vremenskom roku.
Blockchain trilema i mrežno rješenje za munje
Bitcoin je peer-to-peer elektronički sustav gotovine. Prijeloman je jer je stvorio digitalni sustav plaćanja s jedinstvenom značajkom gotovinskog sustava plaćanja – trenutno podmirivanje plaćanja. Razmjena vrijednosti vrši se odmah s razmjenom “simbola vrijednosti”, zajedno s informacijama o imovini i prijenosom potraživanja i obveza vjerovnika. Digitalno plaćanje bori se da to postigne jer se digitalna datoteka može duplicirati ili krivotvoriti, što su dva pitanja o kojima se najviše raspravlja u digitalnom plaćanju – provjera valjanosti i dvostruka potrošnja.
Provjera valjanosti – taj je problem Bitcoin riješio digitalnim potpisom. Tko je vlasnik privatnog ključa, posjeduje i Bitcoin.
Dvostruka potrošnja – kako je prikazano na donjem dijagramu, kad Bob prihvati Aliceinu transakciju, morat će potvrditi da se transakcija ne duplicira provjerom cijele knjige. Sprječavanje dvostruke potrošnje stvorilo je problem skalabilnosti.
Kao što je napisao Satoshi Makamoto u Bitcoin – Peer-to-Peer elektroničkom sustavu gotovine:
“Potreban nam je način da primatelj uplate sazna da prethodni vlasnici nisu potpisali nikakve ranije transakcije. U naše svrhe najranija je ona transakcija koja se broji, pa nas nije briga za kasnije pokušaje dvostruke potrošnje. Jedini način da potvrdite izostanak transakcije je da budete svjesni svih transakcija. “
Jedini način za rješavanje dvostruke potrošnje je stjecanje svih zapisa o transakcijama, na kojima se temelji Satoshi-jeva distribuirana knjiga. Ali trošak je prevelik.
- Pohrana – svaki čvor mora pohraniti kopiju cijele knjige
- Provjera valjanosti – svaki čvor mora provjeriti valjanost svih transakcija
- Komunikacija – svaki čvor mora međusobno komunicirati
- Konsenzus – svaki čvor mora osigurati hash snagu za konsenzus
Za svaku će transakciju potrebno pohranjivanje, izračunavanje i komunikacija biti pozitivno proporcionalni broju čvorova za provjeru. Da bi se postigao konsenzus između raštrkanih čvorova, potrebno je više vremena. Ovo je Blockchain trilema o kojoj uvijek čujemo, poteškoće u postizanju decentralizacije, sigurnosti i skalabilnosti u isto vrijeme.
Posljednjih se godina pojavljuju rješenja za rješavanje problema skalabilnosti, poput veće veličine bloka, DAG mreže, novih mehanizama (DPOS, PBFT), oštrenja i bočnog lanca. Konsenzusni mehanizmi poput DPOS-a i PBFT-a žrtvuju stupanj decentralizacije radi skalabilnosti, smanjujući broj čvorova za provjeru valjanosti.
Trendovi osipanja i sidechain prijedlozi su napredniji. Iako također smanjuju raspon čvorova za provjeru kako bi povećali učinkovitost konsenzusa, integrirali su ideju “grupiranja”, čime se izbjeglo da se validacija često vrši na određenim čvorovima, smanjujući rizike manipulacije.
Ipak, tehnologija oštrenja još je u povojima. Još treba istražiti i eksperimentirati na problemima poput slučajnosti, ravnoteže i ovisnosti. Jednostavno rečeno, još uvijek nema apsolutne rezolucije za Blockchain trilemmu. No Lightning Network se ističe među izvanlančanim rješenjima za skalabilnost.
Logika mreže Lightning je jednostavna. Nije ograničen “peer-to-peer novčanim sustavom”. Umjesto toga, uveo je mehanizam za prijenos duga koji je vrlo sličan bankovnom prijenosu. Prijenos između Alice i Boba više nije vlasništvo nad imovinom, već dug prema virtualnoj banci. Rješenje za dvostruku potrošnju pojednostavljeno je – Bob sada mora potvrditi virtualnu banku na stanju računa, umjesto da potvrdi cijelu mrežu na Aliceinom zapisu prijenosa. Međutim, virtualna banka Lightning Network-a ne uključuje ideju centraliziranog posrednika, umjesto toga koristi se pametni ugovor koji jamči namiru duga od strane virtualne banke.
U svakom slučaju, Lightning Network postigao je smanjenje značajnog broja transakcija koje zahtijevaju puni konsenzus. Izgrađivanjem kanala plaćanja izvan lanca, on ispunjava provjeru valjanosti i prevenciju dvostruke potrošnje s beskonačnim skupinama. Kako ne postoji ovisnost između skupina izvan lanca, to minimalizira rizik koji dio mreže nameće cijeloj mreži.
Prednosti mreže munje
Pet glavnih prednosti gromobranske mreže:
Niske naknade za transakcije
- Rudari nisu potrebni. Male naknade naplaćuju se za korištenje kanala plaćanja između čvorova.
Potvrda u stvarnom vremenu
- Manji broj čvorova u sudjelovanju. Transakcije se obično dovršavaju između stotina milisekundi i nekoliko sekundi.
Veliki paralelni kapacitet obrade
- Kapacitet kanala = Bitcoin TPS x 3.600 x 24 x Prosječna dob kanala / 4 = 3.952.800
- Kapacitet paralelne obrade = Kapacitet kanala / Zauzeti kanali po transakciji = 658.880
* prosječna starost kanala je izvor; kanali zauzeti po transakciji zadani su kao 6 na temelju šest stupnjeva razdvajanja.
Mala veličina
- Većina podataka pohranjuje se izvan lanca, oslobađajući prostor za pohranu na blockchainu.
Anonimnost
- Transakcije su izvan lanca i gotovo ih je nemoguće pratiti.
U sljedećim poglavljima zaronit ćemo dublje i istražiti zašto bi model podmirivanja duga bio učinkovitiji, kao i nedostatke Lightning Network-a i nova rješenja.
Ovaj se post izvorno pojavio na Mediumu. Čitaj više.
O OKExu
OKEx je vodeća svjetska burza digitalne imovine sa sjedištem na Malti, koja nudi sveobuhvatne usluge trgovanja digitalnom imovinom, uključujući trgovanje tokenima, terminsku trgovinu, vječno swap trgovanje i tracker za indekse globalnim trgovcima s blockchain tehnologijom. Trenutno burza nudi više od 400 parova za trgovanje tokenima i terminskim ugovorima što korisnicima omogućava optimizaciju njihovih strategija.