ZK-Rollups: soluție de expansiune de nivel 2 bazată pe dovezi de zero cunoștințe

Spre deosebire de proba de fraudă [1], Zk-Rollup folosește dovada de valabilitate pentru a asigura validitatea tranzacției. că nu există nicio problemă cu tranzacția și apoi transmiteți starea actualizată, dovada tranzacției și datele tranzacției comprimate la lanțul principal pentru a asigura valabilitatea datelor corespunzătoare din lanț și securitatea fondurilor.

Securitatea Zk-Rollup se bazează pe principii criptografice, iar unul dintre principalele sale avantaje este că nu necesită o perioadă de provocare [2].

În prezent, Zk-Rollup are capacități generale slabe de calcul Majoritatea versiunilor online pot implementa doar transferuri și scenarii de aplicații specifice, ceea ce nu este prietenos cu dezvoltatorii. Acum, unele dintre cele mai recente soluții Zk-Rollup studiază soluții de extindere L2 care sunt compatibile cu EVM generală. Dacă reușesc, va fi de mare importanță.

Zk-Rollup este mai în concordanță cu stilul lumii cripto, folosind principii criptografice pentru a dovedi corectitudinea tranzacțiilor în loc să aștepte ca alții să raporteze tranzacțiile incorecte.

Dovada de cunoștințe zero

Zero-knowledge proof este un concept criptografic, cunoscut și sub numele de zero-leakage proof, și constă dintr-un doveditor și un verificator.

Proverul trebuie să ruleze pe hardware specializat și nu are încredere, ceea ce înseamnă că securitatea sistemului nu trebuie să presupună că probatorul este demn de încredere sau că hardware-ul pe care rulează este de încredere, deoarece matematic nu există Cum să falsificați fals. dovezi de zero cunoștințe.

Verificatorul nu necesită hardware specializat și poate fi rulat pe orice nod. În termeni profani, probatorul creează o dovadă din intrarea sistemului, iar verificatorul verifică pentru a confirma că probatorul a încărcat rezultatul real al calculului fără a fi nevoie să recalculeze. din nou.

Ca să spun filozofic, dacă vreau să dovedesc că un anumit cont Bitcoin este al meu, vreau să demonstrez că cunosc cheia privată a acestui cont, dar nu pot spune altora cheia privată. (semnătură cheie privată, verificare cheie publică)

zk-SNARK

Ceea ce este mai des folosit în blockchain este zk-SNARK, care este o dovadă specială de zero cunoștințe care necesită non-interactivitate (exemplul anterior de dovadă de zero cunoștințe care verifică că Bitcoin nu a fost non-interactiv și a trebuit să fie schimbat în non-interactiv Cu alte cuvinte, doar emit o tranzacție de transfer și transfer monedele din cont într-un alt cont, astfel încât toate nodurile să poată verifica că acest cont Bitcoin este al meu blockchain, toate nodurile pot verifica, nu este nevoie să interacționeze cu probatorul, acest tip de verificator se numește Public Verifier) ​​și simplitate (sunt necesari doar câteva sute de octeți, chiar dacă intrarea inițială este mare, generarea dovezii este foarte usor mic).​

Dezavantajul este că volumul de muncă al dovatorului pentru a genera dovada este foarte mare. Este nevoie de câteva secunde pentru a iniția o tranzacție de transfer anonimă la transferul de bani și este nevoie de doar câteva milisecunde pentru a verifica legitimitatea tranzacției.

zk-SNARK necesită setări de încredere, care necesită un set de parametri publici partajați de toți membrii să fie generați aleatoriu în timpul inițializării pentru a evita acest risc, procesul de inițializare a zk-SNARK implică mai multe părți atâta timp cât oricare dintre ele distruge sursa aleatoare utilizată în timpul inițializării, sistemul este în siguranță.

Aplicarea zk-SNARK în blockchain

    

O aplicație reprezentativă este Zcash, iar cealaltă este Filecoin. Aceste două proiecte nu sunt folosite aici doar pentru a ilustra scenariile de aplicare ale zk-SNARK.

Zcash folosește zk-SNARK pentru a ascunde informațiile despre tranzacție, identitatea ambelor părți și suma tranzacției Zcash poate verifica legalitatea tranzacției fără a cunoaște sender.address, receive.address, iuput.value, out.value. Acest lucru este foarte diferit de Bitcoin. Fiecare tranzacție în Bitcoin trebuie să explice sursa monedei și tranzacția anterioară din care a venit moneda . Pentru Zcash, trebuie doar demonstrat matematic că moneda pe care o cheltuiți este o monedă legală care există în sistemul actual. Nu este nevoie să specificați care este, așa că nu există nicio modalitate de a urmări sursa monedei.

Filecoin este cea mai mare rețea zk-SNARK implementată până în prezent, generând milioane de dovezi fără cunoștințe în fiecare zi. Minerii Filecoin obțin recompense de bloc prin stocarea datelor și trebuie să demonstreze în mod regulat că stochează datele promise Acești mineri sunt doveditorii în protocolul zk-SNARK și trebuie să ofere două tipuri de dovezi, dovada de replicare[3] și spațiu-timp. dovada[ 4 ].

Dovada de replicare are loc o singură dată Când utilizatorul și furnizorul de stocare ajung inițial la o tranzacție de stocare, furnizorul de stocare trebuie să demonstreze că stochează într-adevăr datele utilizatorului continuă să stocheze de-a lungul timpului, pentru datele originale, furnizorul de stocare trebuie să angajeze fișierul token corespunzător atunci când este de acord să stocheze date pentru client pentru prima dată va fi pedepsit și poate pierde jetonul Fișier gajat.

Avantajul tehnologiei zk-SNARK este că dovada generată este foarte scurtă, economisește lățimea de bandă a rețelei și are o viteză de verificare rapidă nu este utilizat pentru datele utilizatorului. Până în prezent, aproape toate circuitele zk-SNARK sunt circuite integrate specifice aplicației, care sunt tehnologii cu dovezi zero, special personalizate în funcție de diferitele aplicații, iar tehnologia zk-SNARK este completă nu sunt încă universale.

Proiect reprezentativ ZK-Rollup

ZK Rollup are două proiecte reprezentative, zkSync și STARKWARE.

zkSync

zkSync folosește algoritmul zk-SNARK cu zero cunoștințe, iar securitatea se bazează pe setările inițiale de încredere (un număr aleatoriu este formulat de unii participanți, inclusiv fondatorul Ethereum, V God, care necesită ca cel puțin un participant să fie sincer, apoi acest sistem poate fi dovedit a fi sigur ).

În ceea ce privește compatibilitatea EVM, zkSync are un compilator care poate converti contractele inteligente în coduri operaționale acceptate de zkEVM pentru a obține compatibilitatea Solidity.​

În ceea ce privește disponibilitatea datelor, zkSync oferă două soluții de disponibilitate a datelor. Utilizatorii pot alege să încarce datele în lanț (adică să le stocheze în lanțul L1 sau să le stocheze pe Ethereum pentru a obține o securitate mai mare. În același timp, trebuie să le păstreze. plătiți mai mult decât în ​​lanț) (taxe mai mici pentru gaz), utilizatorii pot alege, de asemenea, să stocheze datele în afara lanțului (care poate extinde capacitatea într-o măsură mai mare și poate economisi în continuare taxele de gaz, dar va sacrifica o oarecare descentralizare și securitate). Cu alte cuvinte, zkSync acceptă atât modurile de stocare a datelor în lanț, cât și în afara lanțului. Unii oameni cred că datele în afara lanțului nu sunt L2 în adevăratul sens, deoarece L2 trebuie să asigure aceeași securitate ca și L1 -lanț, disponibilitatea este aceeași cu L1. Dacă este stocat la un furnizor de servicii cloud off-chain, este contrar conceptului de descentralizare, cum ar fi IPFS nicio modalitate de a garanta disponibilitatea datelor (există în IPFS și este diferit dacă există pe Ethereum În blockchain-uri precum Ethereum și Bitcoin, datele stocate pe ele nu se vor pierde, dar IPFS nu garantează nemodificabilitatea). .

StarkWare

În prezent, cele mai populare două sisteme de generare a dovezilor zero-cunoștințe de pe piață sunt zk-SNARK și zk-STARK.

zk-Sync folosește zk-SNARK, iar StarkWare este o tehnologie criptografică bazată pe dovada zk-STARK. zk-STARK Această tehnologie a fost inventată de echipa StarkWare. Poate fi considerată o versiune actualizată a tehnologiei zk-SNARK, care poate face blockchain-ul mai scalabil, folosind acest algoritm Datele de tranzacție și stocarea unor date sunt transferate în afara lanțului pentru soluție. verifica autenticitatea acestuia. STARK are trei avantaje principale în comparație cu SNARK utilizat de zk-Sync. Primul avantaj este transparența, ceea ce înseamnă că acest sistem nu necesită setări de încredere pentru a funcționa, în timp ce SNARK proof necesită setări de încredere inițiale Dacă participanții la setarea inițială sunt necinstiți, se pot crea certificate false și tranzacții false, în timp ce zk-STARK nu necesită o setare de încredere externă valoarea pe care o are avantajul este neclară. (Profesorul Xiao consideră că acest avantaj este puțin important)

Al doilea avantaj este scalabilitatea StarkWare susține că zk-STARK reduce complexitatea de calcul și generează dovezi STARK mai rapid decât SNARK, dar această afirmație este oarecum controversată.

Al treilea avantaj este rezistența la atacurile cuantice. Teoretic, zk-STARK folosește o funcție hash anti-coliziune pentru a-și îmbunătăți capacitatea de a rezista atacurilor cuantice.

Dezavantajul lui STARK este că tehnologia sa este mult mai puțin matură decât SNARK, iar rata de penetrare a acestuia nu este bună că ecologia comunitară este încă cu mult în urmă Acest lucru este legat și de rata de penetrare insuficientă a STARK.

O altă problemă este compatibilitatea EVM-ului Ethereum este Turing complet, iar dacă STARK dorește să obțină caracterul complet al lui Turing, va fi dificil să fie compatibil cu limbajul de contract inteligent al Ethereum, care trebuie convertit într-un format compatibil STARK foarte complicat, așa că echipa StarkWare a creat un limbaj de programare specific Cario pentru a rula programele susținute de STARK. Costul de învățare al Cario este relativ ridicat și nu este compatibil cu EVM, ceea ce face ca Dapp-urile existente pe Ethereum să fie foarte complexe dificil de migrat, acesta fiind unul dintre motivele pentru care ecosistemul StarkWare nu este ușor de construit. Dintr-o altă perspectivă, există și beneficii în utilizarea unui limbaj nou-nouț, care nu are bagaje istorice și poate realiza unele funcții pe care Ethereum nu le poate realiza.

În ceea ce privește disponibilitatea datelor, StarkWare oferă două soluții de disponibilitate a datelor, StarkWare are un sistem de volum care permite utilizatorilor să aleagă pentru fiecare tranzacție dacă să utilizeze soluția Rollup unde sunt disponibile date în lanț sau soluția Validium unde sunt disponibile datele în afara lanțului. .

Comitetul de disponibilitate a datelor din schema validium este compus din unele entități de criptare de renume. Din perspectiva securității datelor, datele stocate în lanț sunt cele mai sigure și situația scăzută în timp real de stocare a datelor în afara lanțului va sacrifica o anumită cantitate de securitate. , cum ar fi GameFi.​

Interpretarea substantivului

Dovezi de fraudă: în sistemele distribuite, dovezile de fraudă sunt utilizate pentru a detecta și corecta actualizările de stare incorecte, adesea folosite în pachetele Optimistic Rollups, care presupun că majoritatea operațiunilor sunt corecte, dar oferă un mecanism de contestare și corectare a operațiunilor eronate.

Perioada de provocare: Perioada de provocare este o fereastră de timp desemnată care permite validatorilor să verifice și să confirme corectitudinea actualizărilor de stat, ceea ce este esențial pentru asigurarea securității și corectitudinii sistemului.

Dovada replicării: dovada replicării demonstrează că anumite date au fost într-adevăr stocate în locația specificată la un anumit moment în timp și că au fost făcute mai multe copii.

Dovada spațiu-timp: Dovada spațiu-timp este un mecanism de probă care combină spațiul (stocare) și timpul (stocare continuă), indicând faptul că anumite date continuă să fie stocate pentru o perioadă de timp.

Concluzie

În ianuarie 2021, fondatorul Ethereum Buterin a declarat: „Pe termen scurt, Optimistic-Rollups va câștiga din cauza compatibilității EVM, iar ZK-Rollups va avea mai multe șanse să câștige în cazuri de utilizare, cum ar fi tranzacțiile simple. Pe termen mediu și lung, Pe măsură ce tehnologia zk-SNARK se îmbunătățește, ZK-Rollups va câștiga în cele din urmă toate cazurile de utilizare.”

Chainyuan Technology este o companie care se concentrează pe securitatea blockchain. Activitatea noastră de bază include cercetarea securității blockchain, analiza datelor în lanț și salvarea vulnerabilităților activelor și contractelor și am recuperat cu succes multe active digitale furate pentru persoane și instituții. În același timp, ne angajăm să oferim organizațiilor din industrie rapoarte de analiză a siguranței proiectelor, trasabilitate în lanț și servicii de consultanță/asistență tehnică.

Vă mulțumim pentru citire, vom continua să ne concentrăm și să distribuim conținut de securitate blockchain.