Dweve

Deterministinė WebAssembly smėlio dėžė | Dweve Selvedge

Selvedge vykdo nepatikimą kodą deterministinėje WebAssembly smėlio dėžėje ir grąžina atkuriamą vykdymo įrašą. Trečiame etape.

Choose the audience that matches your question

The page contains three selectable readings of the same subject.

For consumers

Selvedge įdeda programą, kurios nepasirinkote, į kambarį be interneto, be kelio į jūsų failus ir be nieko, ką galėtų sužinoti apie jūsų įrenginį. Jis palieka kvitą, kuriame nurodyta, kas grįžo ir ką programai buvo leista daryti, kad galėtumėte patikrinti vėlesnį teiginį, o ne tikėti žodžiu.

For businesses

Selvedge yra deterministinis WebAssembly smėlio dėžė nepatikimam kodui. Jo leidimų manifestas ir užantspauduotas protokolas veikia jūsų kontroliuojamoje įrangoje, todėl kita šalis gali atkurti įrašą savo mašinoje, o ginčas tampa paieška, o ne užtikrinimo užklausa.

For engineers

Selvedge vykdo kodą, kurio neparašėte, WebAssembly komponentų pagrindiniame kompiuteryje be tinklo, failų sistemos, aplinkos ar judančio laikrodžio. Kiekvienas baigtas vykdymas grąžina įrašą, kurį kita šalis gali atkurti, ir vykdymo ataskaitą, nurodančią, ką kodui buvo leista daryti. Paskelbta pagal Apache 2.0.

Kompiliuoti Kera BNN darbo krūvius Selvedge vykdymo aplinkai.

Įvykių kilmės grandinė su maišos funkcijomis sistemos įvykiams.

Samprotavimo įrodymų sertifikatai, ne vykdymo nuorašai.

Selvedge publikuojamas ketvirtame fondo leidybos programos rate, po Knot ir Ledger. Kai tai įvyks, pats izoliuokite WASM modulį ir atkurkite įrodymų voką.

Model Context Protocol įrankių vykdymo paviršius.

Ed25519 užantspauduotas, SHA3-256 nuorašas, patikra neprisijungus.

Grafiko IR dvejetainiai neuroniniai tinklai, JIT ir interpretatorius.

Komponentų modelio vykdymo aplinka, WASI 0.2 Preview 2 pagrindinė sistema.

Selvedge vykdo nepatikimą kodą smėlio dėžėje su apribotomis galimybėmis ir įrašo vykdymą užantspauduotame nuoraše. Izoliacija riboja, ką kodas gali pasiekti; nuorašas parodo, kas iš tikrųjų įvyko, ir gali būti atkurtas peržiūrai.

Model Context Protocol serveris agentų įrankiams.

Ilgai veikiantis agentų vykdymo variklis su eile.

kurti, tikrinti, vykdyti, atkurti. Tinka CI.

Agentų įrankiai, trečiųjų šalių papildiniai, Kera BNN inferencija ir reguliuojami duomenys patenka per tą pačią kontroliuojamą ribą. Kiekvienas variklis sukuria tą patį užantspauduotą įrodymų voką, todėl diegimo pakeitimai nekeičia audito istorijos.

Šaltas paleidimas, pagrindinis laimėjimas

Įskaičiuotas proceso paleidimas, 8-9x greičiau.

Skaičiavimo modulis, palyginti su 1187-1494 us įprastai.

Selvedge Wasmtime API lygmenyje paleidžiamas 62–243 kartus greičiau nei standartinis (vanilla) Wasmtime. Sąžiningas kompromisas yra karštasis kelias: standartinis variantas išlaiko 22 ns pakartotinį iškvietimą, o komponentų modelis, kuris sukuria stenogramą, ten veikia lėčiau. Kera JIT grafo darbui, kai jau „įšilęs“, yra 2 kartus greitesnis. Skaičiai paimti iš saugyklos BENCHMARKS.md failo.

Pasirinkite vykdymo aplinką pagal darbo krūvį

Kiekvienas vartų sprendimas užfiksuojamas ir maišuojamas (hash).

max_execution_time_ns, separate from fuel.

max_memory_bytes, 256 MiB default, 4 GiB ceiling.

max_instructions – išsekus limitui, darbo krūvis sustabdomas tvarkingai.

Clock, random, filesystem, network, environment, stdio, process, custom. Default deny.

Pagal numatytuosius nustatymus draudžiantis galimybių rinkinys kontroliuoja kiekvieną priegloboje vykdomą iškvietimą aštuoniose WASI srityse. Atminties, „kuro“ (fuel) ir laiko ištekliai riboja nevaldomą elgesį. Kiekvienas vartų sprendimas ir išteklių nuskaitymas įrašomas į stenogramą.

Jums reikia kriptografinio įrodymo, ką darbo krūvis iš tikrųjų atliko, o ne pasitikėjimo vykdymo aplinka.

Pasitikėkite vykdymo aplinka, o ne darbo krūviu

Leidžiama failų sistema, draudžiamas tinklas, bet audito sekoje nėra kiekvieno iškvietimo įrašo.

Slankiojo kablelio skaičiavimai ir sieninis laikas „prasiskverbia“. Pakartotinis atkūrimas duoda apytiksliai tokį patį rezultatą, ne visiškai tikslų.

Smėlio dėžė sustabdo pabėgimą. Ji neįrodo, kad darbo krūvis viduje elgėsi teisingai.

Įprastos smėlio dėžės sustabdo blogo kodo pabėgimą. Jos nesukuria įrašo apie tai, ką kodas iš tikrųjų atliko viduje. Kai auditorius klausia, atsakymas yra tvirtinimas, o ne įrodymas.

Selvedge tiksliai užfiksuoja, kas buvo vykdoma – nuo įvesties iki išvesties, kiekvienas priegloboje vykdomas iškvietimas užantspauduotas.

Ledger fiksuoja, kas įvyko sistemoje. Selvedge fiksuoja, koks kodas buvo vykdytas.

AION išduoda sertifikatus dėl sprendimo žingsnių, o ne dėl vykdymo eigų.

Kuo Selvedge skiriasi nuo AION ir Ledger

Tie patys įvesties duomenys ir tas pats apvalkalas visada lemia tą patį rezultatą.

Fiksuota epocha ir sėklinis ChaCha20 PRNG pakeičia pagrindinio kompiuterio laiką ir entropiją.

Vidiniai skaičiavimai, saugojimas ir kaupimas naudoja dvejetainį, sveikųjų skaičių, fiksuoto kablelio arba adaptyvų sveikųjų skaičių / fiksuoto kablelio atvaizdavimą. Slankiojo kablelio skaičiai priimami tik deklaruotoje išorinėje riboje ir prieš pradedant vidinį darbą yra aiškiai konvertuojami; nėra vidinio slankiojo kablelio atsarginio varianto. Virtualus laikrodis lieka fiksuotas, todėl atkūrimas sukuria tuos pačius baitus.

Nėra vidinių slankiojo kablelio skaičių, nėra laikrodžių

Pagal nutylėjimą deterministinis vykdymas

Tikrintojas atkuria neprisijungęs naudodamas tik modulio baitus ir apvalkalą.

ed25519 para virš voko šaknies. Ne proza.

Kiekvienas pagrindinio kompiuterio iškvietimas įtrauktas į grandinę. Redagavimai nutraukia grandinę.

Tas pats srautas kiekvieną kartą vykdant. Atkūrimas yra mechaninis.

AION proof issued, ed25519 signed, envelope ready to ship.

Kiekvienas priegloboje vykdomas iškvietimas ir rezultatas maišuojamas į SHA3-256 grandinę.

Wasmtime arba Kera vykdomas pagal numatytuosius nustatymus draudžiančioje smėlio dėžėje.

Module loaded, capabilities pinned, resource caps applied.

Selvedge vykdo WASM arba Kera kodą pagal numatytuosius nustatymus draudžiančioje smėlio dėžėje, maišuoja kiekvieną priegloboje vykdomą iškvietimą į SHA3-256 stenogramos grandinę ir įtraukia rezultatą į pasirašytą AION įrodymo voką. Vokas gali būti atkurtas be pradinės smėlio dėžės.

Selvedge yra deterministinis WebAssembly smėlio dėžė nepatikimam kodui. Jo leidimų manifestas ir užantspauduotas protokolas veikia jūsų kontroliuojamoje įrangoje, todėl kita šalis gali atkurti įrašą savo mašinoje, o ginčas tampa paieška, o ne užtikrinimo užklausa.

Selvedge įdeda programą, kurios nepasirinkote, į kambarį be interneto, be kelio į jūsų failus ir be nieko, ką galėtų sužinoti apie jūsų įrenginį. Jis palieka kvitą, kuriame nurodyta, kas grįžo ir ką programai buvo leista daryti, kad galėtumėte patikrinti vėlesnį teiginį, o ne tikėti žodžiu.

SHA3-256 kiekvienam pagrindinio kompiuterio iškvietimui

Wasmtime komponentų pagrindinis kompiuteris

Selvedge vykdo kodą, kurio neparašėte, WebAssembly komponentų pagrindiniame kompiuteryje be tinklo, failų sistemos, aplinkos ar judančio laikrodžio. Kiekvienas baigtas vykdymas grąžina įrašą, kurį kita šalis gali atkurti, ir vykdymo ataskaitą, nurodančią, ką kodui buvo leista daryti. Paskelbta pagal Apache 2.0.

Vykdykite nepatikimą kodą aparatinėje įrangoje, kurią valdote.

Leidimas planuojamas kas dvi savaites. Saugykla ir jos dokumentacija pasirodo kartu.

Jis atlieka vieną mažą darbą, čia, ir niekur kitur.

Užantspauduota, kad nieko nebūtų galima pakeisti

Kambarys, kvitas ir sąrašas yra visas pažadas.

Kodas yra vykdomas su kiekvienu paleidimu.

Čia jis ateina kaip sąrašas. Kiekviena užduotis, kuri naudojo sugedusią programą, įvardija ją kodu, data ir trumpu leidimų sąrašu, kad galėtumėte pamatyti, kas buvo paveikta ir kiek tai galėjo apimti. Jei žmonės, kurie ją sukūrė, nebėra patikimi, atšaukimas įsigalioja per nustatytą atnaujinimo intervalą, o ne tada, kai baigiasi sertifikato galiojimas. Programinė įranga platinama pagal Apache 2.0 licenciją.

Įprasta šio pokalbio versija yra įvertinimas. Kažkas apskaičiuoja, kuri versija tikriausiai buvo paleista, kuriomis dienomis, kuriems žmonėms, ir atsakymas ateina kaip intervalas su išlyga. Tai palieka faktus, reikalingus pataisymo apimčiai nustatyti, kaip rekonstrukciją, o ne įrašą. Pataisymas prasideda sąrašu, kurį galima patikrinti.

Kiekviena užduotis įrašo trumpą kodą tikslios programos, kuri atliko darbą. Ne jos pavadinimą, ne versijos numerį, o pačią programą, todėl dvi versijos, turinčios tą patį pavadinimą, vis tiek turi skirtingus kodus. Jei vėliau paaiškėja, kad ta programa yra sugedusi, kodas yra tai, kaip randama kiekviena užduotis, kurią ji palietė.

Kai kas nors pasirodo esąs neteisinga, vienas kodas įvardija programą.

Prasideda nuo tos pačios švarios formos.

Pati programa kiekvieną kartą įkeliama iš naujo iš savo kodo, o kvite yra kodas tam kodui, todėl tai, kas veikė šiandien, įrodomai yra tai, kas veikė praėjusį mėnesį. Nieko nesikaupia tarp jų, dėl ko kas nors galėtų nerimauti vėliau.

Naujas Selvedge kambarys kainuoja tiek mažai, kad vienas užduočiai yra įperkamas, todėl nieko nereikia dalintis. Jei kažkas tikrai turi būti perduota, tai perduodama sąmoningai ir įraše atsiranda kaip perduotas dalykas.

Kiekviena užduotis gauna naują kambarį. Nieko iš ankstesnio jame nėra: jokių paliktų užrašų, nebaigto darbo, jokios atminties apie tai, kas prašė. Tai skamba akivaizdžiai, bet paprastai nėra tiesa, nes išlaikyti kambarį stovintį yra pigiau nei pastatyti naują, todėl dauguma sistemų išlaiko kambarį ir naudoja jį iš naujo.

Naujas kambarys yra paruoštas kitai užduočiai.

Išvestis, rezultatas ir išteklių naudojimas.

Nieko nerasti yra silpnas įrodymas, nes priklauso nuo to, kaip atidžiai kas nors ieškojo ir kiek laiko turėjo iki susitikimo. Dviejų leidimų sąrašas yra stiprus įrodymas, nes ten nebuvo nieko kito, ką būtų galima rasti.

Tai pakeičia tai, kas nutinka, kai vėliau užduodate klausimą. Vietoj to, kad kažkas peržiūrėtų, ką programa padarė, ir praneštų, kad nerado nieko įtartino, leidimų sąrašas yra čia pat ir jis trumpas.

Dauguma įrašų pasako, ką programa padarė. „Selvedge“ kvitas taip pat nurodo, ką jai buvo leista daryti, o tai yra kitas ir naudingesnis dalykas. Programa, kuriai niekada nebuvo leista prieiti prie jūsų failų, negalėjo būti prie jų priėjusi, ir tai įrašyta, nesvarbu, ar tuo metu kas nors atsitiktinai stebėjo, ar ne.