Hub

The contract where everything happenson-chain

Before a user can submit a proof on-chain, the Hub ensures

  1. An allowed verifier, either a server or smart contract, has verified a VOLE-based ZKP

  2. This verifier has posted any necessary data off-chain so others can check its steps in verifying the proof

  3. Any nullifier revealed by the ZKP has not been spent

Once a proof is on-chain, the Hub sends a non-transferable ERC721 representing a SBT. The Hub also allows reading the relevant metadata pertaining to the SBT, i.e. the public values of the corresponding proof, via the method getSBT.

triangle-exclamation

For more information, you may look at the source codearrow-up-right

Last updated