Pe măsură ce utilizarea Ethereum crește, rularea unui nod complet devine mai solicitantă de resurse și lățime de bandă. Astfel, din ce în ce mai puțini oameni pot rula noduri complete, făcând rețeaua mai puțin descentralizată. În plus, Ethereum se confruntă cu dificultăți de extindere pe măsură ce cererea de tranzacții crește, ceea ce duce la congestionarea rețelei și la taxe mari de gaz.
Înregistrați-vă pentru cele trei schimburi majore din cercul valutar (copiați linkul și deschideți-l în browser)
https://www.communityrebate.com
Clientul apatrid propus de Vitalik în 2017 oferă o potențială soluție la provocările de descentralizare cu care se confruntă Ethereum. Ideea cheie a unui client apatrid este de a reduce cerințele de stocare și lățime de bandă necesare pentru a rula un nod complet, permițând mai multor oameni să participe și descentralizând rețeaua. Acest articol va analiza în profunzime modul în care lucrează clienții apatrizi și potențialele avantaje și dezavantaje ale acestora.
Ce este starea Ethereum?
Pentru a înțelege clienții apatrizi, trebuie mai întâi să înțelegem conceptul de „stat” în Ethereum. Starea Ethereum se referă la starea curentă a tuturor conturilor, contractelor, soldurilor, non-urilor și stocării din lumea Ethereum. Poate fi considerată ca o bază de date care stochează toate informațiile relevante despre rețeaua Ethereum la un moment dat.
Starea este menținută sub forma unui trie Merkle Patricia, care este în esență un arbore Merkle modificat folosit pentru a stoca perechi cheie-valoare. Hash-ul rădăcină al trie rezumă întreaga stare. Cu fiecare bloc nou, starea este actualizată în funcție de tranzacțiile din acel bloc. Noul hash rădăcină de stat este inclus în antetul blocului.
De-a lungul timpului, starea Ethereum a crescut din ce în ce mai mult pe măsură ce s-au adăugat mai multe conturi, contracte și tranzacții. În prezent, dimensiunea statului depășește 1TB, cu zeci de GB adăugați în fiecare an. Această stare în creștere este cauza principală a problemei descentralizării.
De ce creșterea statului provoacă probleme
Creșterea dimensiunii statului Ethereum a condus la câteva probleme cheie:
● Timp lung de sincronizare pentru nodurile noi - Este nevoie de mult timp pentru ca nodurile noi să sincronizeze toate modificările istorice de stare. Acest lucru crește dificultatea de a rula noi noduri complete, împiedicând descentralizarea. Sincronizarea noilor noduri de la blocul geneză la cea mai recentă stare durează în prezent multe zile sau chiar săptămâni, ceea ce pentru hardware-ul de consum reprezintă un obstacol major în lansarea eficientă a noilor noduri și pentru a permite mai multor participanți să se alăture rețelei.
● Cerințe hardware crescute – Statele mai mari necesită mai mult spațiu de stocare, memorie și putere de procesare pentru stocare, accesare și actualizare. Acest lucru face imposibil pentru utilizatorii cu mai puține resurse să ruleze noduri. Rularea unui nod Ethereum complet sincronizat necesită acum cel puțin un SSD cu o capacitate de 1-2TB. Acest lucru nu este la îndemână pentru mulți potențiali operatori de noduri.
● Utilizare crescută a lățimii de bandă – difuzarea unui nou bloc trebuie să includă și starea actualizată, necesitând mai multă lățime de bandă. Acest lucru crește costurile pentru operatorii de noduri. În prezent, statul domină majoritatea difuzărilor în bloc, așa că dimensiunile blocurilor continuă să crească. Mai multă lățime de bandă se traduce în costuri mai mari pentru operatorii de noduri.
● Verificare blocată încetinită – Citirea și actualizarea stărilor mai mari face verificarea blocului mai lentă, limitând debitul tranzacțiilor. Fiecare tranzacție necesită mai multe citiri și scrieri în stocare pentru a actualiza soldurile, non-urile, starea contractului etc. O stare mai mare înseamnă mai multe citiri/scriere pe bloc, reducând numărul de tranzacții care pot fi procesate pe secundă.
● Costul de stocare permanent – Odată ce datele sunt adăugate la stat, acestea trebuie stocate permanent. Acest lucru face ca starea nelimitată să crească. În prezent, nu există niciun mecanism de ștergere proactiv a datelor de stare vechi și neutilizate. Prin urmare, atâta timp cât Ethereum continuă să funcționeze, costurile de reținere de stat vor crește pe termen nelimitat.
Ce este un client apatrid
Clienții apatrizi oferă o modalitate de a valida blocuri noi fără a avea nevoie de acces la starea Ethereum completă. Ei folosesc dovezi criptografice numite „martori” pentru a dovedi validitatea modificărilor de stat într-un bloc fără a necesita date specifice de stat.
Clientul apatrid funcționează după cum urmează:
1. Clientul stochează doar antetul blocului și rădăcina stării, nu datele complete de stare. Antetul blocului conține metadate, cum ar fi hash-ul rădăcină al procesului de stare după procesarea blocului.
2. La validarea unui nou bloc, clientul primește un „martor” împreună cu blocul. Acest martor este un set de dovezi Merkle care demonstrează că o anumită actualizare de stat în tranzacție este validă.
3. Martorul conține dovada Merkle a valorii specifice de stat, care este utilizată pentru procesarea tranzacțiilor. De exemplu, actualizări ale soldurilor conturilor sau stocarea contractelor.
4. Clientul folosește martorul pentru a asigura validitatea ultimei rădăcini de stare cunoscută a perechii de tranzacții. Dovada verifică dacă schimbarea stării se potrivește cu rădăcina anterioară.
5. Dacă este valid, clientul se actualizează la noua rădăcină de stare furnizată în antetul blocului. Această nouă rădăcină de stare va fi folosită pentru a valida următorul bloc.
Folosind martori pentru a verifica starea, mai degrabă decât stocarea completă a stării la nivel local, clienții apatrizi obțin mai multe avantaje:
● Timp de sincronizare foarte rapid – nu este nevoie să sincronizați complet modificările istorice ale stării. Clienții apatrizi se pot sincroniza aproape instantaneu, necesitând doar anteturi de bloc.
● Cerințe reduse de stocare - rădăcina de stat este de numai 32 de octeți. În loc de sute de gigaocteți de stare, sunt necesare doar anteturi de bloc.
● Utilizare mai mică a lățimii de bandă - sunt transmise doar anteturile și martorii blocurilor, mai degrabă decât starea completă. Utilizarea lățimii de bandă este redusă la minimum.
● Verificare rapidă - martorii conțin doar un mic subset de stări relevante. Doar conturile/magazinele actualizate se dovedesc a fi utile.
● Sprijiniți cu ușurință clienții ușoare – clienții ușoare pot verifica cu ușurință dovezile. Modelul light client este foarte compatibil cu validarea fără stat.
Provocările clienților apatrizi
În timp ce clienții apatrizi aduc unele beneficii semnificative, există și câteva provocări tehnice semnificative:
● Mărimea martorilor—martorii pot fi prea mari pentru a fi transmisi eficient. Dacă sunt utilizate dovezi Merkle complete, acestea pot depăși limita de dimensiune a blocului.
● Crearea de martori - Generarea de martori optimi este complexă pentru cei care propun blocuri. Ofertantul trebuie să adune dovezile corecte pentru a verifica fiecare tranzacție.
● Fără stimulente pentru martori – Nu există nicio recompensă directă pentru furnizarea de martori. Spre deosebire de minerit, nu există stimulente încorporate pentru crearea de martori.
● Date temporare — martorii dovedesc starea la un anumit moment în timp și trebuie regenerate. Martorii nu pot fi reutilizați în timpul dezvoltării statului.
● Stocare de stat – cineva trebuie să mențină starea completă pentru a genera martori. Validarea fără stat se bazează pe generarea de martori cu stare.
● Aplicații complexe - Unele contracte se pot baza pe subseturi mai mari de state, făcând martorul umflat. De exemplu, un contract care actualizează multe sloturi de stocare per tranzacție.
solutii posibile
Cercetătorii au propus diverse soluții pentru a aborda aceste provocări:
● Arborele Verkle – o structură de date specială folosită pentru a reduce dimensiunea martorului. Arborii Verkle folosesc angajamente criptografice concise pentru a minimiza dimensiunea probei.
● Cache pentru martori - Propunetorii pot păstra martorii recent pentru reutilizare. Memorarea în cache poate fi utilă din nou în martorul că costul de creare poate fi amortizat.
● Stimulente de protocol - oferă un mecanism de recompensă pentru martorii utili. Noile structuri de stimulare pot compensa crearea de martori.
● Rădăcini în stare intermediară – Urmăriți rădăcinile în timp pentru a evita regenerarea probelor. Menținerea unor părți ale rădăcinii permite reutilizarea fragmentelor martor.
● Condiție Chirie – Necesită plata pentru a menține starea în timp, tăierea stării nefolosite. Rent impune curățarea spațiului de stocare învechit pentru a limita dimensiunea dovezilor.
● Model de martor partiționat – procesarea stării împărțite între propuneri și validatori. Un număr de noduri de propuneri dedicate generează martori.
Există compromisuri între aceste abordări și sunt necesare cercetări suplimentare pentru a descoperi implementarea optimă. Din fericire, inovația rapidă în criptografia fără cunoștințe poate duce la noi posibilități pentru clienți eficienți apatrizi.
impact potențial
Dacă obstacolele tehnice pot fi depășite, clienții apatrizi ar putea stimula semnificativ creșterea Ethereum:
● Sincronizare și verificare mai rapidă pentru a susține un debit mai mare al tranzacțiilor. Verificarea fără stat va accelera foarte mult procesarea blocurilor.
● Reducerea resurselor necesare rulării nodurilor și îmbunătățirea descentralizării. Laptopurile și pasionații pot rula în mod realist noduri complete.
● Suport mai bun pentru clienții ușori, cum ar fi portofelele mobile. Dovada de stare este foarte compatibilă cu modelul de client light.
● Introduceți fragmentarea mai ușor și efectuați verificarea fără stat între fragmente. Tranzacțiile încrucișate pot profita de dovezi de stat eficiente.
● Posibilitatea de a șterge și de a elimina datele vechi de stare care nu mai sunt utile. Creșterea statului poate fi gestionată activ, mai degrabă decât să crească la infinit.
● Capacitatea operatorilor de noduri de a personaliza mai flexibil starea în funcție de nevoi. Nodurile pot personaliza politicile de păstrare a stării pe baza cazurilor de utilizare.
● Trecerea la un model în care calculul și lățimea de bandă sunt mai importante decât stocarea. Arhitectura se schimbă către modele mai prietenoase cu cloud-ul.
Există, de asemenea, riscuri potențiale, cum ar fi vulnerabilitatea crescută la atacurile DDoS și faptul că doar câțiva operatori de noduri stochează în mod fiabil istoricul blockchain-ului. Cu toate acestea, dovezile criptografice pot reduce aceste riscuri. În general, clienții apatrizi sunt una dintre cele mai promițătoare modalități de a depăși limitările actuale ale Ethereum.
în concluzie
Pe măsură ce adoptarea crește, dimensiunea în creștere a statului Ethereum reprezintă o provocare pentru descentralizare. Clienții apatrizi oferă o soluție permițând nodurilor să verifice tranzacțiile fără a necesita starea blockchain completă. Acest lucru ar putea în cele din urmă să permită telefoanelor mobile să ruleze noduri Ethereum, crescând foarte mult descentralizarea. #DeFiChallenge
