Nou set modular zk! ⚡ Utilizați-l pentru a genera zkps din atestări offchain. Fluxul: - Semnare/utilizare atestare offchain - Generați demonstrații cu SP1 - Verificați cu WASM - Atestat rezultatul verificării onchain (opțional) Mulțumiri speciale @shivansheth & @whoisgautxm (zkAttestify) pentru contribuția la acest lucru și @SuccinctLabs pentru sprijin!
Iată fluxul: 1) Semnează/furnizează o atestare validă offfchain - Atestările structurate sunt create folosind EAS - Semnat cu EIP712 - Datele rămân în afara lanțului și private. - Semnătura este verificabilă. 2) Generați dovada ZK (SP1) - Utilizați SP1 zkvm pentru a analiza structura EAS - Validează corectitudinea și logica semnăturii (codificat pentru demo) - Programul SP1 generează dovezi Groth16 sau Plonk - Ieșirea include fișier de dovadă + intrări publice Programul dob-program și scripturile dob ale depozitului se ocupă de logică. 3) Verificați în WASM (browser sau nod) - Încărcați verificatorul compilat - Furnizați dovezi + contribuții publice - Scriptul JS rulează verificarea dovezii și verifică logica 4) Opțional: Atestat rezultatul verificării onchain - Trimiteți dovada zk la un contract de verificare de soliditate (verificator groth16) - În caz de succes, sunați la EAS pentru a emite o nouă atestare onchain - Schema și datele sunt personalizabile (isOver18 = true) - Vă oferă control asupra expirării/revocării/compoziției - Fără legătură cu atestarea originală offchain Note - Acest flux presupune că aveți încredere în atestatorul offchain. - Generarea dovezilor Groth16/PLONK este lentă. Utilizați rețeaua Succinct Prover pentru o eficiență îmbunătățită.
Acest tutorial/demo vă va ghida prin modul în care funcționează în 15 minute. Folosește un exemplu simplu de dovadă a vârstei. Setul de instrumente este modular, astfel încât cu câteva modificări îl puteți schimba cu propriile scheme / logica circuitului mai târziu.
Vizitați Github
Vrei să urmărești un videoclip de la echipa ZKAttestify?
Doriți să personalizați fluxul? Iată ce să modifici: - În 'dob-program/src/main.rs' – schimbați logica (de exemplu, 'grad == "CS"') - În 'dob-script/input.json' – modificați datele de atestare și schema - În "WASM_verifier/" – verificați orice dovadă cu aceeași structură
Acest proiect este o implementare de referință. Este modular, open source și gata de bifurcare. Ajutați-ne să extindem suportul pentru mai multe scheme, verificatoare și cazuri de utilizare. Căutăm în mod activ contribuitori și constructori care doresc să ducă acest depozit la nivelul următor. Întinde-te după! 🫡
18,5K