Ny modulär zk verktygslåda! ⚡ Använd den för att generera zkps från offchain-attesteringar. Flödet: - Signera/använd offchain-attestering - Generera korrektur med SP1 - Verifiera med WASM - Intyga verifieringsresultat i kedjan (valfritt) Särskilt tack till @shivansheth & @whoisgautxm (zkAttestify) för att ni bidrar med detta och till @SuccinctLabs för stöd!
Här är flödet: 1) Underteckna/tillhandahåll ett giltigt offfchain-intyg - Strukturerade attesteringar skapas med hjälp av EAS - Signerad med EIP712 - Data förblir offchain och privata. - Signaturen är verifierbar. 2) Generera ZK Bevis (SP1) - Använd SP1 zkvm för att tolka EAS-strukturen - Validerar signaturens korrekthet och logik (hårdkodad för demo) - SP1-programmet genererar Groth16- eller Plonk-bevis - Utdata inkluderar bevisfil + offentliga indata Lagringsplatsens dob-program och dob-scripts hanterar logiken. 3) Verifiera i WASM (webbläsare eller nod) - Ladda den kompilerade verifieraren - Tillhandahålla bevis + offentliga synpunkter - JS-skript kör bevisverifiering och kontrollerar logik 4) Valfritt: Bekräfta verifieringsresultat i kedjan - Skicka in zk-beviset till ett soliditetsverifieringskontrakt (groth16 verifier) - När det lyckas ringer du EAS för att utfärda en ny onchain-attestering - Schema och data är anpassningsbara (isOver18 = true) - Ger dig kontroll över utgångsdatum/återkallning/komponerbarhet - Ingen länk till det ursprungliga offchain-intyget Anteckningar - Det här flödet förutsätter att du litar på attesteraren av offchain-attesteringen. - Det går långsamt att generera Groth16/PLONK-bevis. Använd Succinct Prover Network för förbättrad effektivitet.
Den här handledningen/demon går igenom hur det fungerar på 15 minuter. Den använder ett enkelt exempel på åldersbevis. Verktygslådan är modulär så med några få justeringar kan du byta ut den mot dina egna scheman / kretslogik senare.
Besök Github
Vill du istället titta på en video från ZKAttestify-teamet?
Vill du anpassa flödet? Här är vad du ska justera: - I 'dob-program/src/main.rs' - ändra logiken (t.ex. 'degree == "CS"') - I 'dob-script/input.json' – ändra attesteringsdata och schema - I "WASM_verifier/" – verifiera alla bevis med samma struktur
Det här projektet är en referensimplementering. Det är modulärt, öppen källkod och redo att gafflas. Hjälp oss att utöka stödet för fler scheman, verifierare och användningsfall. Vi letar aktivt efter bidragsgivare och byggare som vill ta den här lagringsplatsen till nästa nivå. Sträcka sig efter! 🫡
18,51K