Proof Verification Policy Reference

This reference documents the proof verification policy for the verifier service. The proof policy validates the cryptographic signatures and proofs associated with credentials and presentations to ensure their authenticity and integrity.

Policy Overview

The proof verification policy is essential for establishing trust in digital credentials by cryptographically verifying that the credential was signed by the claimed issuer and has not been tampered with since issuance. This verification is a core component of the trust model for verifiable credentials.

Supported Standards

The proof verification policy supports cryptographic validation across multiple standards:

StandardOrganizationSpecificationProof TypeValidation Aspect
Data Integrity BBS CryptosuitesW3CVC DI BBSbbs-2023Validates zero-knowledge proofs with selective disclosure
Data Integrity ECDSA CryptosuitesW3CVC DI ECDSAecdsa-jcs-2019, ecdsa-rdfc-2019Confirms ECDSA signatures with P-256/secp256k1
Data Integrity EdDSA CryptosuitesW3CVC DI EdDSAeddsa-2022Verifies Ed25519 signatures with high performance
ISO Mobile Driving LicenseISOISO 18013-5:2021mDL signaturesVerifies mobile credential signatures per ISO standard
JOSE-COSEW3CJOSE-COSEJOSE/COSE signaturesValidates JSON/CBOR object signatures and encryption
JSON Web Token (JWT)IETFRFC 7519JWT signaturesVerifies JWT signatures using JOSE algorithms
SD-JWT Verifiable CredentialIETFSD-JWT DraftSD-JWT signaturesValidates signatures with selective disclosure support
Verifiable Credential Data Integrity 1.0W3CVC Data IntegrityData Integrity proofsValidates signatures using multiple cryptosuites

Proof Verification Process

When verifying cryptographic proofs, the policy follows these steps:

  1. Proof detection - Identifies the type of proof used in the credential
  2. Issuer resolution - Resolves the issuer's DID to retrieve verification methods
  3. Key retrieval - Fetches the appropriate cryptographic keys for verification
  4. Proof validation - Verifies the cryptographic proof against the credential
  5. Result determination - Returns the verification result based on cryptographic validation

Data Integrity Proofs

The W3C Data Integrity specification defines a framework for creating and verifying cryptographic proofs for credentials. The verifier supports multiple cryptosuites:

CryptosuiteDescriptionKey AlgorithmsBest For
eddsa-2022EdDSA signaturesEd25519High-performance verification
ecdsa-jcs-2019ECDSA with JSON canonicalizationsecp256k1, P-256Cross-platform compatibility
ecdsa-rdfc-2019ECDSA with RDF canonicalizationsecp256k1, P-256Semantic web applications
bbs-2023BBS+ signaturesBLS12-381Privacy-preserving credentials
ecdsa-sd-2023ECDSA with selective disclosuresecp256k1, P-256Selective disclosure presentations

Integration with Resolver

The proof verification policy depends on the resolver service to:

  1. Resolve DIDs to DID documents
  2. Retrieve verification methods (public keys)
  3. Validate proof chains for nested proofs
  4. Support multiple DID methods

Configuration

The proof verification policy offers various configuration options that control its behavior, including:

  • Enabling or disabling proof verification via the skip property
  • Configuring supported proof formats and cryptosuites
  • Setting verification method resolution options
  • Controlling validation behavior for different credential types
  • Specifying accepted signing algorithms

For detailed configuration options, parameters, and default values, see the Verifier Configuration Reference.