Novo kit de ferramentas modular zk! ⚡ Use-o para gerar zkps a partir de atestações offchain. O fluxo: - Assinar/utilizar atestação offchain - Gerar provas com SP1 - Verificar com WASM - Atestar o resultado da verificação onchain (opcional) Agradecimentos especiais a @shivansheth e @whoisgautxm (zkAttestify) por contribuir com isso e a @SuccinctLabs pelo apoio!
Aqui está o fluxo: 1) Assinar/fornecer uma atestação offchain válida - Atestações estruturadas são criadas usando EAS - Assinadas com EIP712 - Os dados permanecem offchain e privados. - A assinatura é verificável. 2) Gerar Prova ZK (SP1) - Usar SP1 zkvm para analisar a estrutura EAS - Valida a correção da assinatura e a lógica (codificada para demonstração) - O programa SP1 gera provas Groth16 ou Plonk - A saída inclui arquivo de prova + entradas públicas Os programas dob-program e dob-scripts do repositório lidam com a lógica. 3) Verificar em WASM (Navegador ou Node) - Carregar o verificador compilado - Fornecer prova + entradas públicas - O script JS executa a verificação da prova e checa a lógica 4) Opcional: Atestar o resultado da verificação onchain - Submeter a prova zk a um contrato verificador solidity (verificador groth16) - Em caso de sucesso, chamar EAS para emitir uma nova atestação onchain - O esquema e os dados são personalizáveis (isOver18 = true) - Oferece controle sobre expiração/revogação/composibilidade - Sem ligação à atestação offchain original Notas - este fluxo assume que você confia no atestador da atestação offchain. - gerar provas groth16/plonk é lento. Use a Rede de Provas Succintas para melhorar a eficiência.
Este tutorial/demonstração irá guiá-lo sobre como funciona em 15 minutos. Ele usa um exemplo simples de prova de idade. O kit de ferramentas é modular, então com algumas alterações você pode trocá-lo por seus próprios esquemas / lógica de circuito mais tarde.
Visite o Github
Quer ver um vídeo em vez disso da equipe ZKAttestify?
Quer personalizar o fluxo? Aqui está o que ajustar: - Em `dob-program/src/main.rs` – mude a lógica (por exemplo, `degree == "CS"`) - Em `dob-script/input.json` – altere os dados de atestação e o esquema - Em `WASM_verifier/` – verifique qualquer prova com a mesma estrutura
Este projeto é uma implementação de referência. É modular, de código aberto e pronto para ser bifurcado. Ajude-nos a estender o suporte para mais esquemas, verificadores e casos de uso. Estamos ativamente à procura de colaboradores e construtores que queiram levar este repositório para o próximo nível. Entre em contato! 🫡
18,49K