The Proof Engine receives:
Inputs:
- state_commitment
- identity_root
- attribute(s) (only inside the vault)
- proof template (e.g. AgeOver18)
- policy rules
- signing key (control key)
Outputs:
- ZK Proof
- Signature (control key)
- Verifier Metadata
- Validity Window
- Optional Attestations from institutions
The verifier only sees the output, not the attributes.