W3C DID
Tenzro Network implements full compliance with the W3C Decentralized Identifiers (DIDs) v1.0 specification, enabling standards-based identity interoperability across blockchain networks and traditional systems. All Tenzro identities can be exported as W3C DID Documents and resolved through standard DID resolution protocols.
W3C DID Specification Overview
The W3C DID specification defines a standard format for decentralized identifiers that are verifiable, persistent, and do not require centralized registration authorities. DIDs enable entities to prove control over their identifiers using cryptographic proofs rather than trusted intermediaries.
A DID is a URI that associates a DID subject with a DID Document, which contains metadata about the subject including verification methods, service endpoints, and controller relationships. The general DID URI syntax is:
Tenzro Network registers two DID methods with the W3C DID Specification Registries: did:tenzro: for TDIP identities and did:pdis: for PDIS identities.
Tenzro DID Methods
did:tenzro: Method
The did:tenzro: method is the primary DID method for Tenzro Network, supporting both human and machine identities through TDIP:
The method-specific identifier uses UUID v4 or v7 format, ensuring global uniqueness and preventing collisions across the network. Controller references in machine identities can point to any valid Tenzro DID (human or machine), enabling multi-level delegation hierarchies.
did:pdis: Method
The did:pdis: method provides backward compatibility with the PDIS standard:
Both methods are registered with identical resolution semantics, verification method types, and service endpoint formats. Applications can use either method interchangeably, with cross-method references fully supported.
DID Document Structure
A W3C DID Document for a Tenzro identity contains comprehensive metadata enabling cryptographic verification and service discovery:
Document Properties
@context: Defines the JSON-LD context for semantic interpretation. Tenzro includes the W3C DID v1 context, Ed25519 cryptographic suite context, and a custom Tenzro identity context for protocol-specific extensions.
id: The DID of the subject. This is the primary identifier for resolution and verification.
controller: The DID(s) that control this identity. For human identities, this is typically self-referential. For machine identities, this references the controlling human or parent machine.
alsoKnownAs: Alternative identifiers for the same subject. Tenzro uses this to link TDIP and PDIS identities, enabling cross-standard resolution.
verificationMethod: Cryptographic public keys or other verification material. Tenzro supports Ed25519, Secp256k1, and BLS12-381 key types.
authentication: Verification methods that can be used to authenticate as this DID subject.
assertionMethod: Verification methods for signing credentials and other assertions.
service: Service endpoints for interacting with the DID subject, such as wallet interfaces, messaging services, or AI inference endpoints.
DID Resolution
DID resolution is the process of retrieving a DID Document given a DID. Tenzro implements the W3C DID Resolution specification with blockchain-anchored resolution for guaranteed persistence and availability.
Resolution Protocol
Tenzro provides multiple resolution interfaces for different use cases:
All resolution methods return the same W3C-compliant DID Document format. Resolution metadata includes creation timestamp, update timestamp, proof type, and blockchain anchor information.
Resolution Metadata
Tenzro resolution responses include extended metadata beyond the core W3C specification:
Verification Methods
Tenzro supports multiple cryptographic suite types for verification methods, enabling interoperability with different blockchain ecosystems and cryptographic standards.
Ed25519 Keys
Ed25519 is the default and recommended key type for Tenzro identities. It provides strong security (~128-bit) with compact signatures and fast verification:
The public key is encoded using multibase with base58-btc encoding (z prefix). This format is compact, URL-safe, and widely supported across W3C credential ecosystems.
Secp256k1 Keys
Secp256k1 keys enable compatibility with Ethereum and Bitcoin ecosystems:
BLS12-381 Keys
BLS keys support signature aggregation for threshold signatures and multi-signature schemes:
Service Endpoints
Service endpoints describe how to interact with the DID subject. Tenzro defines several standard service types for network operations:
TenzroWallet Service
MessagingService
InferenceService (Machine Identities)
Creating DID Documents
DID Documents are automatically generated when registering a new identity through any Tenzro interface. The document is constructed from the identity registration parameters and cryptographic key material:
Updating DID Documents
DID Documents can be updated to add new verification methods, service endpoints, or modify controller relationships. Updates are versioned and anchored to the blockchain:
Each update increments the document version and records a new blockchain transaction. Old versions remain available for historical auditing through versioned resolution.
Cross-Chain DID Resolution
Tenzro DIDs can reference identities and verification methods across multiple blockchain networks. This enables unified identity management while leveraging different chains for specific operations:
The blockchainAccountId property follows the CAIP-10 standard for blockchain account identification, enabling verification of signatures and transactions across multiple chains using a single DID.
DID Document Validation
All Tenzro DID Documents undergo validation before blockchain anchoring to ensure compliance with W3C specifications and Tenzro security requirements:
Structure Validation: Document conforms to JSON-LD schema with required properties (id, controller, verificationMethod).
Cryptographic Validation: All verification methods include valid public key material in the correct encoding format.
Controller Authorization: Only the current controller(s) can modify the DID Document. Update transactions must be signed by an authorized verification method.
Service Endpoint Validation: All service endpoints use valid URIs with supported protocols (https, wss, ipfs).
Privacy Considerations
DID Documents are public by design, enabling verification without coordination. However, Tenzro implements privacy-preserving features to protect sensitive identity data:
Minimal Disclosure: DID Documents contain only verification material and service endpoints. Personal information (names, addresses, KYC data) is stored in separate verifiable credentials that can be selectively disclosed.
Pairwise DIDs: Users can create multiple DIDs for different contexts, preventing correlation across services.
Off-Chain Service Discovery: Sensitive service endpoints can be exchanged off-chain rather than published in the DID Document.