Change history, get caught.
Every journal becomes a leaf in a Merkle tree. A witness that lives outside the database signs the tree's root every few seconds, and only after checking that the new tree extends the old one. Edit the books behind the ledger's back and the roots stop matching.
Leaves in the log
1,570
Signed by the witness
1,570
Witness key (Ed25519)
M-qx1GsfSWQul8EXoavO7epSVrM5NZzIpu_DY9yqjZc
The latest signed checkpoints
- 1,570184b9bc6bf28143757bf1a927165247b5be7e2d875b4e79e1ba964bede905c5819:33:58
- 1,56673e16bd0981f3403e5b4c9404f49cf5c1ef67b022ea53f942565ad54eb4b410719:33:47
- 1,563c00b21c16230043850462cb1220d05bd421ba93276488ab01270e6c54256de5819:33:36
- 1,55840239ff3e231b8fde1be57df106f18299d99a9b122cb207b839bae8d2c40d26119:33:26
- 1,55530218311e99569b2e6a1f817da179efb5573c7b68a13ae6b0b6eb99f07d4805919:33:15
- 1,5549771d24256b60858e9246fa6d837f5e2ac31a8fb4afb6f9c3ee5f7caa4d5a98019:33:05
Tamper with it
Each button changes the database directly as the superuser, the way an insider would. One change at a time.
Check one journal in your browser
Your browser recomputes the leaf from the journal's rows, follows the server's proof to the root, and checks the witness's Ed25519 signature on that root itself. The server only supplies data.
Verify the whole log
The server recomputes every leaf from the current rows, rebuilds the tree on its own and compares the root at every size the witness signed.