Algoritmul de consens de închiriere cu dovezi de miză (LPOS) și protocolul Waves-NG

Autor: Guy Brandon, contribuția Waves.

Rețeaua Waves utilizează algoritmul de consens Lease-in-Proof-of-Stake (LPOS), care, combinat cu protocolul Waves-NG, permite o scalabilitate ridicată și un debit de tranzacție al rețelei.


introduce

Rețeaua Waves a fost lansată în 2016 cu un ICO care a strâns 30.000 de Bitcoin, în valoare de aproximativ 16 milioane de dolari. Proiectul își propune să dezvolte un ecosistem blockchain cuprinzător care poate fi utilizat pentru procesele de tranzacții comerciale. Acesta include seturi de instrumente care acoperă diverse cerințe funcționale, inclusiv crearea ușoară de jetoane de monede digitale personalizate, scrierea directă a contractelor inteligente și decriptarea încorporată pentru peer-to. -tranzacții peer exchange-uri centralizate (DEX), modalități sigure și convenabile de a interacționa cu dApps și servicii web furnizate de plug-in-ul de browser Waves Keeper.


Scalabilitate

De la început, Waves a recunoscut că scalabilitatea este o nevoie pentru promovarea și utilizarea majorității proiectelor blockchain și a realizat că tehnologiile relevante trebuie dezvoltate pentru a rezolva limitările blockchain-urilor existente. De exemplu, Bitcoin are o securitate ridicată, dar viteze de tranzacție relativ lente și poate suporta doar aproximativ 7 tranzacții pe secundă (TPS). Prin urmare, Bitcoin nu este suficient de eficient pentru a deveni o monedă globală. Soluțiile bazate pe stratul 2, cum ar fi Bitcoin’s Lightning Network, sunt implementate pentru a atinge acest obiectiv. Waves adoptă o abordare diferită a acestui strat, concentrându-se mai întâi pe scalabilitatea în lanț înainte de a lua în considerare aplicațiile de al doilea strat.


soldul de leasing

Algoritmul de consens original al Waves se bazează pe un protocol simplu de verificare a mizei. Un total de 100 de milioane de jetoane WAVES au fost distribuite după ICO, iar oferta este, de asemenea, fixă: deoarece WAVE este un token „PoW”, nu există inflație. Prin urmare, validatorii de blocuri Waves (falsificatorii, așa cum sunt adesea numiți „mineri” în ecosistemul Waves) primesc taxe de tranzacție de la blocurile pe care le procesează, dar nu recompense suplimentare de bloc.

Sistemul Leaseable Proof-of-Stake (LPoS) a fost lansat complet în mai 2017, iar protocolul permite utilizatorilor cu clientul Waves lite (cei care nu rulează un nod complet) să-și închirieze jetoanele WAVES la nodurile miniere. WAVE-urile închiriate sunt blocate în contul utilizatorului și nu pot fi transferate sau tranzacționate. În plus, jetoanele rămân pe deplin controlate de titularul contului și pot fi anulate în orice moment după expirarea contractului de închiriere. Având în vedere supraîncărcarea tehnică asociată cu rularea unui nod de exploatare și de a fi online 24/7, există relativ puține comunități Waves care rulează noduri de exploatare (o listă de generatoare de blocuri poate fi găsită la https://dev.pywaves.org/generators/ Verificați) .

Jetoanele WAVES închiriate nodurilor miniere pot fi folosite pentru a crește greutatea minerului și, la rândul său, pentru a crește șansele minerului de a descoperi următorul bloc. Un sistem proof-of-stake închiriat îmbunătățește securitatea rețelei în cel puțin două moduri. În primul rând, cu cât sunt mai multe jetoane WAVES folosite pentru a proteja rețeaua, cu atât mai bine, deoarece va îngreuna pentru un atacator să acumuleze numărul de jetoane necesare pentru a efectua un atac de 51%. În al doilea rând, jetoanele WAVES sunt închiriate nodurilor miniere din portofelele rece ale utilizatorilor, dar nodurile în sine (cele care rămân online) pot avea doar un mic sold. Deoarece fondurile închiriate nu sunt transferate către mineri, acest lucru poate reduce semnificativ riscul atacurilor asupra jetoanelor WAVES stocate online.


O nouă metodă de consens: Waves-NG

În decembrie 2017, WAVES a modernizat în continuare rețeaua și a lansat protocolul de consens Waves-NG. Acesta este un nou protocol bazat pe schema Bitcoin NG, inventată de profesorul de IT Cornell Emin Gün Sirer.

Minerii selectați prin protocolul original Bitcoin sunt urmăribili. După ce un bloc este adăugat la blockchain, minerii concurează între ei pentru a găsi o valoare hash validă pentru următorul bloc pe baza stării curente a blockchain-ului. În același timp, tranzacțiile nou generate sunt introduse în mempool, unde vor rămâne în așteptare până când un miner le colectează și le verifică.

În timp ce atât Bitcoin, cât și protocolul Bitcoin NG sunt considerate sisteme Byzantine Fault Tolerant (BFT), acesta din urmă a fost propus în 2015 ca o alternativă scalabilă la un mecanism de lucru diferit. În sistemul Bitcoin-NG, următorul miner este preselectat, care creează un „bloc cheie” gol - acest bloc este adăugat în cele din urmă la blockchain. Blocurile mici sunt numite „microblocuri” (constând din mai multe tranzacții) și sunt adăugate la acest bloc cheie aproape în timp real. Folosind o analogie din viața de zi cu zi, este ca și cum ați adăuga câteva pungi de cumpărături (micro-blocuri) la un coș de cumpărături (bloc de chei) și apoi împingeți coșul complet la casă (adăugat în rețeaua blockchain). Aceasta înseamnă că tranzacțiile pot fi adăugate în blockchain în câteva secunde, iar singura întârziere care poate apărea este cea din rețea. Waves a modernizat mecanismul de verificare a mizei pentru a crea protocolul Waves-NG, care a fost și prima dată când protocolul Bitcoin NG a fost configurat într-un blockchain public deschis.

Îmbunătățiri suplimentare ale ecosistemului sunt realizate prin „Transferuri în masă”. Permite executarea a până la 100 de transferuri într-o singură tranzacție și reduce taxele de procesare. Pe de o parte, pentru a echilibra extinderea capacității și confortul, MassTransfer limitează fiecare MassTransfer la doar 100 txs. Pe de altă parte, limitează și capacitatea de a trimite un număr mare de tranzacții cu costuri reduse în același timp. Dacă este necesară o cantitate mai mare de tranzacții de transfer, mai multe tranzacții de transfer MassTransfers pot fi trimise în succesiune.

Cu alte cuvinte, utilizatorii pot alege pur și simplu MassTransfer ca modalitate alternativă de „trimite tranzacții”, ceea ce le permite să adauge până la 100 de beneficiari într-o singură tranzacție. În plus, adresa destinatarului poate fi furnizată prin JSON sau încărcată folosind un fișier CSV, făcând posibilă efectuarea directă și eficientă de airdrops mari sau plăți săptămânale către utilizatorii care închiriază jetoane WAVES nodurilor de minerit. Combinată cu Waves-NG, caracteristica MassTransfer permite rate de debit extrem de ridicate în rețea.

Pentru a evalua debitul potențial al noului protocol, au fost efectuate o serie de teste de stres pe rețeaua Waves. În octombrie 2018, a fost efectuat un test de stres de mare volum pe MainNet. Testul arată că un protocol public blockchain (nu doar TestNet limitat și controlat) poate suporta mai mult de 6,1 milioane de tranzacții în 24 de ore la o medie de 4.200 txs pe minut sau 71 txs pe secundă, cu un debit maxim de până la sute de tranzacții. .


Rezuma

Lease Proof of Stake (LPOS) permite utilizatorilor obișnuiți fără expertiză tehnică să ajute la protejarea rețelei Waves și să închirieze WAVES la nodurile complete, în timp ce controlează jetoanele WAVES. În același timp, Waves-NG atinge un debit de până la 100 TPS, ceea ce este cu un ordin de mărime mai mare decât multe blockchain-uri. Deoarece nu este nevoie să plătiți recompense financiare minerilor, iar aceștia din urmă nu trebuie să suporte facturi mari de energie electrică și hardware scump, taxele de tranzacție sunt foarte mici.

Pentru Waves, scalabilitatea în lanț a fost întotdeauna o prioritate, dar orice blockchain se poate scala în acest fel datorită spațiului de stocare și lățimii de bandă necesare. Dezvoltatorii Waves cred că soluția actuală poate fi optimizată înainte de a implementa în continuare o soluție scalabilă și capacitatea de a suporta tranzacții de până la 1.000 TPS. Waves explorează în prezent soluții de scalare de nivel al doilea care implică sidechains, care ar putea sprijini procesarea unor volume mari de tranzacții pe lanțuri paralele și, în cele din urmă, ar putea permite protecția pe rețeaua principală Waves.