
Autors: Kernel Ventures Turbo Guo
Recenzenti: Kernel Ventures Mandy, Kernel Ventures Joshua
TLDR:
ZK kopprocesors ir risinājums, kas ļauj dApps izmantot ārpus ķēdes skaitļošanas resursus. Šajā rakstā galvenokārt ir apskatīta kopprocesora ieviešana, dažādas lietojumprogrammas un turpmākie attīstības virzieni. Galvenais saturs ir:
RISC Zero's zkVM ir ZK kopprocesora risinājums, kas ļauj ķēdes līgumiem izsaukt ārpus ķēdes zkVM, lai palaistu noteiktu Rust kodu un atgrieztu rezultātus ķēdē, vienlaikus nodrošinot zkp līgumam, lai pārbaudītu, vai aprēķins ir pareizs.
ZK kopprocesoriem ir dažādas ieviešanas metodes. Papildus zkVM lietotāji var arī rakstīt pielāgotas ZK shēmas savām programmām vai izmantot saliekamās shēmas, lai rakstītu shēmas, ļaujot līgumiem izmantot ārpus ķēdes skaitļošanas resursus.
ZK kopprocesoram var būt nozīme DeFi, piemēram, ievietojot AMM aprēķinus ārpus ķēdes, ļaujot protokolam uztvert MEV līdzīgu vērtību vai ļaujot AMM ieviest sarežģītu un skaitļošanas ziņā intensīvu darbības loģiku. ZK kopprocesors var arī ļaut aizdevumu protokoliem aprēķināt procentu likmes reāllaikā, padarot maržas aprēķinus caurspīdīgus utt. Ir divas zkAMM implementācijas, viena izmanto zkVM, bet otra izmanto zkOracle.
Ir arī citi iespējamie ZK kopprocesora lietojumi. Piemēram, maki var izmantot ZK kopprocesoru, lai veiktu identitātes pārbaudi ārpus ķēdes. Kopprocesors var arī iespējot ķēdes spēlēm, lai veiktu sarežģītākus aprēķinus un samazinātu DAO pārvaldībai. pagaidi.
ZK kopprocesora modelis nav izlemts, taču, salīdzinot ar lietotājiem, kuri raksta savas shēmas, ir draudzīgāk izmantot projektu kā saskarni, lai izsauktu ārpus ķēdes resursus, bet ko skaitļošanas pakalpojumu sniedzēji (tradicionālie mākoņu piegādātāji, tradicionālie mākoņu piegādātāji, utt.) ir savienoti aiz "interfeisa" projekta.) Vai ir vēl viens diskusiju vērts jautājums.
1. ZK kopprocesora nozīme un pielietojums

Attēla avots: Kernel Ventures
ZK kopprocesora būtība ir pārvietot ķēdes aprēķinus ārpus ķēdes un izmantot ZK, lai pierādītu ārpus ķēdes aprēķinu procesa uzticamību, ļaujot viedajiem līgumiem viegli apstrādāt lielus aprēķinu apjomus, vienlaikus ļaujot līgumiem pārbaudīt uzticamību. no aprēķiniem. Tas ir līdzīgs zkRollup idejai, taču Rollup ir ķēdes protokola slānis, kas izmanto ārpus ķēdes skaitļošanas resursus, savukārt ZK kopprocesors ir dApp, kas izmanto ārpus ķēdes esošos resursus.
RISC Zero šeit tiek izmantots, lai izskaidrotu ZK kopprocesora ieviešanu, taču ir daudz ZK kopprocesoru implementāciju, kas tiks ieviestas vēlāk. RISC Zero izstrādāja Bonsai ZK kopprocesora arhitektūru, kuras kodols ir RISC Zero zkVM. Izstrādātāji var ģenerēt zkp zkVM gadījumā, ja "noteikts Rust koda gabals tiek izpildīts pareizi". Izmantojot zkVM, īpašais process ZK kopprocesora ieviešanai ir:
Izstrādātājs ierosina pieprasījumu pēc Bonsai releju līguma, tas ir, izstrādātāja pieprasītā programma tiek palaista zkVM.
Releja līgums nosūta pieprasījumu uz ārpusķēdes pieprasījumu kopu
Bonsai izpilda pieprasījumu ārpus ķēdes zkVM, veic ārpusķēdes liela mēroga darbības un pēc tam ģenerē par to kvīti.
Šos pierādījumus, ko sauc arī par "kvītīm", Bonsai ievieto atpakaļ ķēdē, izmantojot releju līgumu.

Attēla avots: RISC Zero
Bonsai sertificētā programma tiek saukta par viesu programmu, un kvīts tiek izmantota, lai pierādītu, ka viesu programma tika izpildīta pareizi. Akreditācijas dati ietver žurnālu un zīmogu. Konkrētāk, žurnāls nes zkVM lietojumprogrammas publisko izvadi, un zīmogs tiek izmantots, lai pierādītu sertifikāta derīgumu, tas ir, lai pierādītu, ka viesu programma ir izpildīta pareizi. Arī pats zīmogs ir zkSTARK, ko ģenerē sertificētājs . Akreditācijas datu pārbaude nodrošina, ka žurnāls ir izveidots, izmantojot pareizo shēmu utt.
Bonsai vienkāršo procesu izstrādātājiem no Rust koda kompilēšanas līdz zkVM baitkodam, programmas augšupielādei, izpildei virtuālajā mašīnā un atgriezeniskās saites pierādījumiem, ļaujot izstrādātājiem vairāk koncentrēties uz programmas loģisko dizainu. Un ne tikai daļu no līguma loģikas, bet arī visu līguma loģiku var palaist ārpus ķēdes. RISC Zero izmanto arī turpinājumus, kas sadala lielu pierādījumu paaudzi daudzās daļās un pēc tam pierāda katru daļu atsevišķi. Tas ļauj ģenerēt pierādījumus lielām programmām, neaizņemot pārāk daudz atmiņas. Papildus RISC Zero arī vairāki projekti, piemēram, IronMill, =nil Foundation un Marlin, nodrošina līdzīgus vispārīgus risinājumus.
2. ZK kopprocesora pielietojums DeFi
2.1 AMM — Bonsai kā kopprocesors
zkUniswap ir AMM, kas izmanto ārpus ķēdes skaitļošanas resursus. Tās pamatā ir daļa no mijmaiņas aprēķiniem ārpus ķēdes, un tā izmanto Bonsai. Lietotājs ķēdē ierosina apmaiņas pieprasījumu. Bonsai releja līgums saņem pieprasījumu un sāk ārpus ķēdes aprēķinu, kad Bonsai ir pabeidzis aprēķinu, tas atgriež aprēķina rezultātu un pierādījumu EVM atzvanīšanas funkcijai. Ja pierādījums ir veiksmīgi pārbaudīts, tiks veikta mijmaiņa.
Tomēr mijmaiņas darījumi netiek pabeigti uzreiz. Tā kā validācija ir balstīta uz pūla stāvokli, kad pieprasījums tiek iesniegts. Ja pūla statuss mainās, kamēr pieprasījums joprojām tiek gaidīts, verifikācija neizdosies.
Lai atrisinātu šo problēmu, izstrādātāji izstrādāja baseina slēdzeni. Kad lietotājs ierosina pieprasījumu, visas darbības, izņemot norēķinu mijmaiņas darījumus, tiek bloķētas, līdz ārpus ķēdes veiksmīgi tiek aktivizēts ķēdes mijmaiņas process vai mijmaiņas noildze (šis laiks tiks iestatīts iepriekš). Ja ir laika ierobežojums, pat ja ir problēmas ar releju vai zkp, baseins netiks bloķēts uz visiem laikiem. Konkrētais laika ierobežojums var būt dažas minūtes.
zkUniswap ir īpašs MEV dizains, tas ir, izstrādātāji vēlas, lai protokols uztvertu MEV vērtību. Teorētiski zkAMM ir arī MEV, jo pirmais, kurš iesniegs darījumu, var to aizslēgt, tātad visi joprojām sacentīsies par gāzi, un arī celtnieki var kārtot pieprasītos darījumus. Bet zkUniswap apēdīs MEV ienākumus, izmantojot mainīgo procentu likmju gradientu holandiešu izsoli (VRGDA).
zkUniswap izņem slēdzeni un izsolē par pazeminātu cenu, ja slēdzene tiek pārdota ātri, protokols zinās, ka pieprasījums šobrīd ir liels, un tad tas automātiski paaugstinās cenu, ja slēdzenes pārdošanas ātrums palēninās, protokols pazeminās cenu. Tas kļūs par jaunu ienākumu avotu. Līdz ar to līgums paredz jaunu lietu, lai noteiktu darījumu kārtību, un nauda no konkurētspējīgas cenas tiek tieši dota projekta pusei, izmantojot jauno lietu.
2.2 AMM — zkOracle kā kopprocesors
Papildus zkVM izmantošanai daži cilvēki ir ierosinājuši izmantot zkOracle, lai realizētu ārpus ķēdes skaitļošanas resursu izmantošanu, un zkOracle ir orākuls, kas ņem vērā gan ievadi, gan izvadi. Parasti ir divu veidu orākuls, viens ir ievades orākuls, bet otrs ir izejas orākuls. ķēdes dati ) un pēc tam tiek nodrošināti ārpus ķēdes. I/O (ievades un izvades) orākuls (zkOracle) vispirms veic izvadi un pēc tam ievadi, ļaujot ķēdei izmantot ārpus ķēdes skaitļošanas resursus.
No vienas puses, zkOracle kā datu avotu izmanto ķēdes datus. No otras puses, tas izmanto ZK, lai nodrošinātu, ka Oracle mezgla aprēķini nav krāpnieciski, un var realizēt kopprocesora funkciju. Tāpēc AMM pamata aprēķinus var ievietot zkOracle, ieviešot tradicionālās AMM funkcijas, zkOracle var izmantot arī sarežģītākas un skaitļošanas resursus patērējošas darbības.

Attēla avots: github fewwwww/zkAMM
2.3. Aizdevuma procentu likmju aprēķināšana, maržas aprēķināšana un citi pielietojumi
Neatkarīgi no ieviešanas, daudzas funkcijas var sasniegt ar ZK kopprocesoru. Piemēram, aizdevuma līgumā vairs nevar iepriekš iestatīt parametrus, bet gan pielāgot procentu likmi, pamatojoties uz reāllaika kreditēšanas nosacījumiem. Piemēram, paaugstināt procentu likmes, lai piesaistītu piedāvājumu, ja pieprasījums pēc naudas aizņemšanās ir augsts, un pēc tam pazemināt procentu likmes, ja pieprasījums ir zems. Tas prasa, lai aizdevuma protokols iegūtu ķēdes datus reāllaikā un veiktu lielu skaitu aprēķinu, lai iegūtu atbilstošus parametrus, kam nepieciešami ārpus ķēdes aprēķini (ja vien ķēdes izmaksas nav ārkārtīgi zemas).
Sarežģītas darbības, piemēram, maržas atlikumu, nerealizētās peļņas un zaudējumu, likvidācijas summu u.c. aprēķināšana, var arī nodot izpildei līdzapstrādātājam. Kopprocesora izmantošanas priekšrocība ir tā, ka tas padara šīs lietojumprogrammas pārskatāmākas un pārbaudāmākas, un rezerves dzinēja loģika vairs nav slepena melnā kaste. Lai gan aprēķins tiek veikts ārpus ķēdes, lietotāji var pilnībā paļauties uz tā izpildes pareizību. Turklāt šī pieeja attiecas arī uz opciju aprēķiniem.
3. Citas ZK kopprocesora lietojumprogrammas
3.1. Maks, izmantojot Bonsai kā līdzprocesoru
Bonfire Wallet izmanto zkVM, lai pārvietotu identitātes verifikācijas aprēķinus ārpus ķēdes. Šī maka mērķis ir ļaut lietotājiem izveidot degļu makus ar biometrisko informāciju (pirkstu nospiedumiem) vai kriptogrāfijas aparatūras yubikey.
Konkrētāk, Bonfire Wallet izmanto WebAuthn, kopīgu tīmekļa lapu autentifikācijas standartu, kas ļauj lietotājiem tieši izmantot savas ierīces, lai pabeigtu autentifikāciju tīmekļa lapās bez parolēm. Tātad Bonfire makā lietotājs ģenerē publisko atslēgu, izmantojot WebAuthn (nevis ķēdē, WebAuthn gadījumā), un pēc tam izmanto to, lai izveidotu maku.
Katram Burner makam ķēdē ir līgums, kurā ir WebAuthn publiskā atslēga. Līgumam ir jāpārbauda lietotāja WebAuthn paraksts. Bet aprēķinu apjoms ir ļoti liels, tāpēc Bonsai tiek izmantots, lai aprēķinu novietotu ārpus ķēdes, pārbaudītu parakstu ārpus ķēdes, izmantojot zkVM viesu programmu, un izveidotu zkp ķēdes verifikācijai.

Attēla avots: Bonfire Wallet
3.2. Ķēdes datu izguve — lietotāji paši raksta ZK shēmas
Axiom ir lietojumprogramma, kas neizmanto zkVM, bet izmanto citu kopprocesora risinājumu. Vispirms iepazīstināsim ar to, ko Axiom vēlas darīt. Tā cer izmantot ZK kopprocesoru, lai ļautu līgumiem piekļūt vēsturiskajai ķēdes informācijai. Faktiski līgumiem ir grūti nolasīt vēsturiskos datus, jo viedie līgumi parasti iegūst reāllaika ķēdes datus, un līgumiem ir grūti iegūt vērtīgus ķēdes datus, piemēram, iepriekšējo kontu atlikumus vai darījumu ieraksti.

Attēla avots: Axiom demo
Aksiomas mezgli piekļūst nepieciešamajiem ķēdes datiem un veic noteiktus aprēķinus ārpus ķēdes, pēc tam ģenerē nulles zināšanu pierādījumu aprēķinam, kas pierāda, 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 rezultātam.
Lai ģenerētu zkp aprēķiniem ārpus ķēdes, programma ir jākompilē ZK shēmā. Mēs arī minējām zkVM izmantošanu, lai to izdarītu, un Axiom oficiāli norādīja, ka šim jautājumam ir daudz risinājumu, kuriem ir jāizvērtē veiktspēja un elastība. un attīstības pieredze:
Pielāgotas shēmas: izstrādātāji pielāgo shēmas programmai, kurām noteikti būs vislabākā veiktspēja, taču tās izstrāde prasīs laiku;
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, kas var līdzsvarot veiktspēju un izstrādes pieredzi.
zkVM: izstrādātāji tieši izmanto gatavas virtuālās mašīnas, lai palaistu ZK, kas ir ļoti ērti, taču Axiom oficiāli uzskata, ka efektivitāte ir ļoti zema
Tāpēc Axiom izvēlējās otro iespēju, un projekta komanda lietotājiem nodrošināja arī optimizētu ZK moduļu komplektu, lai viņi varētu izveidot savas shēmas.
Projektam Axiom līdzīgs projekts ir Herodotus, taču tas vēlas izveidot starpprogrammatūru informācijas pārraidei starp ķēdēm. Tā kā informācijas apstrāde notiek ārpus ķēdes, ir saprātīgi ļ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
Turklāt ZK kopprocesorus var izmantot ķēdes spēlēm un DAO pārvaldībai. RISC Zero uzskata, ka jebkurš aprēķins, kas prasa vairāk nekā 250 000 gāzes, būs lētāks, izmantojot ZK kopprocesoru, taču vēl ir redzams, kā tas tiek noteikts. DAO pārvaldība var izmantot arī ZK kopprocesoru, jo tajā ir iesaistīti vairāki cilvēki un vairāki līgumi, kas patērē skaitļošanas resursus. RISC Zero apgalvo, ka pēc Bonsai lietošanas maksas par gāzi var samazināties par 50%. ZKML būtībā ir ZK kopprocesora ideja, tāpēc arī Modulus Labs un Giza ir projekti šajā jomā, taču ZK kopprocesora koncepcija ir plašāka.
Turklāt ir daži palīgprojekti ZK kopprocesoru jomā, piemēram, ezkl, kas nodrošina kompilatorus ZK shēmu izveidošanai, rīku komplektus ZK izvietošanai, rīkus ķēdes aprēķinu pārvietošanai ārpus ķēdes utt.
4. Nākotnes izredzes
Kopprocesors ļauj ķēdē esošajām lietojumprogrammām izmantot ārējos skaitļošanas resursus, piemēram, "mākonis", kas nodrošina salīdzinoši lētu lielu aprēķinu apjomu, savukārt ķēdē tiek apstrādāti tikai nepieciešamie aprēķini. Faktiskās situācijās zkVM var darboties arī mākonī. ZK kopprocesors būtībā ir arhitektūra, veids, kā ķēdes skaitļošanu ievietot ārpus ķēdes, un nav ierobežojumu tam, kurš nodrošina ārpus ķēdes skaitļošanas resursus.
Būtībā ārpus ķēdes skaitļošanas resursus koplieto tradicionālie lielie ražotāji, pat decentralizētie skaitļošanas resursi un vietējās ierīces. Katrs no šiem trim virzieniem ir atšķirīgs Tradicionālie lielākie ražotāji var nodrošināt salīdzinoši nobriedušus ārpus ķēdes skaitļošanas risinājumus. Nākotnē decentralizēto skaitļošanas resursu "noturība" var būt spēcīgāka, un arī lietotāju lokālajai skaitļošanai ir lieliska iztēle. Tomēr daudzi ZK kopprocesoru projekti šobrīd izvēlas sniegt pakalpojumus slēgtā avota stadijā, jo šī sliežu ceļa augšējais un lejpusējais posms vēl nav izveidots, un pakalpojumus nevar pilnveidot un nodot dažādiem projektiem nākotne:
Par katru ZK kopprocesora aspektu konkurē liels skaits projektu
Projekts ar labu pakalpojumu pieredzi aizņem lielāko tirgus daļu
No izstrādātāja viedokļa viņi var izmantot tikai vienu "interfeisa" projektu, izmantojot ZK kopprocesoru. Tāpēc Amazon Cloud aizņem lielu tirgus daļu, un izstrādātāji būs pieraduši pie vienas izvietošanas metodes. Bet kā "interfeisa" projekts ārpus ķēdes skaitļošanas resursiem, kas aiz tā ir savienoti skaitļošanas pakalpojumu sniedzēji (tradicionālie mākoņu piegādātāji, decentralizēta resursu koplietošana), ir vēl viens diskusiju vērts jautājums.
Kernel Ventures ir kriptovalūtu riska kapitāla fonds, ko virza pētniecības un izstrādes kopiena ar vairāk nekā 70 agrīnās stadijas investīcijām, kas vērstas uz infrastruktūru, starpprogrammatūru, dApps, īpaši ZK, Rollup, DEX, modulārajām blokķēdēm un vertikālajām jomām miljardiem kriptovalūtu lietotāju visā pasaulē. nākotnē, 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 attīstības kopienu un universitāšu blokķēdes asociāciju izaugsmi visā pasaulē.
Atsauces:
Rokasgrāmata ZK kopprocesoriem mērogojamībai: https://www.risczero.com/news/a-guide-to-zk-coprocessors-for-scalability
zkOracle definēšana Ethereum: https://ethresear.ch/t/defining-zkoracle-for-ethereum/15131
zkUniswap: pirmā sava veida zkAMM: https://ethresear.ch/t/zkuniswap-a-first-of-its-kind-zkamm/16839
Kas ir ZK kopprocesors?: https://blog.axiom.xyz/what-is-a-zk-coprocessor/
Īss ievads par kopprocesoriem: https://crypto.mirror.xyz/BFqUfBNVZrqYau3Vz9WJ-BACw5FT3W30iUX3mPlKxtA
Jaunākās lietojumprogrammas, kuru pamatā ir Hyper Oracle (Bonuss: lietas, ko varat izveidot tagad) ): https://mirror.xyz/hyperoracleblog.eth/Tik3nBI9mw05Ql_aHKZqm4hNxfxaEQdDAKn7JKcx0xQ
Bonfire Wallet: https://ethglobal.com/showcase/bonfire-wallet-n1dzp
