Pe 10 iunie, autorul protocolului RGB++ și fondatorul CELL Studio Cipher, co-fondatorul DotSwap Lin, co-fondatorul Shell Finance Timxie și TBC (Turingbitchain) CMO NIGO au fost invitați pe Twitter Space al UTXO Stack pentru a discuta dacă modelul UTXO poate fi utilizat. nașterea unui nou model de ecologie Bitcoin.
UTXO Stack este o platformă modulară de emitere a lanțului BTC L2 cu un singur clic, care poate ajuta dezvoltatorii de proiecte să emită Bitcoin L2 bazat pe arhitectura UTXO cu un singur clic și integrează în mod nativ protocolul RGB++. În ceea ce privește securitatea, UTXO Stack asigură securitatea L2 prin gajarea activelor Bitcoin, CKB și Bitcoin L1. Pentru a spune simplu, ne putem gândi la UTXO Stack ca la OP Stack + EigenLayer al ecosistemului Bitcoin.
UTXO Stack a încheiat o rundă de finanțare, co-condusă de ABCDE și SNZ Capital, cu participarea unor instituții cunoscute precum OKX Ventures, Waterdrip Capital, Matrixport, y2z Ventures, DRK Lab și UTXO Management, filiala cu capital de risc a Compania-mamă Bitcoin Magazine BTC Inc.
Următorul este conținutul cheie organizat în funcție de audio:
1. Care sunt diferențele și avantajele esențiale dintre modelul UTXO și modelul de cont în ceea ce privește filozofia de proiectare, securitate, eficiență etc.?
Cifrare: Cred că există unele diferențe în principal în filozofia de proiectare și eficiență. Securitatea poate depinde mai mult de mecanismul de consens și are puțin de-a face cu modelul de cont.
În ceea ce privește filozofia de proiectare, UTXO este de fapt mai concentrat pe verificare decât pe calcul. Cunoaștem modelul de cont al Ethereum Când scrieți un program sau trimiteți o tranzacție, nu cunoașteți rezultatul tranzacției tranzacția este Nu veți ști rezultatul până când nu este împachetat în blocuri.
Un exemplu tipic este, presupunând că aveți doar 0,1 ETH în cont, puteți trimite o tranzacție pentru a transfera 0,2 ETH? Da, îl puteți trimite, dar după ce tranzacția intră în pool-ul de tranzacții, poate fi împachetat și va fi returnată o eroare pentru că nu aveți atât de mulți bani, dar taxa de gaz va fi totuși dedusă. Dar dacă cineva se întâmplă să transfere o sumă de bani în contul tău în același timp cu care o trimiți, făcând soldul contului tău să depășească 0,2 ETH, atunci tranzacția ta va fi executată cu succes și, desigur, taxa de gaz va fi dedusă.
Dar pentru modelul UTXO, tranzacția ta nu poate fi trimisă deoarece contul tău nu are suficienți bani și nu poți genera suficientă intrare. Prin urmare, nu există o stare de eșec a tranzacției în cadrul modelului UTXO. Are doar două stări: succesul tranzacției sau eșecul de a trimite, adică așa-numitul eșec al tranzacției înseamnă că verificarea nu va fi deduse. UTXO consideră că blockchain-ul este mai degrabă o mașină de verificare decât o mașină de calcul, care folosește modelul de cont, a avut odată o poreclă numită computerul mondial, care este o filozofie de design complet diferită.
Există și o diferență foarte mare între cele două în ceea ce privește eficiența. UTXO indică clar ce stare a fost folosită înainte, apoi o distruge și o actualizează la noua stare. Când Ethereum apelează o funcție, nu știe ce state va accesa înainte de apel, așa că poate face față doar scenariului cel mai rău, adică fără preprocesare a tuturor stărilor. Prin urmare, fiecare tranzacție în Ethereum poate fi executată doar în serie. Un computer desktop obișnuit are un procesor cu cel puțin șase nuclee și 12 fire de execuție, dar pentru un EVM standard, acesta este încă executat într-un singur fir. UTXO este în mod natural paralelă. Toate tranzacțiile sale pot distinge în mod automat care sunt tranzacțiile în conflict, nu vor fi trimise la pool-ul de tranzacții. . Desigur, există acum o narațiune numită paralel EVM, care vrea să rezolve această problemă într-o anumită formă, dar din descrierea de acum, toată lumea își poate da seama că acest lucru nu poate fi rezolvat în esență.
Tim Xie: Sunt foarte de acord cu ceea ce tocmai a spus Cipher: „Modelul UTXO al Bitcoin este mai axat pe verificare, iar modelul contului Ethereum este mai axat pe calcul”. În timpul verii DeFi, vom face unele schimburi, iar taxa de gaz a Ethereum va fi foarte mare Deși Ethereum are o viteză mai rapidă de generare a blocurilor, blocuri mai mari și o performanță mai bună decât Bitcoin, Ethereum are Cererea de expansiune este de fapt mai mare decât cea a lui. Bitcoin. De ce? Motivul este că Ethereum este un model de calcul. Când jucăm DeFi, 98% din taxele de gaz pe care le plătim pot fi cheltuite pe calcule. Costul verificării, propagării și stocării stării contului este de fapt foarte mic. Bitcoin este o rețea de verificare care nu efectuează calcule, așa că facem împrumuturi sau schimb pe al doilea strat de Bitcoin. În același scenariu, comisionul de manipulare este de fapt mai ieftin decât cel al Ethereum.
Al doilea este concurența. De ce serialul EVM a explicat foarte clar UTXO ce va aduce acest lucru în afaceri? Când faceți împrumuturi pe Ethereum, trebuie să depuneți înainte de a vă putea împrumuta, deoarece logica de afaceri este că trebuie să aveți garanții și trebuie să așteptați până când tranzacția ipotecară este confirmată și starea este fixată înainte de a putea calcula valoarea netă. a garanțiilor tale și a pragurilor de lichidare, permițându-ți să împrumuți bani, totul este în serie. UTXO poate face concurență și putem comprima toate tranzacțiile împreună cât mai mult posibil, ceea ce înseamnă că tranzacțiile de depozit ale utilizatorilor și tranzacțiile de împrumut pot fi fuzionate împreună pentru a îmbunătăți eficiența.
Din perspectiva noastră, folosind modelul UTXO pentru DeFi pe Bitcoin, experiența finală a utilizatorului nu este atât de proastă pe cât își imaginează oamenii.
Lin: Lasă-mă să fac un supliment. Tehnologia existentă este în continuă evoluție, cred că UTXO nu face calcule, poate face și calcule. De exemplu, codul de operare Bitcoin discutat recent OP_CAT, dacă este activat, poate păstra starea în UTXO al Bitcoin. Dacă eliminăm toate limitările native ale Bitcoin, putem simula nenumărate Ethereum-uri în UTXO al Bitcoin. Fiecare UTXO poate fi în starea unui Ethereum, iar apoi stocarea datelor și execuția este efectuată astfel încât această stare să fie dedus în jos, deși acest lucru nu poate obține neapărat compatibilitatea EVM completă.
Deci, cred că Bitcoin poate face și calcule, iar logica Bitcoin este că puteți deschide un fir nou în orice moment și puteți diviza un nou UTXO în orice moment. Noul UTXO este complet separat de UTXO original Bitcoin O caracteristică a UTXO în calcul.
După adăugarea OP_CAT, va aduce câteva scenarii de aplicații foarte inteligente. De exemplu, jetoanele Ethereum ERC-20 vor menține o listă pentru a ști ce conturi au câți bani După adăugarea OP_CAT, putem face lucruri similare pe Bitcoin și poate chiar să facem mai bine decât Ethereum.
Printre UTXO, partajarea datelor este de fapt un spațiu mare necunoscut. De exemplu, acordurile (restricțiile) încă mai au nevoie de ceva timp pentru a se construi Când această chestiune avansează, cum să partajați date între diferite UTXO, cum să faceți referire la datele din afara tranzacției, etc., poate exista o descoperire.
NIGO: Întotdeauna am crezut că Ethereum a schimbat modelul UTXO al Bitcoin într-un model de cont, care este de fapt un pas tipic de prisos și transformă un sistem care inițial era capabil de concurență într-un sistem serial. Ethereum este numit computerul mondial de mulți oameni De ce ar trebui să fie calculată sarcina de calcul a unei persoane obișnuite de minerii din întreaga lume. Acest proces consumă multă energie și este foarte costisitor, dar nu aduce beneficii substanțiale, dar o întârzie. eficienta generala. După ce Ethereum a trecut la PoS, minerii (nodurile) întregii rețele și-au pierdut impulsul evolutiv. Modelul UTXO conceput de Satoshi Nakamoto este potrivit în mod natural pentru concurență ridicată și performanță ridicată. Cred că mai mulți utilizatori Web3 vor vedea potențialul modelului UTXO.
2. Este modelul UTXO care face ca Bitcoin să nu aibă capabilități de contract inteligente? Dacă dorim să implementăm capabilități de contract inteligente bazate pe modelul UTXO, ce mecanism este utilizat în general pentru a le realiza?
Cifrare: Există cu siguranță multe modalități de implementare a capabilităților de contract inteligente bazate pe modelul UTXO. Permiteți-mi să vă prezint modul în care CKB, cu care sunt cel mai familiar, îl implementează.
CKB a introdus un script de blocare, care este în concordanță cu scriptul de blocare al Bitcoin. Când acest UTXO este cheltuit, scriptul de blocare va fi executat automat pe baza datelor din martor și va fi, de asemenea, tranzacția curentă folosit ca intrare pentru a executa. Diferența dintre acesta și scriptul de blocare al Bitcoin este că acceptă o mașină virtuală completă Turing, în loc de mediul de script foarte limitat al Bitcoin, deci este Turing-complet în această etapă de deblocare.
În același timp, CKB a introdus câmpul de tip script, care va fi executat indiferent dacă este de intrare sau de ieșire Se execută mai mult ca o categorie a activului, sau același tip reprezintă același tip de activ. De exemplu, cantitatea totală de jetoane fungibile rămâne neschimbată înainte și după tranzacție, iar cantitatea și conținutul jetoanelor nefungibile rămân neschimbate înainte și după tranzacție sau poate fi utilizată pentru a determina cine are dreptul de a emite un nou activ, etc. Este, de asemenea, un VM complet Turing.
Mașina virtuală CKB se bazează pe setul de instrucțiuni hardware RISC-V. Orice ajustare implică resiliciu, astfel încât designul setului de instrucțiuni RISC-V este foarte simplificat, eficient și cuprinzător.
Pentru a rezuma, CKB folosește o mașină virtuală RISC-V, care este completă Turing, și are, de asemenea, două locuri: script-ul de blocare și script-ul de tip pentru a stoca scripturi de contracte inteligente și există, de asemenea, un câmp numit date pentru a stoca script-urile de contracte inteligente starea contractului, deci este un mediu complet de executare a contractului.
Tim Xie: În întregul proces de construire a produsului Shell Finance, pentru că trebuie să facem protocolul de împrumut și lichidare, avem nevoie de câteva funcții de contract avansate. În cele din urmă, am ales DLC (Contracte de jurnal discret). DLC și Lightning Network sunt ambele tehnologii de expansiune de același nivel și ambele sunt offchain. Diferența este că Lightning Network este folosit în principal pentru plăți, în timp ce DLC este folosit în principal pentru oracole. De fapt, nu suntem complet Turing și există încă multe restricții, dar chiar și cu multe restricții, putem deja să facem împrumuturi prin DLC.
Bitcoin are de fapt o mulțime de coduri OP Dacă putem activa sau debloca OP_CAT menționat de Lin din DotSwap sau alte coduri operaționale, atunci putem continua să creăm mai multe pe linia Lightning Network și DLC , contractele inteligente o pot face cu siguranță. Punctul de bază este dacă există cerere, dacă există utilizatori, dacă există o piață și dacă mai mulți oameni vor investi timp și energie pentru a o concepe, a o utiliza și a satisface nevoile utilizatorilor. Atâta timp cât există oameni care îl folosesc și există o piață, idei și concepte noi vor apărea în mod natural.
Ceea ce sunt sigur acum este că forma ecosistemului Bitcoin va fi complet diferită de cea a EVM. Poate că la nivel de afaceri, utilizatorii pot avea sentimente similare. Amândoi fac schimburi și împrumuturi și au și oracole, dar sistemele din spatele lor și instrumentele care pot fi utilizate în cele din urmă sunt de fapt foarte diferite. Dacă se află pe rețeaua principală Bitcoin, această diferență va fi și mai mare, așa că de fapt aștept cu nerăbdare L2 cu o structură UTXO mai bună, deoarece poate elibera potențialul ecosistemului Bitcoin într-o măsură mai mare.
Lin: Cred că nu este dificil să proiectezi ceva care să fie Turing-complet, dar este foarte dificil să faci ceva Turing-incomplet. Proiectarea unui script care să fie ne-Turing-complet este de fapt o sarcină tehnică foarte avansată.
Scriptul original al Bitcoin poate fi complet Turing, dar acum multe capabilități ale Bitcoin sunt sigilate operatori când a fost proiectat inițial. Bitcoin a implicat o mulțime de operatori la început, dar din cauza așa-numitei securități sau a așa-ziselor pericole ascunse ale acestei securități sau pentru că nu a existat o înțelegere clară despre ce este, cum să o folosească etc., unii operatori au fost Unii operatori sunt dezactivați. În plus, multe funcții care ar fi putut fi folosite pentru contractele inteligente au fost filtrate de așa-numitele tranzacții standard. Cu toții spunem că Bitcoin este un sistem descentralizat, dar în acest sistem descentralizat, există ceva numit tranzacție standard, care este determinată de anumite organizații. Tranzacțiile standard nu există în domeniul minerilor, deoarece minerii pot împacheta orice tranzacție juridică. Este o problemă de politică bazată pe partea utilizatorului.
Deci, în general, cred că capacitatea Bitcoin-ului original în sine este foarte puternică, dar acum Bitcoin a fost deturnat Dacă sunteți interesat, puteți citi cartea lui Roger Ver „Hijacking Bitcoin: The Hidden History of BTC》. Deoarece capabilitățile originale ale Bitcoin au fost sigilate, suntem forțați să găsim căi de ieșire în diferite locuri. Aceasta este situația actuală cu care ne confruntăm, dar viitorul Bitcoin este cu siguranță mai bun.
Am spus că multe dintre așa-numitele Bitcoin L2 sunt de fapt protocoale paraziți. Ele nu contribuie cu propria lor valoare la Bitcoin și nu există nicio modalitate pentru mineri de a avea venituri mai mari, dar de fapt nu există nicio modalitate, pentru că. Bitcoin are multe limitări. Permiteți-mi să fac o analogie Protocolul HTTP este de fapt L2 construit pe protocolul TCP/IP, iar protocolul nostru HTML este construit pe protocolul HTTP. Cred că acesta este un concept strat cu strat, mai degrabă decât faptul că datele tranzacției sunt complet separate de TCP/IP, separate de protocolul stratului superior, rulează în alt loc și apoi se întorc și le spun altora că acesta este stratul 2 protocol. Protocolul real Layer 2 este de fapt stivuit strat cu strat, astfel încât L2-ul pe care îl construim ar trebui să fie acceptat și ca tranzacții legale în stratul superior. Acesta este un motiv foarte important pentru care în prezent explorăm un strat de schimb. Credem că, în cele mai multe cazuri, trebuie de fapt să ne aliniem la un singur strat și trebuie să avem o mulțime de direcții de verificare și consens asupra primului strat, în loc să spunem că voi construi așa-numita punte a activelor și apoi voi muta toată lumea. active către altul Un loc în care s-ar putea să nu fie un lucru deosebit de bun.
NIGO: Modelul UTXO poate suporta funcții complexe de contract inteligente? Desigur că este posibil. Stochează logica și datele contractului în UTXO, apoi folosește apelul și parametrii contractului ca intrare pentru a încerca să deblocheze contractul, execută logica contractului prin BVM (Blockchain Virtual Machine) și în final obține controlul prin returnarea adevărat sau fals din funcția de deblocare Scopul statutului contractului. Acest model poate fi necunoscut dezvoltatorilor de contracte inteligente Ethereum, dar, de fapt, dacă combinați idei de programare funcțională și convertiți unele concepte, contractele inteligente UTXO pot implementa o logică foarte complexă.
Deoarece modelul UTXO nu are o stare globală, trebuie să stocheze starea și logica contractului în UTXO, apoi să transfere și să convertească starea prin transmiterea lanțului de apeluri de tranzacție UTXO, astfel încât fiecare tranzacție UTXO va consuma cea anterioară. UTXO și generați noi UTXO, în acest fel, se poate realiza transferul de stat în lanț al contractului. Prin urmare, dacă UTXO poate fi deblocat corespunde rezultatului execuției contractului și dacă permite transferul de stat. Dacă contractul stabilește că nu se permite modificarea statutului, cum ar fi transferurile nu sunt permise, nu este permisă modificarea datelor etc., va reveni fals, atunci UTXO-ul nu va fi deblocat și executarea contractului va eșua.
Considerăm contractele ca fiind mașini de stat care transferă stări de date, așa că aici putem vedea diferența dintre contractele UTXO și contractele de tip cont. EVM-ul contractului de cont este de a menține starea globală. O tranzacție poate determina EVM să efectueze mai multe transferuri de stat și să modifice frecvent datele de stat până când contractul este executat sau gazul este consumat. În ceea ce privește tranzacția de contract UTXO, este un contract de intrare Apelul va declanșa doar un transfer de stat și indiferent cât de complexă este logica din interiorul contractului sau de câte ori este transferată statul, BVM va înregistra doar transferul final de stat. rezultat pe lanț. Prin urmare, contractul UTXO nu are stare globală, doar funcții care așteaptă să fie executate.
UTXO este de intrare și de ieșire multiplă Ceea ce Ethereum vrea să facă, inclusiv EVM-ul paralel pe care Monad vrea să îl facă, poate fi realizat prin UTXO localizați și modificați starea prin apeluri de funcție și generați noi funcții. Acest model face transferul de stat al contractelor UTXO.
Contractele UTXO nu se bazează pe stări externe. Prin urmare, indiferent de câte ori este apelat un contract, rezultatul acestuia trebuie să fie sigur. Contractul EVM se bazează pe starea globală, astfel încât rezultatul execuției contractului este probabil să fie afectat de mediul extern, ceea ce face ca rezultatul execuției contractului să fie incert. De exemplu, dacă echilibrul este suficient, un rezultat va fi , iar dacă soldul este insuficient, un alt rezultat. Deci, aceasta este, de asemenea, o problemă importantă pentru securitatea și predictibilitatea contractelor EVM.
Desigur, trecerea de fiecare dată a statului nu este fără costuri În unele scenarii în care este necesară trasabilitatea, starea poate crește pe măsură ce lanțul de transfer UTXO crește, deoarece trasabilitatea trebuie verificată și există din ce în ce mai multe date se va extinde la infinit. TBC-ul nostru a rezolvat o problemă majoră a expansiunii statului prin alte tehnologii și mijloace criptografice, cum ar fi hashing și extragerea datelor. Prin urmare, o caracteristică importantă care distinge contractele inteligente ale TBC de alte lanțuri UTXO este că modelul UTXO este o bază pentru extinderea nelimitată a TBC. Este foarte simplu să utilizați modelul UTXO pentru a efectua tranzacții de transfer standard.
Pe scurt, TBC ia în considerare pe deplin avantajele și dezavantajele modelului UTXO și, pe baza absorbției esenței Ethereum și a altor lanțuri publice UTXO, introduce conceptul de BVM și alte tehnologii pentru a implementa un strat real de contracte inteligente UTXO, și apoi Împreună cu câteva instrumente de dezvoltare a contractelor inteligente mai prietenoase, pragul pentru scrierea și implementarea contractelor inteligente BVM este coborât.
(De continuat)