Un identificador descentralizado, o DID, es un identificador estable de una cuenta que no depende de un nombre de usuario ni de ningún servidor concreto. Tiene la forma did:plc:abc123… o did:web:example.com.
Existe porque los handles no son identidad. Un handle se puede cambiar, vender o reasignar; un DID no.
Por qué importa para los datos
Si sigues una cuenta por su handle, un cambio de nombre parte tu historia en dos: la serie vieja se detiene, empieza una nueva, y nada en tus datos dice que son la misma cuenta. Lo contrario es peor — un handle liberado y tomado por otra persona añade los números de un desconocido a tu serie.
| Te anclas en | Un cambio de nombre hace | Una reasignación hace |
|---|---|---|
| Handle | Rompe la serie en silencio | Fusiona dos cuentas en silencio |
| DID | Nada | Nada |
Esta es la razón concreta de que un campo ancla deba ser el identificador inmutable siempre que una plataforma publique uno, y es en lo que se ancla nuestra ruta de perfil de Bluesky.
Los dos tipos con los que te vas a encontrar
did:plc— se resuelve a través de un servicio de directorio. Es el caso común, y la razón de que se resuelva sin que tú tengas que operar nada.did:web— se resuelve pidiendo un documento a un dominio. Identidad autoalojada; la continuidad de la cuenta depende de ese dominio.
Para tu código, los dos son cadenas opacas. Los guardas y los comparas; no los parseas.
No todas las redes tienen uno
La mayoría no. En una red federada sin DID, lo más parecido es la URI de protocolo de la cuenta, que es estable en toda la red aunque el id numérico de cada servidor no lo sea — la misma cuenta tiene de verdad un id local distinto en cada instancia, y por eso nuestra ruta de Mastodon devuelve la URI y no el número.
En las plataformas centralizadas el ancla habitual es un id numérico emparejado con el login, porque el id por sí solo no siempre está expuesto en la página pública.
La regla práctica
Guarda los dos. Muestra el handle, porque es lo que las personas reconocen; indexa tus datos por el identificador, porque es lo que sigue siendo verdad. Una serie temporal indexada por un nombre visible es una serie temporal esperando a romperse.