← Back to Patent Claims
Patent Claim 078 All Patents →

Versioned Multi-Proof-System ZK Verifier Registry

A CircuitType × Version Matrix of Independently Swappable Verifier Contracts Spanning Groth16, PLONK, STARK and FFLONK

Patent Claim JIL Sovereign July 2026 Claim 78 of 157

Executive Summary

JIL Sovereign's zero-knowledge verifier registry centralizes every verifier contract the platform's compliance, KYC and biometric-uniqueness circuits rely on behind a single lookup surface, keyed jointly by circuit type and version number. Nine native circuit types are modeled - biometric uniqueness, biometric liveness, and six KYC/AML circuit categories - each of which can be independently upgraded, deactivated, or migrated to a different proof system without touching any of the contracts that call into it.

Because a circuit's active version advances forward monotonically while every prior version's record is preserved rather than deleted, a caller can either dispatch to "whatever is current" or explicitly pin verification to a specific historical version - letting proofs generated months earlier against a now-superseded circuit remain verifiable indefinitely, even after the circuit has moved on to a new proof system entirely.

Core Innovation: A single registry that decouples "which circuit is being proven" from "which specific verifier contract and proof system checks it," via a circuit-type-by-version matrix, so a circuit upgrade or proof-system migration never breaks a calling contract or invalidates a previously generated proof.

Problem Statement

Zero-knowledge circuits and their trusted-setup artifacts age. A discovered bug, a parameter upgrade, or a deliberate shift from one proof system to another - for example moving a circuit from a Groth16 trusted-setup construction to a setup-free PLONK construction - conventionally forces every downstream contract that hardcodes a verifier's address to be redeployed and rewired. Worse, a naive "just point at the new verifier" migration silently breaks verification of every proof already generated against the old circuit, because the new verifier's parameters don't match the proof that was produced under the old one.

9
Native circuit types spanning biometric and KYC/AML verification
4
Supported proof systems (Groth16, PLONK, STARK, FFLONK)
2
Dispatch modes: latest-version and explicitly version-pinned verification

Why Existing Solutions Are Insufficient

  • Hardcoded per-protocol verifiers: a single verifier address wired directly into calling contracts means any circuit upgrade requires migrating every caller in lockstep, with no graceful coexistence period.
  • Single proof-system deployments: committing to one proof system (Groth16-only, for example) at the protocol level forecloses using a better-suited system for a different circuit - range proofs, membership proofs, and attestation proofs each have different proof-system tradeoffs.
  • Generic verifier registries without circuit-type semantics: a flat address-to-address mapping with no circuit-type or version dimension cannot express "this is version 2 of the AML circuit using PLONK" versus "this is version 1 using Groth16" as distinct, independently addressable entries.
  • Delete-on-upgrade patterns: registries that overwrite a verifier's record on upgrade rather than preserving history make it impossible to keep verifying proofs generated against a superseded circuit version.

Technical Architecture

The Circuit Type × Version Matrix

FieldPurpose
circuitTypeWhich semantic circuit this verifier checks (see native types below)
versionMonotonic version number within that circuit type
verifierAddressThe independently deployed contract that performs the actual pairing/verification check
proofTypeGroth16 / PLONK / STARK / FFLONK - the proof system this verifier implements
circuitHashIntegrity hash of the compiled circuit, for provenance verification
activeDeactivation flips this flag; the record and its proof-count history are preserved
proofsVerifiedPer-verifier usage counter, incremented only on successful verification

Native Circuit Types

Nine circuit types are modeled out of the box: BIOMETRIC_UNIQUENESS and BIOMETRIC_LIVENESS (feeding the platform's biometric proof-of-humanity system), KYC_AGE, KYC_JURISDICTION, KYC_ACCREDITATION, AML_COMPLIANCE, SANCTIONS_CLEAR, and INCOME_THRESHOLD (feeding the compliance and KYC layers), plus a CUSTOM category for anything not yet enumerated.

Forward-Only Latest-Version Tracking

Registering a verifier for a circuit type advances that circuit's recorded "latest version" only if the newly registered version number exceeds the current latest - so registering an older version out of order (for backfill or documentation purposes) never accidentally regresses which version new callers dispatch to by default. Registering an already-existing (circuitType, version) pair is rejected outright rather than silently overwritten.

Dual Dispatch: Latest or Pinned

Callers can invoke verifyProof, which always resolves to the circuit type's current latest version, or verifyProofWithVersion, which pins verification to an explicitly named version regardless of what has since become latest. This lets historical proofs remain verifiable against the exact circuit they were generated for even after the platform has moved on to a newer version or an entirely different proof system for that circuit type.

Deactivation Without Deletion

Deactivating a verifier flips its active flag to false - callers attempting to verify against a deactivated version are rejected - but the record, its circuit hash, and its accumulated proof count remain queryable. A deactivated verifier can also be explicitly reactivated, supporting an emergency-pause-then-restore operational pattern without any loss of registry history.

Custom Circuits Keyed by Hash

For proof types outside the nine enumerated circuit categories, a parallel registration path keys a verifier directly by an arbitrary circuit hash rather than a (type, version) pair, with its own dedicated verification entry point - accommodating one-off or emerging circuit designs without requiring an enum change to the core registry.

Prior Art Differentiation

ApproachVersioned by Circuit?Multi-Proof-System?Old Proofs Stay Verifiable?Preserves History on Deactivation?
Hardcoded per-protocol verifierNoNo - single systemNo - breaks on migrationN/A
Single proof-system deploymentPartial - manual versioningNoDepends on migration disciplineDepends on implementation
Flat address-to-address registryNo circuit-type dimensionUntypedNoNo
Delete-on-upgrade registryYes, but destructiveVariesNoNo
JIL Sovereign ZKVerifierRegistryYes, CircuitType × version matrixYes, Groth16/PLONK/STARK/FFLONKYes, version-pinned dispatchYes, deactivate/reactivate

Patent Claim

Independent Claim 78: A computer-implemented zero-knowledge verifier registry comprising: a mapping keyed jointly by a circuit type and a version number, each entry associating an independently deployed verifier contract address with a proof-system identifier selected from a plurality of supported proof systems and a circuit-integrity hash; a version-tracking mechanism that advances the latest active version per circuit type only forward while preserving prior versions' records for continued verification of proofs generated against them; and a proof-dispatch function that routes an incoming proof and its public inputs to the verifier contract associated with either the latest or an explicitly specified circuit version, incrementing a per-verifier and an aggregate proof-count upon successful verification.