A W3C-style DID method, "Public Ledger of Credentials", built for the AT Protocol (atproto) ecosystem but defined as a general DID method. A did:plc identifier is derived from the hash of its first signed operation, so it is self-certifying. Control rests in up to five priority-ordered rotation keys; each update is a signed operation that points to the previous one by hash, and a higher-priority key can overwrite a lower-priority one's operations within a 72-hour window. Operations are submitted to a central directory server that validates them, orders them and publishes the full log. No blockchain is used. The system gives accounts a persistent identifier that survives changes of name or service provider; in practice it identifies over 40 million atproto accounts, and the project names no non-atproto adopter.
LicenciaPermissive (dual MIT / Apache-2.0, at the user's option; copyright 2022-2026 Bluesky Social PBC). https://github.com/did-method-plc/did-method-plc (TypeScript reference implementation and directory server); https://github.com/did-method-plc/go-didplc (Go implementation, Apache-2.0)
Estado de Desarrollo 🟢 Activo
PropietarioBluesky Social PBC (original developer, 2022; copyright holder of the reference code); the PLC Organization, a small Swiss association founded in 2026, as neutral steward
Propietario - Lista
Bluesky Social PBC
Órgano de GobiernoPLC Organization (Swiss association, founded 2026, developing its policies) as neutral steward; Bluesky Social PBC as the original developer. The cited sources do not say who operates the directory at plc.directory today or how the steward is governed
PaísSwitzerland (the PLC Organization, a Swiss association with a registered address in Zug)
Año de Inicio 2022
StackTypeScript (reference library and directory server) and Go; DAG-CBOR operations with CIDs; ECDSA-SHA256 over secp256k1 or P-256; did:key encoding of keys; HTTP API described by an OpenAPI schema
Financiamiento Not stated by the project.
Última Investigación 29 oct 2026
Vista de topología
Esta herramienta en el centro y lo que se relaciona directamente con ella. Cada línea nombra el tipo de relación.
ATproto (Herramienta): Base de, Basado en, Habla el protocolo
did:key (Herramienta): Basado en, Cumple con, Se identifica mediante, Habla el protocolo
Identidad soberana Portabilidad del grafo de confianza
Protocolo de Identidad Atributos
Propietario - Lista
Bluesky Social PBC
OrígenesAccount identity for the AT Protocol: a persistent identifier that lets accounts keep their relationships while changing names or moving between service providers, with cryptographic control by the account holder, no blockchain, and cheap, fast, recoverable updates
Base de DatosA central directory server holding each identifier's append-only operation log, with the full history publicly readable and exportable
Lenguaje de ConsultaHTTP resolution at plc.directory (the DID document, current data, and the audit log per DID) and a paginated export of all operations
Formatos de DatosSigned operations as DAG-CBOR for hashing and signing and as plain JSON over HTTP; rotation and signing keys as did:key; rendered as a W3C DID document; identifier is 24 base32 characters of the SHA-256 of the genesis operation
Soporte MóvilLibrary-level only: it is an identifier layer used by atproto applications and has no app of its own
Soporte WebYes: public HTTPS resolution at plc.directory, a lookup page and API documentation
Aplicaciones NativasNone: an identifier method, not an application
TérminosFree to use; the project calls it inexpensive enough to provide as a no-cost service
Fondos Not stated by the project.
Basado EnW3C DID Core, did:key, DAG-CBOR and CIDs, ECDSA over secp256k1 and P-256
PermisosCryptographic capabilities: only holders of a current rotation key can update an identifier, with priority order deciding disputes; creation and resolution are open to anyone
Autenticación e IdentidadSelf-certifying identifier plus rotation keys: the holder (or a service the holder trusts) signs operations with a rotation key; separate signing keys, handles and service endpoints are carried as data. Handles and service claims are not cross-checked by the directory and must be verified bi-directionally by the application
Modelo de AlmacenamientoCentralized log: the directory server stores every operation permanently with a server timestamp and serves it publicly; clients can verify the log themselves because it is self-certifying
InteroperabilidadRegistered W3C DID method, listed in the DIF Universal Resolver's driver table, with a Go implementation beside the reference code; used by the atproto ecosystem. No use outside atproto was found in the cited sources
Portabilidad de DatosStrong at the identity level: the identifier is independent of any one service provider, and the holder can move between providers while keeping relationships. Dependent on the directory for ordering and resolution
Gobernanza y Toma de DecisionesThe specification is maintained in the open repository by its developers; the neutral steward is meant to oversee the system, with changes promised to be backwards compatible. Its decision process is not described in the cited sources
Madurez del Protocolo / EstandarizaciónSpecification v0.3.0 (December 2025), registered in the W3C DID Extensions registry, in production at atproto scale; not a standards-body deliverable, and the neutral steward was founded only in 2026
Estándares de IdentidadW3C DID Core (implements the standard); did:key; registered in the W3C DID Extensions registry
Gestión de ClavesUp to five priority-ordered rotation keys (secp256k1 or P-256), kept apart from signing keys by recommendation; control and recovery rest on them, and keys may be reused across accounts
Tipos de CredencialesN/A: a DID method; it defines no credential types
Método de VerificaciónThe log is self-certifying: a verifier checks each operation's signature against the previous operation's rotation keys and the hash chain; trust in the directory is limited to refusing operations and choosing between forks
Funciones de PrivacidadLimited by design: the full operation history, with timestamps, is permanently public even after deactivation, so personal information placed in aliases stays visible and key reuse can link accounts
Métodos de AutenticaciónOperations signed with rotation keys; atproto separately uses a signing key listed in the identifier's data
Mecanismo de RevocaciónUpdate operations rotate or remove keys; a tombstone operation permanently deactivates the identifier (subject to the recovery window); the history is kept
Tipos de Agentes SoportadosIndividuals and organizations; the page says "individuals (or organizations)"
Tipos de Billetera/ClienteLibraries and atproto software; no method-specific wallet
Mecanismos de RecuperaciónA higher-priority rotation key can overwrite operations signed by a lower-priority one within 72 hours, which is the recovery path when a lower key is compromised
Cumplimiento / Regulaciones Not stated by the project.
Protocolos de Intercambio de CredencialesN/A: identifier layer; used inside atproto's own protocols
Marco de ConfianzaCryptographic verification of a public log plus trust in one directory for availability and fork ordering; neutral stewardship by the PLC Organization is the stated direction
Modelo de CostosFree to resolve and register
Resistencia a la CensuraModerate to low: anyone can submit signed operations and the log is verifiable, but a single directory server can refuse operations or serve the wrong fork, and no alternative directory is described
Relaciones
Cómo se conecta esta herramienta con otras herramientas y organizaciones, según relaciones revisadas por el responsable de datos de OpenHaven. Describen cómo se conectan los proyectos, no su calidad.