Making mortality
machine-readable.

An open cryptographic succession protocol, extending the AT Protocol. Because your repos and projects shouldn't die with you.

The 0xDEAD parrot — deceased, resting on a spacebar

Your digital assets enter a legal black hole when you die.

There are APIs for identity verification, credit scores, and package delivery. But "is this person still alive?" has no standardized digital signal — and there's no way to say "transfer my domain to my business partner" in a format platforms can verify and act on.

2.3–3.7M BTC
permanently lost — owners died without succession plans
0
domain registrars with a "beneficiary" field. Not one.
48+DC
US jurisdictions adopted RUFADAA — with zero technical tooling to implement it
standardized machine-readable "proof of death" signal exists anywhere

A succession protocol for the internet. Built on the AT Protocol.

AT Protocol already solved account portability — moving your identity to a new provider. Succession is the same operation with a different destination: transferring your identity to a new person, triggered by cryptographically verified mortality.

0xDEAD extends ATProto with two custom lexicons, an inverted liveness model where others attest that you're alive through privacy-preserving blinded heartbeats, and a DID PLC key rotation mechanism that transfers your identity when those heartbeats go silent. The building blocks are all running in production. The composition is new.

space.0xdead.succession.declaration
{ "$type": "space.0xdead.succession.declaration", "successor": "did:plc:k7ab3mq6x...", "deathThreshold": 2, "deathVerifiers": [ { "did": "did:plc:qr9j2...", "role": "attorney" }, { "did": "did:plc:m4xw8...", "role": "family" }, { "did": "did:plc:v7np5...", "role": "notary" } ], "livenessThreshold": 3, "heartbeatSources": 5, "heartbeatWindow": "90d", "createdAt": "2026-03-15T00:00:00Z" }
schema reference
ATProto record type (lexicon NSID) ─ who inherits this identity (DID) ─ attestations needed to trigger ─ designated death verifiers ──────── her lawyer a family member a state notary ─ min active sources within window ─ total registered heartbeat sources ─ silence window before escalation ─ signed into owner's ATProto repo

Questions I ask myself

Is this a joke?
No. Maybe? I don't know — I hope not. The domain 0xDEAD.space seemed amusing, so I bought it, and things spiraled from there. The problem is very much not a joke. There have been a number of notable deaths in the developer and creator community recently, and I'd be willing to bet that few had any rock-solid succession plans so their important work could live on. Every open-source maintainer is a single point of failure, and we should get better as a community about handing off the baton in the event of our death. The name is memorable, and it's honest about what this is about.
Wait — is this an actual product?
No. 0xDEAD is a protocol specification built on the AT Protocol — the same infrastructure that powers Bluesky. The RFC defines two custom lexicons, an inverted liveness model using blinded heartbeats, and a DID key rotation mechanism for succession. The building blocks are real and running in production. The composition is new. Whether it becomes something real depends on whether anyone else cares enough to help build it.
Do I need a Bluesky account?
No. In fact, that's kind of the point. You need an AT Protocol identity (a did:plc), which you can get through Bluesky or any AT Protocol PDS provider in the Atmosphere. You could even create your own. Your heartbeat attesters — the people and services that prove you're alive — don't need ATProto accounts at all. They attest through any channel: an app, a web form, even an email link. The idea is that this will be built to be flexible, portable, secure — just like your did:plc is designed to be — and yours. You can even have your liveness attested anonymously — proximity attestation uses encrypted BLE beacons (think StreetPass meets Apple Find My) so nearby users can passively confirm you're alive without either party revealing who they are or where they are. The whole protocol is essentially a dead man's switch you don't have to remember to pull — your lawyer, your family, your phone, even strangers on the street are all quietly proving you're still here. When they stop, the protocol notices.
What if the protocol triggers and everyone thinks I'm dead? "I don't want to go on the cart yet! I feel happy!"
It can't execute without real-world proof. Silent heartbeats are a signal, not a trigger — they start an investigation, not a succession. Your successor might see "professional contacts: inactive" and call your lawyer, but nobody touches your keys until designated verifiers submit actual death attestations backed by real evidence — a death certificate, an attorney with personal knowledge, a government registry. Even then, your did:plc recovery key can override any succession within the 72-hour recovery window. The protocol escalates slowly, requires human judgment at every step, and gives you the last word — unless, of course, you don't have one.
What stops someone from faking death attestations?
Three layers. First, the inverted heartbeat model — multiple independent sources (service logins, professional contacts, family) passively attest to your liveness. All of them have to go silent before escalation even begins. Second, threshold death attestation — you designate multiple verifiers (attorney, family, notary) and set a threshold like 2 of 3. Third, the 72-hour safety valve — your DID PLC recovery key can override any succession within 72 hours. If you're alive, you can stop it.
What's the deal with `0xDEAD`?
In hexadecimal, 0xDEAD (57005 in decimal) is a hexspeak constant used in low-level programming as a marker for uninitialized or freed memory. It means "this memory is dead — don't use it." I thought it was appropriate.
@0xdead.space
Talk to us about death on Bluesky.
Vibe-coded a masterpiece · Died · Plan accordingly
"I am going now, but I do not know where."