Novo kit de ferramentas modular zk! ⚡ Use-o para gerar zkps a partir de atestados offchain. O fluxo: - Assinar/usar atestado offchain - Gerar provas com o SP1 - Verifique com WASM - Atestar o resultado da verificação onchain (opcional) Agradecimentos especiais a @shivansheth & @whoisgautxm (zkAttestify) por contribuir com isso e a @SuccinctLabs pelo apoio!
Aqui está o fluxo: 1) Assinar/fornecer um atestado offfchain válido - Os atestados estruturados são criados usando o EAS - Assinado com EIP712 - Os dados permanecem offchain e privados. - A assinatura é verificável. 2) Gerar prova ZK (SP1) - Usar o zkvm do SP1 para analisar a estrutura do EAS - Valida a exatidão e a lógica da assinatura (codificado para demonstração) - O programa SP1 gera provas Groth16 ou Plonk - A saída inclui arquivo de prova + entradas públicas O dob-program e os dob-scripts do repositório lidam com a lógica. 3) Verifique no WASM (navegador ou nó) - Carregue o verificador compilado - Fornecer provas + contribuições públicas - O script JS executa a verificação de prova e verifica a lógica 4) Opcional: Atestar o resultado da verificação onchain - Envie a prova zk para um contrato de verificador de solidez (verificador groth16) - Em caso de sucesso, chame o EAS para emitir um novo atestado onchain - O esquema e os dados são personalizáveis (isOver18 = true) - Dá a você controle sobre expiração/revogação/composição - Nenhum link para o atestado offchain original Anotações - Esse fluxo pressupõe que você confie no atestador do atestado offchain. - A geração de provas Groth16 / PLONK é lenta. Use a Rede de Provadores Sucinta para melhorar a eficiência.
Este tutorial/demonstração irá guiá-lo através de como funciona em 15 minutos. Ele usa um exemplo simples de prova de idade. O kit de ferramentas é modular, portanto, com alguns ajustes, você pode trocá-lo por seus próprios esquemas / lógica de circuito posteriormente.
Visite o Github
Quer assistir a um vídeo da equipe ZKAttestify?
Quer personalizar o fluxo? Aqui está o que ajustar: - Em 'dob-program/src/main.rs' – altere a lógica (por exemplo, 'degree == "CS"') - Em 'dob-script/input.json' – altere os dados e o esquema do atestado - 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 bifurcar. Ajude-nos a estender o suporte para mais esquemas, verificadores e casos de uso. Estamos procurando ativamente colaboradores e construtores que desejam levar este repositório para o próximo nível. Alcançar! 🫡
18,49K