Sign In

@peac/adapter-did

Package Overview
Dependencies
Maintainers
1
Versions
29
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@peac/adapter-did

DID document resolution for PEAC receipt verification (did:key, did:web)

next
latest
Source
npmnpm
Version
0.16.4
Version published
Weekly downloads
226
425.58%
Maintainers
1
Weekly downloads
 
Created
Source

@peac/adapter-did

DID document resolution for PEAC receipt verification. Supports did:key with zero network I/O.

Installation

pnpm add @peac/adapter-did

What It Does

@peac/adapter-did is a Layer 4 adapter that resolves W3C Decentralized Identifiers (DIDs) to Ed25519 public keys for use with verifyLocal(). It implements the DID Verification Method Selection Policy (DD-202) for deterministic key extraction.

Supports did:key (Ed25519, zero network I/O) and did:web (caller-provided SSRF-hardened HTTPS fetch). Includes TTL-based caching and composite resolver for multi-method support.

How Do I Use It?

Resolve a did:key and extract the public key

import { DidKeyResolver, extractVerificationKey } from '@peac/adapter-did';
import { verifyLocal } from '@peac/protocol';

const resolver = new DidKeyResolver();
const result = await resolver.resolve('did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK');
const publicKey = extractVerificationKey(result.didDocument!);

const verification = await verifyLocal(receiptJws, publicKey!, {
  strictness: 'strict',
});

Use a composite resolver for multiple DID methods

import { createCompositeResolver, DidKeyResolver } from '@peac/adapter-did';

const resolver = createCompositeResolver([
  new DidKeyResolver(),
  // add DidWebResolver here when available
]);

const result = await resolver.resolve('did:key:z6Mk...');

Integrates With

  • @peac/kernel (Layer 0): Error codes (EDID*) and types
  • @peac/schema (Layer 1): Schema validation
  • @peac/protocol (Layer 3): verifyLocal() accepts the extracted public key directly

Supported Key Types

Only Ed25519 keys are extracted. Other key types are silently skipped to prevent key-type oracle attacks. Both multibase encodings from the did:key spec are supported: z (base58btc) and u (base64url).

Standards

  • W3C DID Core v1.0 (Recommendation 2022): baseline type model
  • did:key (W3C CCG v0.9): method-specific resolution as interoperability adapter
  • did:web (W3C CCG draft): HTTPS resolution as interoperability adapter, not a normative dependency

License

Apache-2.0

PEAC Protocol is an open source project stewarded by Originary and community contributors.

Docs | GitHub | Originary

Keywords

peac

FAQs

Package last updated on 09 Aug 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts