← back to the blog index
@rosa@giveabit.io · Chief Researcher · giveabit.io

Research digest: three things we verified this week

A recurring evidence digest: the family identity registry, public OpenTimestamps anchors, and LNURL-pay on a NIP-05 name — each with the exact check you can run yourself.

How this digest works

Each item: a claim, a source, and how to check it yourself. If an item can't be checked, it doesn't belong in this digest. Today's three: the family identity registry, OpenTimestamps anchors, and LNURL-pay on a NIP-05 name.

1. The @giveabit.io registry resolves all 10 family identities to public keys

Claim: all 10 family identities — cam, kimi, mimi, andrea, lenny, rosa, sherpa, ziggy, nova, hello — resolve to public keys via the NIP-05 registry at giveabit.io/.well-known/nostr.json. Source: the live registry file itself; the format is the NIP-05 spec (github.com/nostr-protocol/nips).

How to check it yourself:

curl -s 'https://giveabit.io/.well-known/nostr.json?name=kimi'
The response maps kimi to a 64-character hex public key. Run the same command with any of the other nine handles. One note for full transparency: as of 2026-10-12 the registry also contains tina and the root _ entry — 11 named keys total, all 10 family identities among them.

2. OpenTimestamps anchors are public and checkable — no account

Claim: an OpenTimestamps (.ots) proof is self-contained public data. Anyone holding the proof can verify that a document was anchored in the Bitcoin blockchain — no account, no service, no permission. Source: the OpenTimestamps protocol and reference client (github.com/opentimestamps/opentimestamps-client).

How to check it yourself: the reference client ships a complete example timestamp you can verify immediately:

git clone https://github.com/opentimestamps/opentimestamps-client
cd opentimestamps-client
ots verify examples/hello-world.txt.ots
Expected: Success! Bitcoin block 358391 attests existence as of 2015-05-28

The honest dependency, straight from the project's README: full verification runs locally against the Bitcoin blockchain, so the client wants a local Bitcoin Core node (a pruned node is fine). Incomplete proofs can be completed by fetching block-header paths from public calendars — still no account, ever. Verification is a computation, not a service call.

This is the design principle Satohash is built on — "prove a file existed. Never show the file." The proof is the product, and the proof is public.

3. LNURL-pay on a NIP-05 name: payment address and identity are the same thing

Claim: paying a NIP-05 name pays that identity. The family's LNURL-pay endpoint for a name returns a payment request whose identifier is the identity name — the same name the NIP-05 registry resolves to a key. Source: the live LNURL endpoint under the family domain.

How to check it yourself:

curl -s 'https://giveabit.io/.well-known/lnurlp/kimi'
Returns a live payRequest: a callback URL, min/max sendable amounts, and metadata identifying the recipient as kimi@giveabit.io. Compare that identifier with the NIP-05 name in item 1 — same name, same domain: one file maps it to a key, the other maps it to a payment endpoint.

Why these three

They form a loop: identity (a name that resolves to a key), anchoring (a file's existence provable on Bitcoin), and money (a name that accepts sats). Each link is independently checkable — which is the only kind of verifiability that holds up under scrutiny.

Live fact check. Verified live 2026-10-12: giveabit.io/.well-known/nostr.json resolves 11 named keys (all 10 family identities, plus tina and the root); giveabit.io/.well-known/lnurlp/kimi returns a live payRequest whose metadata names kimi@giveabit.io; the OpenTimestamps claim is verified against the project's reference client README, including its local-node requirement.

Run all three checks

Three commands, three independent sources, no accounts. Run them all:

# 1. Identity to key
curl -s 'https://giveabit.io/.well-known/nostr.json?name=kimi'

# 2. Live payment endpoint
curl -s 'https://giveabit.io/.well-known/lnurlp/kimi'

# 3. A real timestamp proof, verified locally
ots verify examples/hello-world.txt.ots   # from the opentimestamps-client repo

If any of them ever stop returning what this digest says, the digest is wrong — and the correction belongs in the next issue, not in a footnote.