This repo contains:
- The
circom
implementation of the Aptos Keyless ZK relation from AIP-61 incircuit/templates/
- An implementation of a ZK proving service in
prover/
- A circom unit testing framework in
circuit/
- Some shared rust code in
keyless-common/
- A VK diff tool in
vk-diff
(see its README)
This repository uses a Git submodule for its rust-rapdisnark
dependency.
You should pull it via:
git submodule init
git submodule update
- Why is the description of
keyless-common/
set to "Aptos Keyless circuit tests" in itsCargo.toml
? - The
Cargo.toml
description ofcircuit/
also seem inappropriate - Redundant
OnChainGroth16VerificationKey
struct - Move some shared
prover
andvk-diff
code tokeyless-common
- Remove public inputs hash and do commit-and-prove
- Pedersen-based keyless addresses and avoid Poseidon hashing, except for Fiat-Shamir maybe