Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
LABS
Glossary

Verification Method

A Verification Method is a set of parameters within a Decentralized Identifier (DID) document that specifies how to verify a cryptographic proof, such as a digital signature, for purposes like authentication or assertion.
Chainscore © 2026
definition
DID & VC GLOSSARY

What is a Verification Method?

A verification method is a cryptographic mechanism defined within a Decentralized Identifier (DID) document that specifies how to authenticate the DID controller or prove control of the DID.

In the context of Decentralized Identifiers (DIDs) and Verifiable Credentials (VCs), a verification method is a critical data structure that binds a public key, or other cryptographic material, to a DID. It is declared within a DID document and serves as a trusted reference point for cryptographic operations. Common types include public keys for digital signatures (e.g., Ed25519VerificationKey2020), cryptographic suites for linked data proofs, or even biometric templates. Each method is identified by a unique fragment identifier, such as #key-1, allowing it to be referenced in proofs and authentication protocols.

The primary function of a verification method is to enable authentication and assertion. For authentication, it allows the DID controller to prove they are the entity associated with the DID, typically by signing a challenge with the corresponding private key. For assertion, it enables the creation of verifiable data, such as signing a Verifiable Credential. The DID document can list multiple verification methods for different purposes (e.g., authentication, assertionMethod, keyAgreement), providing flexibility and enabling key rotation without changing the core DID itself.

From a technical perspective, a verification method is defined using properties like id, type, controller, and publicKeyJwk or publicKeyMultibase. The type property specifies the cryptographic suite, which dictates the algorithms used for signing and verification. This standardization, governed by the W3C DID Core specification, ensures interoperability across different DID methods and verifiable data registries. Proper implementation is essential for establishing trust in decentralized identity ecosystems without relying on centralized certificate authorities.

how-it-works
BLOCKCHAIN IDENTITY

How a Verification Method Works

A verification method is a cryptographic mechanism that defines how a controller of a decentralized identifier (DID) can prove control, typically by signing data with a private key.

In decentralized identity systems like those described by the W3C DID Core specification, a verification method is a set of parameters that enables cryptographic verification. It is a core component of a DID Document, which acts as a public, machine-readable profile for a DID. Each method specifies a public key, its type (e.g., Ed25519VerificationKey2020, EcdsaSecp256k1VerificationKey2019), its controller, and its intended purpose, such as authentication or assertionMethod. This structure allows any verifier to look up the correct public key to validate a digital signature.

The operational flow involves three parties: the holder (entity proving control), the verifier (entity requesting proof), and the verifiable data registry (e.g., a blockchain). When a verifier requests proof, the holder creates a verifiable presentation containing a signed verifiable credential. The signature is generated using the private key corresponding to the public key listed in the verification method. The verifier then fetches the DID Document from the registry, locates the appropriate verification method by its ID, and uses the listed public key to cryptographically verify the signature's authenticity.

Different verification methods support various cryptographic suites and use cases. For authentication, the method proves the holder controls the DID during a login flow. For assertionMethod, it signs verifiable credentials. An keyAgreement method enables encrypted communication. A single DID Document can contain multiple verification methods, allowing for key rotation where an old key is deprecated and a new one is added, or for supporting different cryptographic algorithms for compatibility. This flexibility is fundamental to creating resilient, user-controlled digital identities.

key-features
BLOCKCHAIN GLOSSARY

Key Features of a Verification Method

A verification method is a defined procedure for cryptographically proving control over a decentralized identifier (DID). These are the core technical components that enable trust and authentication in decentralized systems.

01

Cryptographic Proof

At its core, a verification method provides a mechanism for creating digital signatures or zero-knowledge proofs. This allows the controller of a DID to prove ownership without revealing private keys. Common algorithms include Ed25519, secp256k1, and RSA. The proof is verified against the public key material published in the associated DID Document.

02

DID Document Binding

A verification method is explicitly listed within a DID's Document. This document, resolvable via the DID's method-specific scheme, acts as a public directory. The binding includes:

  • The public key (e.g., in JWK or multibase format).
  • The controller of the key.
  • The type of verification relationship (e.g., authentication, assertion).
03

Verification Relationships

A single verification method can be used for multiple purposes, defined by specific verification relationships in the DID Document. Key relationships include:

  • Authentication: Proving control of the DID to log in or access services.
  • Assertion: Signing verifiable credentials or claims.
  • Key Agreement: Establishing encrypted communication channels.
  • Capability Invocation: Authorizing changes to the DID Document itself.
04

Decentralized & Portable

Unlike traditional PKI tied to centralized certificate authorities, verification methods are self-sovereign. The controller manages their keys independently. This enables portability; identities and their associated verification proofs are not locked into a single platform or silo, aligning with the principles of decentralized identity.

05

Key Rotation & Revocation

A critical feature is the ability to securely rotate (update) and revoke compromised keys. This is managed by updating the DID Document, often requiring a signature from a separate capability invocation key. Proper key lifecycle management is essential for maintaining long-term security without losing the persistent identifier (the DID).

06

Example: Ethereum Address as a Method

In the did:ethr method, a common verification method is an Ethereum account address. The controller proves ownership by signing a challenge with the corresponding private key. The DID Document, stored on-chain or on IPFS, contains this address, allowing any verifier to check the signature against the on-chain state or the resolved document.

common-types
PROOF MECHANISMS

Common Types of Verification Methods

Blockchain networks rely on specific consensus mechanisms to verify transactions and secure the ledger. These methods define how nodes agree on the state of the network.

03

Proof of Authority (PoA)

A consensus model where a limited number of pre-approved, reputable nodes (validators) are granted the authority to validate transactions and create blocks. Identity and reputation are the staked assets.

  • Key Feature: High throughput and efficiency, suitable for private or consortium blockchains.
  • Use Case: Enterprise networks, testnets (like Goerli), and supply chain solutions.
  • Trust Model: Relies on the legal identity and reputation of validators.
05

Proof of Space (PoSpace) / Proof of Capacity

A consensus mechanism where miners allocate disk space to the network instead of computational power. The probability of mining a block is proportional to the amount of storage space committed.

  • Key Feature: Utilizes hard drive space, which is more energy-efficient than PoW.
  • Example: Chia Network is the most prominent implementation.
  • Process: Involves "plotting" disks with cryptographic data and "farming" to find solutions.
06

Delegated Proof of Stake (DPoS)

A democratic variant of Proof of Stake where token holders vote to elect a small set of delegates (or witnesses) to validate transactions and produce blocks on their behalf.

  • Key Feature: Aims for faster block times and higher scalability through representative validation.
  • Governance: Voters can replace underperforming delegates.
  • Examples: EOS, TRON, and Steem use variations of DPoS.
structure-in-did-document
VERIFICATION METHOD

Structure in a DID Document

A verification method is a core data structure within a Decentralized Identifier (DID) document that defines the cryptographic material and protocols a DID controller uses to prove control and authenticate interactions.

A verification method is a JSON object within a DID document that specifies the public key, cryptographic suite, or other verification mechanism associated with the DID. It is uniquely identified by a fragment identifier, such as #key-1, appended to the DID. Common types include Ed25519VerificationKey2020 for EdDSA keys and JsonWebKey2020 for JWK format keys. This structure is the foundation for all cryptographic proofs, enabling actions like creating verifiable credentials and signing verifiable presentations. Without a declared verification method, a DID cannot be used for authentication or authorization.

The primary purpose of a verification method is to enable authentication and assertion method relationships. When a DID document's authentication or assertionMethod property references a verification method's ID, it authorizes that key to prove control of the DID or to issue verifiable claims, respectively. This separation of the verification method definition from its usage allows for flexible key management. A single key can serve multiple purposes, or different keys can be designated for specific roles, enhancing security through the principle of least privilege.

Verification methods support a wide range of cryptographic suites beyond simple public keys. They can represent blockchain account addresses, biometric templates, or even pointers to external cryptographic services. The type property determines how the public key material is encoded in the publicKeyJwk or publicKeyMultibase fields. This extensibility is governed by the W3C DID Core specification and registered DID Specification Registries, ensuring interoperability across different DID methods and trust ecosystems while allowing for future cryptographic innovations.

Managing verification methods is critical for key rotation and revocation. A DID controller can add new verification methods to a DID document and update the authentication references to deprecate old keys without changing the core DID identifier. This process, executed via a DID Document Update operation on the underlying blockchain or ledger, provides a secure mechanism for recovering from key compromise. Best practices involve maintaining multiple active verification methods to ensure continuity of service and to facilitate seamless cryptographic agility over time.

DID SPECIFICATION

Verification Relationships & Their Purpose

A comparison of the four primary verification relationships defined in a DID document, detailing their cryptographic intent and typical use cases.

Verification RelationshipCryptographic PurposePrimary Use CaseCommonly Used For

Authentication

Prove control of the DID

Signing into systems, proving identity

WebAuthn, OIDC, login flows

Assertion Method

Sign verifiable credentials

Issuing attestations and claims

VC issuance, digital diplomas, certificates

Key Agreement

Establish encrypted channels

Secure message encryption

E2E encrypted messaging, key derivation

Capability Invocation

Authorize blockchain operations

Signing transactions, invoking smart contracts

Token transfers, contract interactions, governance

Capability Delegation

Delegate authority to another party

Granting permissions, creating proxies

Access delegation, authorized agents

ecosystem-usage
DID COMPONENTS

Ecosystem Usage and DID Methods

A Verification Method is a core component of a Decentralized Identifier (DID) that defines how to cryptographically authenticate the DID controller. It is a set of parameters, including a public key, that can be used to verify proofs like digital signatures.

01

Core Definition & Structure

A Verification Method is a JSON object within a DID Document that specifies the mechanism for cryptographic verification. Its key properties are:

  • id: A unique URI, often the DID plus a fragment (e.g., did:example:123#key-1).
  • type: The cryptographic suite type (e.g., JsonWebKey2020, Ed25519VerificationKey2020).
  • controller: The DID that controls this method.
  • publicKeyJwk or publicKeyMultibase: The actual public key material in a specified format.

It is the foundational element for proving control of a DID.

02

Relationship to Authentication

A Verification Method is referenced by the authentication property of a DID Document. This creates a formal link between the DID subject and the proof mechanism.

  • The authentication array contains IDs of Verification Methods (e.g., ["did:example:123#key-1"]).
  • This separation allows a single key (Verification Method) to be used for multiple purposes (e.g., authentication and assertion).
  • It enables key rotation: a new Verification Method can be added and referenced in authentication, deprecating the old one without changing the core DID.
03

Common Cryptographic Types

The type field defines the cryptographic algorithm and key format. Common types include:

  • JsonWebKey2020: A JWK (JSON Web Key) format, versatile for RSA, EC, or OKP key types.
  • Ed25519VerificationKey2020: For Ed25519 signature schemes using multibase-encoded keys.
  • EcdsaSecp256k1VerificationKey2019: For the secp256k1 curve common in blockchain contexts.
  • X25519KeyAgreementKey2020: For key agreement (encryption) using X25519.

Each type dictates how the public key is encoded and which verification algorithms are valid.

04

Usage in Verifiable Credentials

Verification Methods are critical for Verifiable Credentials (VCs). When an issuer signs a VC, they use the private key corresponding to a Verification Method in their DID Document.

  • A verifier fetches the issuer's DID Document.
  • Locates the correct Verification Method via its id (found in the VC proof).
  • Uses the public key and type from that method to cryptographically verify the signature on the credential.

This process establishes trust without centralized certificate authorities.

05

Key Rotation & Revocation

Verification Methods enable secure key management lifecycle events:

  • Rotation: Add a new Verification Method to the DID Document and update the authentication or assertionMethod references. The old method remains in the document but is no longer referenced, providing an audit trail.
  • Revocation: Remove the method's ID from the relevant purpose arrays (e.g., authentication). Some DID methods also support explicit revocation via a DID Document deactivation.

This mechanism is essential for long-lived identifiers, allowing recovery from key compromise.

06

Method-Specific Implementations

Different DID Methods (e.g., did:ethr, did:key, did:web) handle Verification Method resolution differently:

  • did:key: Embeds the public key directly in the DID itself; the DID Document is generated deterministically and contains a single Verification Method.
  • did:ethr: Uses Ethereum addresses; Verification Methods are often EcdsaSecp256k1RecoveryMethod2020 types, allowing verification via standard Ethereum signed messages.
  • did:web: Relies on fetching a JSON document from a web URL; the Verification Methods are as defined in that hosted document.

The method dictates how the Verification Method's data is anchored and discovered.

security-considerations
VERIFICATION METHOD

Security Considerations

A verification method is a cryptographic mechanism used to prove control over a digital identifier, such as a blockchain address. Its security is paramount for protecting assets and identity.

01

Key Management & Storage

The security of a verification method depends entirely on the protection of its private key. Common vulnerabilities include:

  • Hot Wallet Storage: Keys stored on internet-connected devices are susceptible to malware and phishing.
  • Insecure Backups: Writing keys on paper or in plaintext files creates physical and digital exposure risks.
  • Lack of Multi-Signature: Relying on a single key is a single point of failure. Best practices involve hardware wallets, multi-party computation (MPC), and secure, encrypted backups.
02

Social Engineering & Phishing

Attackers often bypass cryptography by targeting the user directly. Common threats include:

  • Fake Websites: Mimicking legitimate dApp interfaces to steal seed phrases.
  • Impersonation: Posing as support staff in forums or social media to request private keys.
  • Transaction Manipulation: Tricking users into signing malicious transactions that drain assets. Defense requires user education, verifying URLs, and using wallet features that decode transaction intent before signing.
03

Implementation Flaws

Bugs in the code that implements the verification logic can create critical vulnerabilities.

  • Signature Malleability: Flaws where a valid signature can be altered without invalidating it, historically exploited in Bitcoin.
  • Nonce Reuse: Reusing a nonce in ECDSA can lead to private key leakage.
  • Improper Curve Parameters: Using non-standard or weak elliptic curves compromises cryptographic strength. Mitigation involves rigorous audits, formal verification, and using well-vetted, standard libraries.
04

Decentralized Identifier (DID) & Revocation

For DIDs, a compromised verification method must be revoked and replaced. Security considerations include:

  • Revocation Registry: The mechanism (e.g., a smart contract, ledger entry) that publicly records revoked keys must be tamper-proof.
  • Recovery Methods: Secure processes for regaining control of a DID after key loss, avoiding central points of control.
  • Key Rotation: The ability to proactively update to new cryptographic keys without losing the persistent identifier.
05

Quantum Resistance

Most current verification methods (ECDSA, EdDSA) are vulnerable to attacks from sufficiently powerful quantum computers. This future threat necessitates:

  • Post-Quantum Cryptography (PQC): Algorithms like CRYSTALS-Dilithium that are believed to be secure against quantum attacks.
  • Agility: Designing systems where verification methods can be upgraded to PQC standards without breaking the underlying identifier.
  • Hybrid Schemes: Using a combination of classical and post-quantum signatures during the transition period.
06

Protocol-Level Assumptions

Verification methods rely on the security of the underlying blockchain or ledger.

  • 51% Attacks: On proof-of-work chains, an attacker controlling majority hash power could censor or reorganize transactions, undermining verification.
  • Finality & Reorgs: Methods assuming instant finality are risky on chains with long reorg depths.
  • Smart Contract Vulnerabilities: If verification is delegated to a smart contract (e.g., a multisig), that contract's security becomes critical.
VERIFICATION METHOD

Frequently Asked Questions (FAQ)

Common questions about blockchain verification methods, the cryptographic processes that secure transactions and establish trust without intermediaries.

A verification method is the specific cryptographic mechanism a blockchain network uses to validate transactions and achieve consensus on the state of the ledger. It defines the rules for how network participants prove they have the authority to act, such as spending funds or proposing new blocks. The two primary categories are Proof of Work (PoW), which uses computational puzzles, and Proof of Stake (PoS), which uses staked cryptocurrency as collateral. The chosen method directly impacts the network's security, decentralization, and energy consumption. Other methods include Proof of Authority (PoA) and Delegated Proof of Stake (DPoS), each with different trust and performance characteristics.

ENQUIRY

Get In Touch
today.

Our experts will offer a free quote and a 30min call to discuss your project.

NDA Protected
24h Response
Directly to Engineering Team
10+
Protocols Shipped
$20M+
TVL Overall
NDA Protected Directly to Engineering Team
Verification Method in Decentralized Identity (DID) | ChainScore Glossary