Core Responsibilities
The Verifier streamlines key operations in verifying credential-based assertions:
Verification Request Management:
Generates OIDC4VP-compatible requests, including unique state and nonce values.
Specifies required credential attributes using a configurable query language.
(Optional policy) Accepts issuer allow-list as
issuerAllowedDomainsin requests or stored VP Queries (canonical HTTPS URLs; scheme required; optional:port; no query/fragment).
Credential Validation:
Checks cryptographic signatures of VCs and VPs.
Validates credential issuers against DID Documents anchored on the EMPE Blockchain.
Ensures compliance with schemas, expiration checks, and revocation lists.
W3C Domain Linkage: When an issuer DID advertises
LinkedDomains, verifies control of each origin by fetching and validating Domain Linkage Credentials from/.well-known/did-configuration.json.Allowed Domains (optional): Enforces
issuerAllowedDomainsby origin (paths accepted in config but ignored for linkage match); inputs are normalized (host case, trailing slashes) and de-duplicated.
Real-Time Communication and Feedback:
Uses SSE to provide immediate status updates throughout the verification process.
Enhances user experience by showing progress and final outcomes in real-time.
Session and Access Control:
Upon successful verification, issues tokens or triggers application-specific logic.
Supports passwordless login flows and credential-based access control.
Integration Support:
Offers both server-side and client-side libraries for easy integration with existing applications.
Adapts to diverse use cases, from simple access checks to complex multi-condition verifications.
By fulfilling these responsibilities, the Verifier simplifies the implementation of secure, privacy-respecting, and flexible authentication workflows.
Last updated