← All packages
Proof · v0.1.0 · Apache-2.0

@flashyos/bolt

One secret, split across an estate, checked in the finder’s own browser

bolt/1 — one secret, split across an estate. A hunt verified by commitment, in the finder's own browser.

npm install @flashyos/boltnpm ↗source ↗

Why it exists

An easter egg is usually a gag with a server behind it: you find the thing, you submit it, and a database somewhere decides whether you won. That is the one shape an estate like this cannot use — every other claim its properties make is checkable by the reader without asking anybody, so an egg that phoned home would be the only thing on the estate you had to take on faith. `bolt/1` splits one secret across every live property, publishes a commitment over the ordered set, and lets a finder prove they hold it offline.

What it refuses to do
No server, no submission endpoint, no leaderboard. It also refuses to tell a finder which shard was wrong: a check that narrows the answer can be brute-forced one field at a time, and the whole set cannot. The page that verifies never holds a shard — it publishes the digest, which is the point of a commitment.

Use it

Commit to a set, then check one without revealing it
import { commit, verify } from '@flashyos/bolt';

const commitment = commit(['KEYSTONE', 'LATTICE', 'SIGIL']);
verify(entered, commitment); // true or false, and never which part failed

The licence

Apache-2.0, read from the package’s own manifest. Embed it in anything, including closed software — that is what makes a spec adoptable and a verifier worth running. FlashyOS’s server side is AGPL-3.0-only instead, and a test in the monorepo asserts the direction between them: AGPL code may consume this, this may never consume AGPL code.

Keep reading

The estate graph
Also in proof
@flashyos/verify@flashyos/countersign