Nowy modułowy zestaw narzędzi zk! ⚡ Użyj go do generowania zkps z offchainowych zaświadczeń. Przebieg: - Podpisz/użyj offchainowego zaświadczenia - Generuj dowody za pomocą SP1 - Weryfikuj za pomocą WASM - Potwierdź wynik weryfikacji onchain (opcjonalnie) Szczególne podziękowania dla @shivansheth i @whoisgautxm (zkAttestify) za wkład w ten projekt oraz dla @SuccinctLabs za wsparcie!
Oto przebieg: 1) Podpisz/udostępnij ważną offchain attestation - Strukturalne attestation jest tworzone za pomocą EAS - Podpisane z EIP712 - Dane pozostają offchain i prywatne. - Podpis jest weryfikowalny. 2) Wygeneruj ZK Proof (SP1) - Użyj SP1 zkvm do analizy struktury EAS - Weryfikuje poprawność podpisu i logikę (hardcodowane na potrzeby demonstracji) - Program SP1 generuje dowody Groth16 lub Plonk - Wyjście zawiera plik dowodu + publiczne dane wejściowe Repozytorium dob-program i dob-scripts obsługuje logikę. 3) Weryfikacja w WASM (przeglądarka lub Node) - Załaduj skompilowany weryfikator - Podaj dowód + publiczne dane wejściowe - Skrypt JS uruchamia weryfikację dowodu i sprawdza logikę 4) Opcjonalnie: Potwierdzenie wyniku weryfikacji onchain - Prześlij dowód zk do kontraktu weryfikatora solidity (weryfikator groth16) - W przypadku sukcesu, wywołaj EAS, aby wydać nowe onchain attestation - Schemat i dane są dostosowywalne (isOver18 = true) - Daje ci kontrolę nad wygaśnięciem/odwołaniem/kompozycyjnością - Brak powiązania z oryginalnym offchain attestation Uwagi - ten przebieg zakłada, że ufasz wystawcy offchain attestation. - generowanie dowodów groth16/plonk jest wolne. Użyj Succinct Prover Network dla lepszej wydajności.
Ten samouczek/demo przeprowadzi Cię przez to, jak to działa w 15 minut. Używa prostego przykładu dowodu wieku. Zestaw narzędzi jest modułowy, więc po kilku zmianach możesz wymienić go na własne schematy/logikę obwodu później.
Odwiedź Github
Chcesz zamiast tego obejrzeć wideo od zespołu ZKAttestify?
Chcesz dostosować przepływ? Oto co należy zmienić: - W `dob-program/src/main.rs` – zmień logikę (np. `degree == "CS"`) - W `dob-script/input.json` – zmień dane i schemat poświadczenia - W `WASM_verifier/` – zweryfikuj dowód o tej samej strukturze
Ten projekt jest referencyjną implementacją. Jest modułowy, otwartoźródłowy i gotowy do forku. Pomóż nam rozszerzyć wsparcie dla większej liczby schematów, weryfikatorów i przypadków użycia. Aktywnie poszukujemy współpracowników i twórców, którzy chcą wynieść to repozytorium na wyższy poziom. Skontaktuj się z nami! 🫡
18,49K