Autors: Kernel Ventures Turbo Guo

Redaktors(-i): Kernel Ventures Rose, Kernel Ventures Mandy, Kernel Ventures Joshua

TLDR: ZK kopprocesors ir risinājums dApps, lai izmantotu ārpus ķēdes skaitļošanas resursus. Šajā rakstā ir apskatīti esošie risinājumi, dažādas lietojumprogrammas un kopprocesoru turpmākā attīstība. Galvenās aplūkotās tēmas ir šādas:

  1. RISC Zero's zkVM ir ZK kopprocesora risinājums, kas ļauj ķēdes līgumiem, kas izsauc ārpus ķēdes zkVM, palaist noteiktu Rust kodu un atgriezt rezultātus ķēdē, vienlaikus nodrošinot zkp aprēķinu pareizības pārbaudei ķēdē.

  2. ZK kopprocesoriem ir dažādi risinājumi. Papildus zkVM lietotāji var arī rakstīt pielāgotas ZK shēmas savām programmām vai izmantot iepriekš sagatavotus ietvarus, lai rakstītu shēmas, tādējādi ļaujot līgumiem izmantot ārpus ķēdes skaitļošanas resursus.

  3. ZK kopprocesoram var būt nozīme DeFi, piemēram, izkraujot AMM aprēķinus ārpus ķēdes, lai iegūtu vērtību, kas līdzīga MEV, vai iespējot sarežģītu un skaitļošanas ziņā intensīvu loģiku AMM. ZK kopprocesors var arī atvieglot reāllaika procentu likmju aprēķinus aizdevuma protokoliem, cita starpā padarot maržas aprēķinus caurspīdīgus. zkAMM ir divas ieviešanas pieejas, viena izmanto zkVM, bet otra izmanto zkOracle.

  4. ZK kopprocesoram ir arī citi iespējamie lietošanas gadījumi, piemēram, maki, kas to izmanto, lai veiktu ārpus ķēdes identitātes pārbaudi. Tas var iespējot sarežģītākus aprēķinus ķēdes spēlēm un samazināt DAO pārvaldībai nepieciešamo gāzi, kā arī citas lietojumprogrammas.

  5. ZK kopprocesoru ainava joprojām ir neskaidra, taču salīdzinājumā ar lietotājiem, kuri raksta savas shēmas, risinājuma izmantošana ārpus ķēdes resursu saskarnei ir lietotājam draudzīgāka. Tomēr jautājums par to, kuri skaitļošanas pakalpojumu sniedzēji ir integrēti aiz šī "interfeisa" risinājuma, neatkarīgi no tā, vai tie ir tradicionālie mākoņa pakalpojumu sniedzēji vai decentralizēti resursu koplietošanas tīkli, ir vēl viens svarīgs diskusiju temats.

1. ZK kopprocesoru mērķis un pielietojums

Avots: Kernel Ventures

ZK kopprocesora pamatā ir ķēdes aprēķinu pārvietošana ārpus ķēdes, izmantojot ZK pierādījumus, lai nodrošinātu ārpusķēdes aprēķinu uzticamību, ļaujot viedajiem līgumiem viegli apstrādāt lielu aprēķinu apjomu, vienlaikus pārbaudot aprēķinu uzticamību. Tas ir līdzīgs zkRollups idejai, taču apkopojumi ķēdes protokola slānī izmanto ārpus ķēdes skaitļošanas resursus, savukārt dApps izmanto ZK kopprocesorus, lai izmantotu ārpusķēdes resursus.

Izmantojot RISC Zero kā piemēru, lai izskaidrotu vienu ZK kopprocesoru risinājumu, RISC Zero ir izstrādājis Bonsai ZK kopprocesoru arhitektūru, kuras kodols ir RISC Zero's zkVM. Izstrādātāji var ģenerēt zkp zkVM, lai "noteikts Rust kods tiktu pareizi izpildīts". Izmantojot zkVM, īpašais ZK kopprocesora ieviešanas process ir:

  1. Izstrādātāji nosūta pieprasījumu Bonsai releju līgumam, t.i., palaist izstrādātāja nepieciešamo programmu zkVM.

  2. Releja līgums nosūta pieprasījumu uz ārpusķēdes pieprasījumu kopu.

  3. Bonsai izpilda pieprasījumu ārpus ķēdes zkVM, veic liela mēroga aprēķinus un pēc tam ģenerē kvīti.

  4. Šos pierādījumus, kas pazīstami arī kā "kvītis", Bonsai publicē atpakaļ ķēdē, izmantojot releju līgumu.

Avots: RISC Zero

Bonsai pārbaudīto programmu sauc par viesu programmu, un kvīts tiek izmantota, lai pierādītu, ka viesu programma ir izpildīta pareizi. Kvīts ietver žurnālu un zīmogu. Konkrēti, žurnālā ir zkVM lietojumprogrammas publiskā izvade, savukārt zīmogs tiek izmantots, lai pierādītu kvīts derīgumu, t.i., lai pierādītu, ka viesu programma ir izpildīta pareizi. Pats zīmogs ir zkSTARK, ko ģenerējis pārbaudītājs. Pārbaudot kvīti, tiek nodrošināts, ka žurnāls ir izveidots, izmantojot pareizo ķēdi utt.

Bonsai vienkāršo procesu izstrādātājiem, lai apkopotu Rust kodu zkVM baitkodā, augšupielādētu programmas, izpildītu tās virtuālajā mašīnā un saņemtu atgriezenisko saiti, ļaujot izstrādātājiem vairāk koncentrēties uz loģisko dizainu. Tas ļauj ne tikai daļējai līguma loģikai, bet arī visai līguma loģikai darboties ārpus ķēdes. RISC Zero izmanto arī turpinājumus, sadalot liela pierādījuma ģenerēšanu mazākās daļās, ļaujot ģenerēt pierādījumus lielām programmām, nepatērējot pārmērīgu atmiņu. Papildus RISC Zero ir arī citi projekti, piemēram, IronMill, =nil; Foundation, un Marlin, kas nodrošina līdzīgus vispārīgus risinājumus.

2. ZK Coprocessors pielietojums DeFi

2.1 AMM — Bonsai kā līdzprocesors

zkUniswap ir AMM, kas izmanto ārpus ķēdes skaitļošanas resursus. Tās galvenā funkcija ir izkraut daļu mijmaiņas skaitļošanas ārpus ķēdes, izmantojot Bonsai. Lietotāji ķēdē iniciē mijmaiņas pieprasījumu. Bonsai releja līgums saņem pieprasījumu, uzsāk ārpusķēdes aprēķinu un pēc pabeigšanas atgriež aprēķina rezultātu un pierādījumu EVM atzvanīšanas funkcijai. Ja pierādījums ir veiksmīgi pārbaudīts, mijmaiņas darījums tiek izpildīts.

Tomēr maiņa netiek pabeigta vienā piegājienā. Pieprasīšanas un izpildes procesi notiek dažādos darījumos, kas rada zināmus riskus. Tas ir, starp pieprasījuma iesniegšanu un mijmaiņas darījumu pabeigšanu pūla stāvoklis var mainīties. Tā kā verifikācija ir balstīta uz pūla stāvokli pieprasījuma iesniegšanas laikā, ja pieprasījums joprojām tiek gaidīts un kopas stāvoklis mainās, verifikācija būs nederīga. Tas ir svarīgs apsvērums šādu sistēmu projektēšanā un drošībā.

Lai risinātu šo problēmu, izstrādātāji ir izstrādājuši baseina bloķēšanu. Kad lietotājs ierosina pieprasījumu, visas darbības, izņemot mijmaiņas darījumu nokārtošanu, tiek īslaicīgi bloķētas, līdz skaitļošana ārpus ķēdes veiksmīgi aktivizē ķēdes mijmaiņas darījumu vai mijmaiņas noildze (tiks iepriekš iestatīts laika ierobežojums). Ja ir noteikts laika ierobežojums, pat ja ir problēmas ar releju vai zkp, baseins netiks bloķēts uz nenoteiktu laiku. Konkrētais laika ierobežojums var būt dažas minūtes.

zkUniswap ir unikāls dizains MEV uztveršanai, jo izstrādātāju mērķis ir protokols gūt labumu no MEV. Teorētiski zkAMM ir arī MEV, jo pirmā persona, kas iesniedz mijmaiņas darījumu, var to bloķēt un vadīt citus, izraisot gāzes karus, un celtnieki joprojām var noteikt darījumu secību par prioritāti. Tomēr zkUniswap ņem MEV peļņu sev, izmantojot metodi, kas pazīstama kā mainīgās likmes pakāpeniskā holandiešu izsole (VRGDA). Šī pieeja ļauj zkUniswap iegūt protokola MEV vērtību.

zkUniswap koncepcija ir diezgan interesanta. Tas ietver bloķēto aktīvu cenas pazemināšanu izsolē, un, ja bloķētie aktīvi tiek ātri pārdoti, protokols atpazīst lielu pieprasījumu un automātiski paaugstina cenu. Ja bloķēto aktīvu pārdošana palēninās, protokols pazemina cenu. Šī novatoriskā pieeja varētu kļūt par jaunu ieņēmumu avotu. Būtībā protokols ievieš unikālu mehānismu darījumu prioritāšu noteikšanai, un konkurence par cenām dod labumu projektam tieši caur šo mehānismu.

2.2 AMM — zkOracle kā līdzprocesors

Papildus zkVM izmantošanai daži ir ierosinājuši izmantot zkOracle, lai izmantotu ārpus ķēdes skaitļošanas resursus, ir vērts atzīmēt, ka zkOracle ir I/O (ievades un izvades) orākuls, kas apstrādā gan ievadi, gan izvadi. Parasti ir divu veidu orākuli, viens ir ievades orākuls, bet otrs ir izejas orākuls. Ievades orākuls apstrādā (aprēķina) ārpusķēdes datus un ievieto tos ķēdē, savukārt izejas orākuls apstrādā (aprēķina) ķēdes datus un nodrošina tos ārpus ķēdes. I/O orākuls (zkOracle) vispirms veic izvadi, pēc tam ievadi, ļaujot ķēdei izmantot ārpus ķēdes skaitļošanas resursus.

No vienas puses, zkOracle izmanto ķēdes datus kā datu avotu, un, no otras puses, tas izmanto ZK, lai nodrošinātu, ka Oracle mezglu aprēķini ir godīgi, tādējādi panākot kopprocesora funkciju. Tāpēc AMM pamata aprēķinu var ievietot zkOracle, nodrošinot tradicionālo AMM funkcionalitāti, vienlaikus ļaujot veikt sarežģītākas un skaitļošanas ziņā ietilpīgākas darbības, izmantojot zkOracle.

Avots: github fewwwww/zkAMM

2.3. Aizdevuma likmes aprēķināšana, maržas aprēķināšana un citi lietojumi

Neņemot vērā ieviešanas metodi, pievienojot ZK kopprocesorus, var sasniegt daudzas funkcijas. Piemēram, aizdevuma protokoli var pielāgot procentu likmes atbilstoši reāllaika parametriem, nevis iepriekš noteiktiem nosacījumiem. Piemēram, procentu likmes paaugstināšana, lai piesaistītu piedāvājumu, kad pieprasījums pēc aizņēmumiem ir liels, un procentu likmes pazemināšana, kad pieprasījums samazinās. Tas prasa, lai aizdošanas protokols iegūtu lielu daudzumu ķēdē esošo datu reāllaikā, apstrādātu datus un aprēķinātu parametrus ārpus ķēdes (ja vien ķēdes izmaksas nav ārkārtīgi zemas).

Sarežģītos aprēķinos, piemēram, maržas atlikumu, nerealizētās peļņas/zaudējumu un tt noteikšanai, izpildei var izmantot arī kopprocesorus. Kopprocesoru izmantošanas priekšrocība ir tā, ka tās padara šīs lietojumprogrammas pārredzamākas un pārbaudāmākas. Rezerves dzinēja loģika vairs nav slepena melnā kaste. Lai gan aprēķini tiek veikti ārpus ķēdes, lietotāji var pilnībā uzticēties to izpildes pareizībai. Šī pieeja ir piemērojama arī opciju aprēķiniem.

3. Citas ZK kopprocesoru lietojumprogrammas

3.1 Maks — Bonsai kā līdzprocesora izmantošana

Bonfire Wallet izmanto zkVM, lai izkrautu identitātes verifikācijas aprēķinus ārpus ķēdes. Šī maka mērķis ir ļaut lietotājiem izveidot degļu makus, izmantojot biometrisko informāciju (pirkstu nospiedumus) vai šifrētu aparatūras yubikey. Konkrētāk, Bonfire Wallet izmanto WebAuthn, izplatītu tīmekļa autentifikācijas standartu, lai lietotāji varētu pabeigt tīmekļa identitātes verifikāciju tieši ar ierīcēm, neizmantojot paroli. Tātad Bonfire Wallet lietotāji ģenerē publisko atslēgu ar WebAuthn (nevis ķēdē, bet gan WebAuthn) un pēc tam izmanto to, lai izveidotu maku. Katram Burner makam ir ķēdes līgums, kurā ir WebAuthn publiskā atslēga. Līgumam ir jāpārbauda lietotāja WebAuthn paraksts. Taču šis aprēķins ir liels, tāpēc Bonsai tiek izmantots, lai izlādētu šo aprēķinu ārpus ķēdes, izmantojot zkVM viesprogrammu, lai pārbaudītu parakstu ārpus ķēdes, un izveidotu zkp ķēdes verifikācijai.

Avots: Bonfire Wallet

3.2. Ķēdes datu izguve — lietotāju izveidotās ZK shēmas

Axiom ir lietojumprogramma, kas neizmanto zkVM, bet izmanto citu kopprocesora risinājumu. Vispirms iepazīstināsim ar Axiom mērķi. Tas izmanto ZK kopprocesorus, lai līgumi varētu piekļūt vēsturiskajai ķēdes informācijai. Patiesībā ļaut līgumiem lasīt vēsturiskos datus ir diezgan sarežģīti, jo viedie līgumi parasti iegūst reāllaika ķēdes datus, kas var būt ļoti dārgi. Līgumiem ir grūti piekļūt vērtīgiem ķēdes datiem, piemēram, vēsturiskajiem kontu atlikumiem vai darījumu ierakstiem.

Avots: Axiom demo

Aksiomas mezgli piekļūst nepieciešamajiem ķēdes datiem un veic norādīto aprēķinu ārpus ķēdes, pēc tam ģenerē aprēķinam nulles zināšanu pierādījumu, pierādot, ka rezultāts ir pareizi aprēķināts, pamatojoties uz derīgiem ķēdes datiem. Šis pierādījums tiek pārbaudīts ķēdē, nodrošinot, ka līgums var uzticēties šim rezultātam.

Lai ģenerētu zkp skaitļošanai ārpus ķēdes, ir nepieciešams kompilēt programmas ZK shēmās. Iepriekš mēs minējām arī zkVM izmantošanu šim nolūkam, taču Axiom ierosināja, ka šim nolūkam ir daudz risinājumu, un ir nepieciešams līdzsvarot veiktspēju, elastību un izstrādes pieredzi:

  1. Pielāgotas shēmas: ja izstrādātāji pielāgo shēmas savām programmām, veiktspēja noteikti būs vislabākā, taču tā izstrāde prasa laiku;

  2. eDSL/DSL: izstrādātāji joprojām raksta savas shēmas, taču ir daži izvēles ietvari, kas palīdz izstrādātājiem atrisināt ar zk saistītas problēmas, tādējādi līdzsvarojot veiktspēju un izstrādes pieredzi.

  3. zkVM: izstrādātāji tieši palaiž ZK esošajā virtuālajā mašīnā, kas ir ļoti ērti, taču Axiom uzskata, ka tā nav efektīva.

Tāpēc Axiom izvēlējās otro iespēju un nodrošina lietotājiem optimizētu ZK moduļu komplektu, ļaujot viņiem izveidot savas shēmas.

Axiom līdzīgi projekti ietver Herodotus, kura mērķis ir būt starpprogrammatūra starpķēžu ziņojumapmaiņai. Tā kā informācijas apstrāde notiek ārpus ķēdes, ir saprātīgi atļaut dažādām ķēdēm iegūt apstrādātos datus. Citā projektā Telpa un laiks izmanto līdzīgu arhitektūru, lai ieviestu datu indeksēšanu.

3.3. Ķēdes spēles, DAO pārvaldība un citas lietojumprogrammas

Papildus iepriekšminētajām ķēdes spēlēm DAO pārvaldība var izmantot arī ZK kopprocesorus. RISC Zero uzskata, ka jebkurš aprēķins, kam nepieciešams vairāk nekā 250 000 gāzes, būtu lētāks, izmantojot ZK kopprocesoru, taču vēl ir jāturpina pētīt, kā tas tiek aprēķināts. DAO pārvaldībā var izmantot arī ZK kopprocesorus, jo tajā ir iesaistīti vairāki cilvēki un vairāki līgumi, kas ir ļoti skaitļošanas ietilpīgi. RISC Zero apgalvo, ka Bonsai izmantošana var samazināt maksu par gāzi par 50%. Daudzi ZKML projekti, piemēram, Modulus Labs un Giza, izmanto to pašu risinājumu, ko ZK kopprocesori, taču ZK kopprocesoru jēdziens ir plašāks.

Ir vērts pieminēt, ka ir daži palīgprojekti ZK kopprocesoru jomā, piemēram, ezkl, kas nodrošina kompilatorus ZK shēmām, rīku komplektus ZK izvietošanai un rīkus ķēdes aprēķinu izkraušanai ārpus ķēdes.

4. Nākotnes perspektīva

Kopprocesori nodrošina ķēdes lietojumprogrammas ar ārējiem skaitļošanas resursiem, kas ir līdzīgi "mākonim", piedāvājot rentablu un bagātīgu aprēķinu, savukārt ķēdes apstrāde koncentrējas uz būtiskiem aprēķiniem. Praksē zkVM var darboties arī mākonī. Būtībā ZK kopprocesori ir arhitektoniska pieeja, kas pārvieto ķēdes aprēķinus ārpus ķēdes, izmantojot neierobežotu ārpus ķēdes skaitļošanas resursu avotu.

Būtībā ārpus ķēdes skaitļošanas resursus var nodrošināt tradicionālie mākoņpakalpojumu sniedzēji, pat decentralizēta skaitļošanas resursu koplietošana un vietējās ierīces. Katram no šiem trim virzieniem ir savas īpašības. Tradicionālie mākoņdatošanas pakalpojumu sniedzēji var nodrošināt salīdzinoši nobriedušus ārpus ķēdes skaitļošanas risinājumus, nākotnes decentralizēto skaitļošanas resursu "noturība" var būt spēcīgāka, un arī vietējai skaitļošanai ir liels potenciāls. Taču šobrīd daudzi ZK kopprocesoru projekti atrodas slēgtā pirmkoda pakalpojumu sniedzēja stadijā, jo šo pakalpojumu ekosistēma nav pilnībā izveidojusies un pakalpojumu specializācija starp dažādiem projektiem vēl nav definēta. Ir divi iespējamie nākotnes scenāriji:

  1. Katrai ZK kopprocesora daļai ir liels skaits projektu, kas konkurē savā starpā.

  2. Tirgū var dominēt viens projekts ar izcilu pakalpojumu pieredzi.

No izstrādātāja viedokļa, izmantojot ZK kopprocesorus, tie var mijiedarboties tikai ar vienu "interfeisa" projektu. Tas ir līdzīgs iemeslam, kāpēc Amazon Web Services ieņem ievērojamu tirgus daļu, jo izstrādātājiem ir tendence pierast pie noteiktas izvietošanas metodes. Tomēr jautājums par to, kuri skaitļošanas pakalpojumu sniedzēji (tradicionālie mākoņu uzņēmumi, decentralizēta resursu koplietošana) ir integrēti aiz šī ārpus ķēdes skaitļošanas resursu "interfeisa" projekta, ir vēl viena diskusijas vērta tēma.

Kernel Ventures ir pētniecības un izstrādātāju kopienas virzīts kriptovalūtu riska fonds ar vairāk nekā 70 agrīnās stadijas investīcijām, koncentrējoties uz infrastruktūru, starpprogrammatūru, dApps, īpaši ZK, Rollup, DEX, Modular Blockchain un vertikālēm, kas nodrošinās nākamo miljardu kriptovalūtu lietotāju. piemēram, konta abstrakcija, datu pieejamība, mērogojamība utt. Pēdējo septiņu gadu laikā mēs esam apņēmušies atbalstīt galveno izstrādātāju izaugsmi. kopienas un universitāšu blokķēžu asociācijas visā pasaulē.

ATSAUCES:

  1. Rokasgrāmata ZK kopprocesoriem mērogojamībai: https://www.risczero.com/news/a-guide-to-zk-coprocessors-for-scalability

  2. zkOracle definēšana Ethereum: https://ethresear.ch/t/defining-zkoracle-for-ethereum/15131

  3. zkUniswap: pirmā sava veida zkAMM: https://ethresear.ch/t/zkuniswap-a-first-of-its-kind-zkamm/16839

  4. Kas ir ZK kopprocesors?: https://blog.axiom.xyz/what-is-a-zk-coprocessor/

  5. Īss ievads par kopprocesoriem: https://crypto.mirror.xyz/BFqUfBNVZrqYau3Vz9WJ-BACw5FT3W30iUX3mPlKxtA

  6. Jaunākās lietojumprogrammas, kuru pamatā ir Hyper Oracle (Bonuss: lietas, ko varat izveidot tagad) ): https://mirror.xyz/hyperoracleblog.eth/Tik3nBI9mw05Ql_aHKZqm4hNxfxaEQdDAKn7JKcx0xQ

  7. Bonfire Wallet: https://ethglobal.com/showcase/bonfire-wallet-n1dzp