Zero-knowledge secret sharing built on proven cryptographic primitives.
#key) which is never sent to the server.beep_secret_v1).| Property | Detail |
|---|---|
| Zero-knowledge | The server never sees plaintext. Encryption keys exist only in URL fragments. |
| Forward secrecy | Each secret uses a unique AES-256-GCM key. Each signature uses an ephemeral Ed25519 keypair. |
| Integrity | AES-GCM is an authenticated cipher — tampered ciphertext fails decryption. Signed secrets add Ed25519 verification. Shards are verified against a Merkle root. |
| Ephemeral | All data is in-memory with configurable TTL (max 1 week). A background reaper purges expired entries every 60s. |
| Domain separation | Ed25519 signatures are bound to the beep_secret_v1 namespace, preventing cross-protocol replay. |
The 36-byte commitment returned by Split encodes everything needed for reconstruction:
| Bytes | Content |
|---|---|
| 0..2 | min_shards (K) as big-endian u16 |
| 2..4 | total_shards (N) as big-endian u16 |
| 4..36 | SHA-256 Merkle root of the encoded shards |
This makes reconstruction self-contained — the commitment carries both the erasure coding configuration and the integrity proof. No external metadata is needed.