On Lightning Network – demonstracija v trdnosti
Gostujoča objava HodlX Pošljite svojo objavo
Lightning Network se je prvič pojavil v tehnični knjigi, ki sta jo predlagala Joseph Poon in Thaddeus Dryja leta 2015. Ustvarila je ogromne odzive in razprave med Bitcoin skupnostjo in je splošno znana kot druga najpomembnejša knjiga o Bitcoinu za prelomnimi deli Satoshija Nakamota..
Ker se Lightning Network zanaša na protokol v Segregated Witness (SegWit), je v glavnem ostal koncept in se je razvijal samo interno. Vse od vilic Bitcoin SegWit leta 2017 razvoj mreže Lightning nenehno napreduje po pravi poti.
Marca 2018 je Lightning Labs razvil in predstavil začetno testno različico. Kasneje sta zgledu sledila tudi ACINQ in Blockstream, ki sta v omrežju lansirala številne izvedbe. Po podatkih iz 1 ml je trenutno na Lightning Network skupno 8.204 vozlišč in 37.901 plačilnih kanalov, na plačilnih kanalih pa 1.021,37 BTC (približno 5,34 milijona USD), kar dokazuje, da je Lightning Network v zadnjem letu dosegel pomembno rast.
Lightning Network je bil namenjen reševanju razširljivosti Bitcoina. Kot vsi vemo, je bil Bitcoin prvotno ustvarjen kot sistem enakovrednih elektronskih gotovin, da bi zagotovil decentralizirano in 24-urno elektronsko plačilno omrežje, vendar težava Bitcoina s skaliranjem še zdaleč ni zadovoljiva.
Če izračunamo na podlagi povprečno 300 vozlišč na posel, lahko Bitcoin obdela samo 5,6 transakcije na sekundo, medtem ko lahko Visa pri svoji največji zmogljivosti obdela 47.000 tps. Da bi dosegel to zmogljivost, bi moral Bitcoin svojo velikost bloka razširiti na približno 8 GB, vsako leto pa bi dodali 400 TB novih podatkov o blokih, kar je očitno nerealno.
Lightning Network je le ena izmed številnih rešitev, ki jih je blockchain skupnost predlagala za rešitev problema skaliranja Bitcoinov, kot so veliki bloki, DPoS, DAG, ostrina, dvosmerno vezana bočna veriga, komunikacija med verigami itd..
Predlagali so optimizacijo osnov tehnologije porazdeljene knjige, npr. prilagajanje konfiguracijskih parametrov, optimizacija podatkovnih struktur, spreminjanje soglasnih algoritmov, obdelava delitve knjige, optimizacija omrežnih virov itd., vendar rezultat ni bil idealen in po zelo napornem delu je bilo doseženo le zelo omejeno izboljšanje zmogljivosti (povečanje zmogljivosti shranjevanja, povečanje omrežni promet, povečajo zapletenost logike, zmanjšajo decentralizacijo). V primerjavi z Visa Bitcoin še vedno močno zaostaja.
Zdi se, da je Lightning Network najboljša rešitev.
Zaradi zapletenosti pametnih pogodb Bitcoin je težko razumeti tehnična načela Lightning Network. Ekipa OK Research je zato ponovno uporabila jezik Lightning Network with Solidity, da bi razumela tehnologijo, ki je vključena v implementacijo Lightning Network. Spodaj smo za vas povzeli osnovne postopke in načela Lightning Network.
Ključno tehnično načelo strelovodnega omrežja
Osrednja ideja Lightning Network je ustvariti začasne plačilne kanale zunaj verige, ki omogočajo obema stranema, da izvajata neomejene transakcije zunaj verige z več plačilnimi kanali, vendar bo na verigi blokov zabeležena le končna transakcija. Na ta način so transakcije veliko bolj učinkovite in takojšnje, saj jim ni treba čakati na posodobitev bloka. Lightning Network dela na tem, kako preprečiti urejanje transakcij zunaj verige.
1. Lightning Network temelji na treh pomembnih konceptih – virtualni banki, transakcijah s prevzemi obveznosti in plačilnih kanalih.
a) Navidezna banka
Pametna pogodba deluje kot banka. Za primer vzemimo Alice in Boba, virtualna banka je –
- Prilagodljivo – računa sta le dva – Alice in Bob
- Brez zaupanja – odprto, pregledno, ni ga mogoče spreminjati, ponarejati ali preklicati
- Avtonomija uporabnika – Alice in Bob skupaj upravljata sredstva
- Večpodpis – Vsako prerazporeditev sklada morata podpisati Alice in Bob
b) Transakcije s prevzemi
Transakcija s prevzemom obveznosti je, ko se obe strani dogovorita o razdelitvi sredstev in podpišeta. Posodobitev se ne odda takoj v verigo blokov, temveč se shrani v lokalnem omrežju.
Zavezna transakcija izraža resnično voljo obeh strani. Gre za dogovor o razdelitvi sredstev med njimi. Transakcija –
- Ni mogoče spreminjati
- Ni mogoče ponarediti
- Lahko se prepiše
c) Plačilni kanali
Plačilni kanal je, ko obe plačilni stranki uporabljata navidezno banko za hrambo svojih sredstev in prerazporeditev stanja svojih vlog v medsebojnem dogovoru, tako da se lahko prenese vrednost.
Transakcijo s prevzemom delimo na neposredno in posredno povezavo.
RSMC (pogodba o zapadlosti zaporedja, ki jo je mogoče obnoviti) in HTLC (pogodbe z zgoščeno časovno zaporo)
1. RSMC (pogodba o zapadlosti preklicljive sekvence)
Vključuje aktivno stranko, ki aktivno odda transakcije s prevzemi obveznosti virtualni banki za dodelitev sredstev, in prejemnico, ki pasivno prejema dodelitev, ki jo je predložila aktivna stranka.
RSMC preprečuje zlonamerne motive prek mehanizma depozita.
Ko aktivna stranka sproži zahtevo za likvidacijo, bo sklad prejemnika, recimo 100 USD, unovčen in takoj vrnjen na račun prejemnika. Sredstvo aktivne stranke (100 USD) bo zaklenjeno kot varščina. Čas zaklepanja določa parameter freeze_time, nastavljen s pametno pogodbo (freeze_time se nanaša na zaklenjeno sredstvo aktivne stranke, o katerem se lahko pogajata obe strani). Če je prejemnica ugotovila, da je bila transakcija zavez, ki jo zahteva aktivna stranka, preklicana, lahko prejemnica odklene preklicno ključavnico v obdobju zaklepanja in depozit aktivne stranke sprejme kot globo. Nasprotno, po zaključenem obdobju lahko aktivna stranka pridobi svoj depozit.
RSMC je dvojna zaveza za obe nasprotni stranki. Vsaka stranka hrani kopijo zaveze in obe kopiji sta za virtualno banko zavezujoči in veljavni. Dvojna zaveza omogoča podporo dvosmernih plačilnih kanalov, pri čemer se izogne blokadi v plačilnem kanalu zaradi napake z obeh strani.
Skupne lastnosti obeh zavez – številka obveznosti, stanje, čas zamrznitve.
Razlike med obema obveznostma – aktivna in prejemna stranka, podpisnik, varščina in preklic.
Postopek poravnave RSMC lahko razdelimo na tri dele.
Odpiranje kanala
- Alice in Bob ustvarita RSMC št. 1 in vsak od njih prispeva 100 BTC v sklad.
Ustvarjanje transakcije s prevzemom (plačilo)
- Med Alice in Bobom nastane nov obvezen odnos. Ustvarili bodo številko 2 RSMC in si izmenjali podpise za posodobitev lastništva sklada. Upoštevajte, da imata Alice in Bob podpis nasprotne stranke. Ko v transakcijo vnesejo svoj podpis, bo ta začel veljati takoj.
- Obe strani oddajata zasebni ključ za zaklep preklica številke 1 RSMC, ki bo hkrati postal neveljaven. RSMC je mogoče neprestano nadomeščati. Število obveznosti se poveča za eno na zamenjavo.
Zapiranje kanala
- Alice se podpiše na #N RSMC, ki že vključuje Bobov podpis, in virtualni banki predloži zahtevo za poravnavo.
- Kot aktivna stranka je Alice’s 50 BTC zamrznjena kot varščina, medtem ko je Bobova 150 BTC sproščena takoj. Ko so sredstva Alice zamrznjena, če Bob ugotovi, da prerazporeditev sredstev ne uspe, npr. # 1 RSMC ne uspe, lahko kadar koli sproži preklic in zahteva tudi varščino, do katere je upravičeno upravičen.
- Če bo obveznost ostala veljavna v celotnem obdobju zamrznitve sredstev, bo Alice lahko prevzela varščino.
Čeprav RSMC lahko izpolni osnovne potrebe postopka poravnave, ima očitne omejitve. Za plačilo mora biti odprt kanal med obema stranema v RSMC. Za rešitev te omejitve je predlagana pogodba Hash Timelock (HTLC). HTLC omogoča usmerjanje plačil po dveh ali več plačilnih kanalih.
2. Pogodba Hash Timelock (HTLC): reševanje težav z atomskostjo v plačilnih kanalih
HTLC vključuje dva pogoja: Timelock in Hashlock.
- Zaklepanje – zahteva, da prejemnik potrdi prejem v določenem časovnem obdobju (T).
- Hashlock – ena stranka ustvari naključno število (H) in generira svoj hash (R), če drugi del lahko dokaže Hash (R) = H, potem je plačilo veljavno.
V večini primerov HTLC vključuje lastnosti RSMC. Deluje kot most med dvema vedno učinkovitima RSMC. Nov RSMC bo vzpostavljen, če bodo izpolnjeni pogoji za zaklepanje in zaklepanje. V nasprotnem primeru bo namesto tega sprejet prejšnji RSMC.
Postopek plačil HTLC
Od leve proti desni, vzpostavitev zaveze naprej; od desne proti levi in pošiljanje zgoščene številke nazaj za dokončanje plačila.
- Carol ustvari naključno število (R), nato ustvari svoj razpršilni znak (H) in oba pošlje Alice;
- Alice ustanovi HTLC z Bobom. Časovna zapora je nastavljena na 2T. Alice pošlje H Bobu.
- Bob s Carol ustanovi HTLC. Časovna zapora je nastavljena na T (mora biti krajša od 2T). Bob pošlje H Carol.
- Carol pošlje H, zgoščeno R, Bobu v potrditev. Če se številka ujema pred potekom, bo na podlagi HTLC vzpostavljen vedno učinkovit RSMC, hkrati pa bo preklican HTLC, kar bo izpolnilo svojo odgovornost. Če pa se številka R ne ujema ali plačilo poteče, HTLC ne bo uspel in plačilo se bo vrnilo na zadnji RSMC.
- Bob bo številko R od Carol poslal Alice v potrditev. In zgornji postopek potrjevanja se ponovi.
Med tremi stranmi sta končni točki transakcije Alice in Carol, Bob je le trgovec, ki povezuje preostali dve stranki. Pravzaprav lahko Bob vzpostavi plačilno razmerje s katero koli stranjo. Na primer zaveze, ki so jih sklenili Bob in Alice ter Bob in Carol, so lahko različne. Bob lahko Carol plača 9,9 USD, Alice pa 10 USD. 0,1 USD bo nadomestilo za nakazilo za Boba.
3. Tveganja, ki jih poskušata rešiti ti dve pogodbi – varanje in atomskost
- Varanje – kaj pa, če je druga stranka zanič in neprincipijelna?
- V RSMC, od zavez # N-1 do #N, si lahko aktivna stranka koristi, če ne prekliče zaveze # N-1. Zato je treba dodati aktivni osebi dodaten pogoj za oddajanje preklicne ključavnice.
- V HTLC lahko od # N-1 do #N zavez samo prejemnik odda samo zgoščeno številko, da prejme plačilo (enako kot preklic obveznosti # N-1). Če aktivna stranka ne prekliče zaveze # N-1, jo lahko prejemnica še vedno zahteva neposredno prek virtualne banke. Za zaključek HTLC vzpostavi uravnoteženo pravilo »vse ali nič«, da se udeležence izogne goljufanju.
- Tveganja več plačilnih kanalov: atomskost sosednjih kanalov
Na poti plačila aktivna stranka ustvari HTLC prejemniku. Nato prejemnik pošlje zgoščeno vrednost nazaj. Plačila na levi strani je treba opraviti pred plačili na desni strani.
- Za vse posrednike dokončanje plačil za vozlišča na desni strani pomeni prejemanje zgoščene številke v časovni zapori. Zaklep na levi strani mora biti daljši od zaklepanja na desni strani. Torej, posredniki morajo imeti možnost zahtevati enako nadomestilo od vozlišč na desni strani, kar pomeni, da koristi posrednikov običajno prihajajo s strani s krajšo časovno zaporo. Če poskušamo iti nazaj, vozlišča na desni strani nikoli ne dokončajo nobenega plačila in nikoli ne morejo prejeti zgoščene številke. Torej tudi plačilo na levi strani nikoli ne bo dokončano. To je atomskost sosednjih kanalov.
- Na splošno je mehanizem zaupanja zgrajen na avtonomiji obeh strani. V fazi odločanja stranka prejemnica podpiše, preden aktivna stranka to stori. Zato ima aktivna stranka pravico do prvega pregleda, aktivna stranka pa pravico do drugega pregleda. V fazi izvršitve ima aktivna stranka pravico do oddaje, virtualna banka pravico do izvršbe in prejemnica pravico do pregleda v določenem roku.
Blockchain Trilemma and Lightning Network Solution
Bitcoin je elektronski gotovinski sistem peer-to-peer. Je prelomen, ker je ustvaril digitalni plačilni sistem z edinstveno značilnostjo gotovinskega plačilnega sistema – plačilo takoj poravna. Izmenjava vrednosti se izvede takoj z izmenjavo “simbolov vrednosti”, skupaj z informacijami o sredstvih in prenosom upnikovih terjatev in obveznosti. Digitalno plačilo si prizadeva doseči to, ker je digitalno datoteko mogoče podvojiti ali ponarediti, kar sta dve najbolj obravnavani temi pri digitalnih plačilih – potrjevanje in dvojna poraba.
Preverjanje – to težavo je Bitcoin rešil z digitalnim podpisom. Kdor ima zasebni ključ, je lastnik Bitcoina.
Dvojna poraba – kot prikazuje spodnji diagram, ko bo Bob sprejel Aliceino transakcijo, bo moral s preverjanjem celotne knjige potrditi, da transakcija ni podvojena. Preprečevanje dvojne porabe je povzročilo problem razširljivosti.
Kot je zapisal Satoshi Makamoto v Bitcoin – Peer-to-Peer Electronic Cash System:
»Prejemnik plačila mora vedeti, da prejšnji lastniki niso podpisali nobene prejšnje transakcije. Za naše namene je prva transakcija tista, ki šteje, zato nam ni vseeno za poznejše poskuse dvojne porabe. Edini način, da potrdite odsotnost transakcije, je biti seznanjen z vsemi transakcijami. “
Edini način za rešitev dvojne porabe je pridobitev vseh evidenc transakcij, na katerih temelji Satoshijeva razdeljena knjiga. Toda stroški so previsoki.
- Shramba – vsako vozlišče mora shraniti kopijo celotne knjige
- Preverjanje – vsako vozlišče mora potrditi vse transakcije
- Komunikacija – vsako vozlišče mora komunicirati med seboj
- Konsenz – vsako vozlišče mora zagotoviti zgoščevalno moč za konsenz
Za vsako transakcijo bodo potrebni pomnilnik, izračun in komunikacija pozitivno sorazmerni s številom validacijskih vozlišč. Da bi dosegli soglasje med razpršenimi vozlišči, potrebujemo več časa. To je Blockchain trilema, o kateri vedno slišimo, težave pri doseganju decentralizacije, varnosti in razširljivosti hkrati.
V zadnjih letih se pojavljajo rešitve za rešitev problema razširljivosti, kot so večja velikost bloka, omrežje DAG, novi mehanizmi (DPOS, PBFT), ostrenje in stranska veriga. Mehanizmi soglasja, kot sta DPOS in PBFT, žrtvujejo stopnjo decentralizacije zaradi razširljivosti in zmanjšujejo število vozlišč za validacijo.
Trendi predlogi za ostrenje in stranske verige so bolj napredni. Čeprav tudi zmanjšujejo obseg validacijskih vozlišč, da bi povečali učinkovitost soglasja, so vključili idejo “združevanja v skupine”, ki se je izognila pogostim validacijam na določenih vozliščih in zmanjšala manipulacijska tveganja.
Kljub temu je tehnologija ostrenja še vedno v povojih. Še več raziskav in poskusov je treba opraviti pri problemih, kot so naključnost, ravnotežje in odvisnost. Preprosto povedano, absolutne ločljivosti za Blockchain Trilemma še ni. Toda Lightning Network izstopa med rešitvami razširljivosti, ki niso povezane z verigo.
Logika mreže Lightning je preprosta. Ni omejen s „sistemom enakovrednih gotovin“. Namesto tega je uvedel mehanizem za prenos dolga, ki je zelo podoben bančnemu prenosu. Prenos med Alice in Bobom ni več lastništvo sredstva, temveč dolg do virtualne banke. Rešitev za dvojno porabo je poenostavljena – Bob mora zdaj samo še potrditi stanje na računu z virtualno banko, namesto da bi potrdil celotno omrežje o evidenci prenosa Alice. Vendar navidezna banka Lightning Network ne vključuje ideje o centraliziranem posredniku, namesto tega se uporablja pametna pogodba, ki virtualni banki zagotavlja poravnavo dolga.
Kakor koli že, Lightning Network je dosegel zmanjšanje velikega števila transakcij, ki zahtevajo popolno soglasje. Z izgradnjo plačilnega kanala zunaj verige izpolnjuje preverjanje veljavnosti in preprečuje dvojno porabo z neskončnimi skupinami. Ker med skupinami zunaj verige ni odvisnosti, zmanjšuje tveganje, ki ga del omrežja nalaga celotnemu omrežju..
Prednosti Lightning Network
Pet glavnih prednosti strelovodne mreže:
Nizke provizije za transakcije
- Rudarji niso potrebni. Za uporabo plačilnih kanalov med vozlišči se zaračunajo majhne provizije.
Potrditev v realnem času
- Manjše število vozlišč v sodelovanju. Transakcije se običajno zaključijo med stotinami milisekund in nekaj sekundami.
Velika zmogljivost vzporedne obdelave
- Kapaciteta kanala = Bitcoin TPS x 3.600 x 24 x povprečna starost kanala / 4 = 3.952.800
- Kapaciteta vzporedne obdelave = Kapaciteta kanala / zasedenih kanalov na transakcijo = 658.880
* povprečna starost kanala je pridobljeno; kanalov, zasedenih na transakcijo, je privzeto 6 na podlagi šestih stopenj ločitve.
Majhna velikost
- Večina podatkov je shranjenih zunaj verige, s čimer se sprosti prostor za shranjevanje na verigi blokov.
Anonimnost
- Transakcije so zunaj verige in jih je skoraj nemogoče izslediti.
V naslednjih poglavjih se bomo poglobili in raziskali, zakaj bi bil model poravnave dolga učinkovitejši, pa tudi slabosti Lightning Network in nove rešitve.
Ta objava se je prvotno pojavila v mediju. Preberi več.
O OKEx
OKEx je vodilna svetovna borza digitalnih premoženja s sedežem na Malti, ki ponuja celovite storitve trgovanja z digitalnimi sredstvi, vključno s trgovanjem z žetoni, terminskim trgovanjem, večnim trgovanjem s swap in sledenjem indeksov svetovnim trgovcem s tehnologijo veriženja blokov. Trenutno borza ponuja več kot 400 trgovskih parov žetonov in terminskih pogodb, ki uporabnikom omogočajo optimizacijo njihovih strategij.