AFFIXIO
Noir circuits
Noir circuits for eligibility predicates
Business eligibility is often a predicate: old enough, member of programme, within limit. AffixIO uses Noir circuits so those predicates can be proved without shipping raw attributes to every verifier.
Definition
Noir eligibility circuits encode policy predicates as zero-knowledge circuits that verify to a signed allow or deny without revealing underlying attributes at the gate.
Field note. Hand-coded eligibility checks produce deny rates your team cannot explain. Circuits make predicates inspectable and testable.
Catalogue first
Start with the published circuit catalogue. health_age and yes/no style predicates cover common gates. Custom circuits follow when catalogue options do not fit.
Issue proofs upstream. Verify at the boundary. AffixIO signs the outcome with ML-DSA-65 and attaches Merkle audit references.
Engineering practice
Version circuits. Record which version authorised a decision. Use the circuit picker tool when exploring options.
Keep witnesses with the issuer. Verifiers should not become attribute warehouses.
Rollout notes for Noir eligibility circuits
For Noir eligibility circuits, provision sandbox circuits that mirror production predicates before you expose live agent traffic. Capture sample allow and deny payloads for regression tests.
Keep identity and rich attributes with the issuer. Verifiers receive outcomes and Merkle metadata only. Sync audit refs to your SIEM or order store after the gate returns.
Edge constraint
Rules scattered in application code
When every service re-implements eligibility in application logic, behaviour drifts and auditors cannot point to a single verifiable rule artefact.
Logic drift
Two services disagree on the same business rule.
Attribute leakage
Services pull more fields than the predicate needs.
Hard audits
No stable circuit version to cite in evidence packs.
Sandbox first
Noir circuits for eligibility predicates you can audit
Eligibility logic buried in application code drifts from policy and cannot be replayed by auditors. Noir circuits express predicates as verifiable proofs with deterministic allow or deny at the boundary.
Pick a catalogue circuit
Or define a custom predicate.
Issue proofs at source
Attribute holder proves the circuit.
Verify at gates
Signed allow or deny.
Version in audit
Record circuit identity with Merkle refs.
Evidence checklist
Readiness checks for Noir eligibility circuits
- List eligibility rules currently in app code.
- Match to catalogue circuits where possible.
- Document circuit versions in runbooks.
- Confirm zero PII at verifiers.
- Exercise circuits in the sandbox.
Audit FAQ
Questions on Noir eligibility circuits
Where is the catalogue?
/docs/circuits and related docs.
Must every rule be ZK?
No. Use circuits when attribute minimisation matters.
Can we write custom circuits?
Yes, under agreed engineering process. Start with catalogue matches.
What signs the outcome?
ML-DSA-65 on AffixIO verification outcomes.
Tooling links
Pages that support Noir eligibility circuits
Privacy and identity
More privacy and identity briefs
Compile eligibility predicates in Noir
Deploy test circuits in sandbox, then attach verify to your eligibility boundary with Merkle audit.