Skip to content
DRAFT⚠OIML SMART pilot programme · internal use only · all documents and specifications are drafts and may change without notice

The trust registry

The public registry of who may sign what: each organization’s signing keys and its standing, resolvable in one anonymous request, so a verifier never has to trust a deployment.

The trust registry publishes which organizations may sign what: each registered organization’s public signing keys and its standing resolve in one anonymous, cacheable request. A verifier never trusts a deployment; it resolves the signer’s key against the registry and reads the organization’s standing.

Resolve a member state’s entry →

The registry's live answer for a member state: the organization, its kind, its state, its standing, and its key set (empty until the organization enrolls keys)
The registry's live answer for a member state: the organization, its kind, its state, its standing, and its key set (empty until the organization enrolls keys) Live surface · captured 2026-08-29 by the scripted apparatus.

What it does today

  • Resolves any registered organization, anonymously. GET /op/keys/ms-de.json answers the member state’s entry: the organization, its kind, its state, its standing, and its key set. The key set is empty today: organizations’ keys populate as their own administrators enroll them, which is the trust-registry program’s current work (the capture above, dated, shows the honest empty set).
  • Refuses unknown organizations honestly. Asking for an organization that was never registered, GET /op/keys/no-such-organization.json, answers 404 with {"error":"organization 'no-such-organization' is not on the organization registry"}: the registry says so rather than guessing.
  • Signs with attributable keys on the demo stack. The demo’s seeded EX1 carries its demo signing key, and the demo certificate’s VC and SD-JWT forms sign with the demo federation key, resolvable by did:web at demo.oimlsmart.org/.well-known/did.json, so the whole resolution story is exercisable end to end against the demo today.
  • Scopes every key to its authorization. Each authority’s key is scoped to its authorized Recommendations by an X.509 v3 extension that the CNML verifier enforces, so a key answers not only “whose” but “for what”.
  • Stays verifiable offline. The resolution document is anonymous, cache-bounded, and CORS-open; a verifier with a downloaded copy resolves a signer without a network path back at verification time.

How it works

The program divides the trust question cleanly: the identity service is the root of trust for who signs, the platform is the record of what was signed, and CNML is the signed artifact. An organization’s signing keys are the organization’s property on the identity service: registered, rotated, and revoked by the organization’s own administrator, with every act on the audit chain. The CNML signer block does not change shape; the binding is by reference, a key identifier plus an organization identifier, so the frozen format is untouched.

The verifier resolves the signer's organization, key set, and standing from the registry in one anonymous request; the organization's administrator manages the keys under auditWhose key is this, and in what standingThe verifierholds a signed artifact naminga key id + an organization idno account, no call-back,cache-boundedThe trust registryon the identity serviceGET /op/keys/<org>.jsonanswers: the organization, its kind,its state, its standing, its currentpublic key setan unknown organization gets thehonest refusal, not a guessThe organization'sadministratorregisters, rotates, revokes theorganization's own keys; everyact on the audit chainThe verdictsignature sound + attributed to anaccountable organization in goodstanding when it signedthe time anchor does the honest workresolvekey set + standingadministersThe verifier never trusts a deployment; it resolves the signer against the registry.
Resolution is one anonymous, cacheable request: the verifier learns whose key this is and the organization's standing. After a revocation the time anchor still answers honestly: valid at the time, revoked since, on a stated date.

Revocation is immediate and auditable, and the time anchor does the honest work: an artifact signed before a revocation still resolves, with the answer “valid at the time; the key since revoked, on a stated date”.

Today (SMART) and the vision (SMART+)

Today · SMART

  • The resolution contract answers in production today: the organization registry and the per-kind standing are live, anonymous, and cacheable. resolve ↗
  • The honest refusal is live too: unregistered organizations get a named error, never a guess. the refusal ↗
  • The demo stack carries the full attributed chain: EX1’s demo key signs the demo certificate’s VC and SD-JWT forms, resolvable by did:web. the demo key ↗

The vision · SMART+

  • Organizations’ signing keys populate as their administrators enroll them; the registry entry’s empty key set fills in. Roadmap, tracked in the identity program. roadmap ↗
  • The attributed-issuance record: every signing act recorded with its account, its organization, its key, and its authorization context. Roadmap, landing with the key-registration program. roadmap ↗

Why it exists

A valid signature answers “is this signature mathematically sound” but not “whose key is this, and was that organization in good standing when it signed”. Without a registry, a certificate’s signing key is a deployment detail, unattributed to any accountable organization, and verification degrades into phoning the issuer. Legal metrology needs the stronger answer, attributed and auditable.

How it interops

The registry is the identity plane of the program’s dataspace work: no parallel trust framework is built, and the same resolution serves the CNML verify pipeline’s signature and scope checks. Because resolution is one cacheable document, verifiers compose it into their own pipelines without a program dependency at verify time.

Who may use it, and who may run it

Member states register; issuing authorities and test laboratories hold their organization keys; verification resolves anonymously. The determination, quoted from the program’s single entitlement source:

Member StateCorresponding MemberIssuing Authority / Test Laboratory (of a Member State)Utilizer / AssociateApplicant / public
✅ registers✅✅ their organization keys✅—

The trust registry (organization keys), quoted from the program's single entitlement source; the full matrix, all services by all member categories, lives atWho can run what.

The honest questions

Why does the member state’s entry show an empty key set? Because that is the truth today. The registry and the resolution contract are live; organizations’ keys arrive when their own administrators enroll them, and the page shows the dated capture rather than dressing the gap. The demo stack shows the populated shape end to end.

What happens to artifacts signed before a revocation? They still resolve, honestly: the required time anchor proves when the artifact existed, and the answer reads “valid at the time; the key since revoked, on a stated date”. Nothing is rewritten and nothing disappears.

Who controls an organization’s keys? The organization’s own administrator, and nobody else. Registration, rotation, and revocation are the administrator’s acts, each on the audit chain; the program operates the registry but does not hold the keys.

Try it, read it, talk to us

Resolve an organization

The live resolution contract in one anonymous request: no account, no callback, cache-bounded.

→
Open the identity service

The registry's home: organizations, memberships, and the signing-key administration console.

→
Talk to us

info@oimlsmart.org, the programme's front-door address. Key registration for your organization starts with its presence in the identity service.

→