Overview

The Trust Registry Service manages ETSI trust lists for credential verification. It enables verifying whether a credential issuer is listed in an official trust list—such as an EU member state's Trusted Service List (TSL) or an industry-specific trust list.

When linked to a Verifier2 Service, the Trust Registry enables the etsi-trust-list verification policy to resolve issuer certificates against loaded trust sources without external network calls at verification time.

The Trust Registry Service is controlled by the trust-registry feature flag. Enable it by adding it to enabledFeatures in your _features.conf.

Key Capabilities

  • Multi-format trust list support — Load trust lists in TSL XML (ETSI TS 119 612), LoTE JSON (ETSI TS 119 602), or PILOT format (EWC).
  • XMLDSig signature validation — Cryptographically verify trust list authenticity.
  • Certificate resolution — Look up issuer certificates against all loaded trust sources.
  • Verifier2 integration — Link to Verifier2 for automatic trust verification during credential presentation.
  • Multi-tenant isolation — Each organization/tenant gets its own trust registry instance.

Service Dependencies

The Trust Registry Service can be linked to other services:

  • Verifier2 Service — When Verifier2 has the Trust Registry as a dependency, the etsi-trust-list policy automatically uses it for certificate resolution.

Supported Trust List Formats

FormatStandardExample
TSL XMLETSI TS 119 612Austrian TSL
LoTE JSONETSI TS 119 602Custom trust lists in JSON format
PILOTEWC ConsortiumEWC Trust List

Entity Types

Trust lists contain entities classified by their role in the credential ecosystem:

Entity TypeDescription
PID_PROVIDERPersonal ID credential issuers (mDL, national ID)
WALLET_PROVIDERAuthorized wallet applications
ATTESTATION_PROVIDERAttestation and certificate issuers
TRUST_SERVICE_PROVIDERGeneric eIDAS trust services

Trust Decision Model

When resolving a certificate, the service returns a rich decision object:

DecisionMeaning
TRUSTEDCertificate found in a valid, fresh trust source
NOT_TRUSTEDCertificate not found in any loaded trust source
STALE_SOURCECertificate found, but the trust source is outdated
UNKNOWNUnable to determine trust status

Each decision includes:

  • Authenticity state — Whether the trust list's XMLDSig signature was validated (VALIDATED, SKIPPED_DEMO, FAILED)
  • Freshness state — Whether the source is current (FRESH, STALE, EXPIRED)
  • Matched entity details — Information about the trusted entity and service that matched

Get Started

Last updated on May 6, 2026