This page links my online identities to a single OpenPGP key using three independent systems: Keyoxide (open-source, trustless verification), Keybase (widely recognised), and W3C did:web (standards-based decentralised identifier). Each system independently confirms the same set of accounts - no single authority controls the verification. It also publishes a separate S/MIME certificate used for everyday signed email, which runs on a different (CA-based) trust model entirely.

OpenPGP Key

Fingerprint
94EF 05CD B2B6 A7EB C75F  91D5 0C18 AAEE C557 9D12
Details
Ed25519 · chris@chrisbmn.com · Expires 2028-05-27
WKD keys.openpgp.org openpgp4fpr:94ef05cdb2b6a7ebc75f91d50c18aaeec5579d12

S/MIME Certificate

A separate system from the OpenPGP key above, used for day-to-day signed email rather than the proofs on this page. Trust here comes from a Certificate Authority chain rather than the account-based proofs Keyoxide/Keybase/did:web rely on - Sectigo vouches for mailbox control, the same model browsers use to trust HTTPS.

Details
Sectigo Public Email Protection CA R36 · Mailbox Validation Strict · chris@chrisbmn.com · Expires 2027-03-24
Download certificate

Keyoxide

Keyoxide Profile
Open-source, trustless verification - fetched live from WKD. No account required to verify.
View on Keyoxide
DNS
chrisbmn.com

TXT record at the root domain contains the key fingerprint. Verifiable with any DNS lookup tool.

GitHub

Public gist containing the key fingerprint, referenced by a notation on the OpenPGP key.

Bluesky

Profile description contains the key fingerprint in openpgp4fpr format.

Keybase

Keybase Profile
Widely recognised identity hub - covers GitHub and website proofs as a complement to Keyoxide.
View on Keybase
GitHub

Keybase creates a public gist from the verified GitHub account containing a signed proof statement.

DNS
chrisbmn.com

DNS TXT record at the root domain verified independently by Keybase, cross-confirming the Keyoxide DNS proof.

Website

A Keybase-signed file at /.well-known/keybase.txt confirms domain control - generated by Keybase, not hand-crafted.

W3C DID (did:web)

did:web:chrisbmn.com
W3C Decentralised Identifier - a machine-readable identity document linking all verified accounts.
View did.json

The DID document at /.well-known/did.json resolves to did:web:chrisbmn.com and enumerates verified service endpoints and linked accounts in a format any W3C-compliant DID resolver can parse. Defined by W3C DID Core 1.0 and the did:web method spec. Served with Content-Type: application/did+json.

Mastodon (Fediverse)

@chrisbmn@mastodon.social
Verified independently of the key-based proofs above - a rel="me" link on this site, confirmed by Mastodon's own crawler.
View on Mastodon

This is the simplest proof on the page: Mastodon checks that the profile's link back has a matching rel="me" tag on the target page, the same mechanism IndieWeb sites have used for years. It doesn't tie into the OpenPGP key or notations above - it's a separate, lower-ceremony confirmation that the account and this domain are controlled by the same person.

How it works

Each proof works on the same principle: a platform-specific location (a gist, a DNS record, a profile bio, a signed file) contains a reference to the key fingerprint. The OpenPGP key contains a notation pointing back to that location. The verifier fetches both sides and confirms they match.

Using three independent systems provides redundancy - no single service going offline invalidates the proofs, and each uses a different verification architecture. Keyoxide is fully trustless and open-source. Keybase uses a centralised but widely recognised model with broader platform support (including Reddit). did:web is a W3C standard built for machine-readable identity resolution.

The underlying key is available via WKD for automatic discovery by OpenPGP-aware clients, and on keys.openpgp.org for manual lookup. Anyone with gpg can independently verify each claim without trusting any of these services.

Last updated: June 2026 · Security policy · /.well-known/