Referencing Trust Registry within a Verifiable Credential
Include Trust Registries and Verifiable Accreditations within the body of Verifiable Credentials.
To ensure a Verifiable Credential (VC) is not only technically valid but also issued by an authorised and trusted party, it must include metadata that links back to its origin in a trust registry.
This is done using the termsOfUse
property, where the Trusted Issuer includes an AttestationPolicy
referencing:
The Verifiable Accreditation that granted them permission
The Root Authorisation that anchors the governance framework
Why reference a trust registry?
Including a reference to a trust registry enables verifiers to:
Validate that the issuer is accredited to issue this type of credential.
Trace the credential’s trust lineage back to a Root Trusted Accreditation Organisation (rTAO).
Enforce domain-specific governance or regulatory policies.
Structure of termsOfUse
termsOfUse
The termsOfUse
field uses the AttestationPolicy
type and typically includes:
type
Must be "AttestationPolicy"
parentAccreditation
DID URL pointing to the Verifiable Accreditation that granted authority to the issuer
rootAuthorisation
DID URL referencing the original Root Authorisation for the trust chain
Example: Credential referencing its trust registry via AttestationPolicy
AttestationPolicy
What this enables
This embedded trust policy allows verifiers to:
Look up the parent accreditation and root authorisation.
Confirm that the issuer was permitted to issue the attestation type.
Automate or enforce policy-based trust decisions.
Validating Trust Chains Using TRAIN
Once a Verifiable Credential includes an AttestationPolicy
referencing the trust registry, TRAIN (TRust mAnagement INfrastructure) can be used to automatically validate the issuer’s authority against a decentralized trust chain.
What does TRAIN do?
TRAIN is a trust validator that:
Accepts a credential (or its metadata) as input.
Resolves the issuer’s accreditation.
Traverses the trust chain to the root authorisation.
Optionally checks DNS anchoring of the root DID for higher assurance.
Returns a result that confirms if the issuer is trusted under the specified framework.
TRAIN Validation Input
Here’s a simplified example of the request body TRAIN accepts:
TRAIN Validation Output
TRAIN returns a response like this:
Why use TRAIN?
Automates trust validation using standardized credential metadata.
Provides clear trust decisions for wallets, agents, and verifiers.
Enables integration with public DNS for added assurance of root DIDs.
Compatible with all credentials that follow cheqd’s trust chain model.
Last updated
Was this helpful?