LoomSeal woven LS mark

Tamper-evident logs, explained

A seal does not prevent tampering. It reveals it.

loomseal.com · Reading

What tamper-evident actually means

A tamper-evident log is a record designed so that any alteration becomes detectable. Not prevented: detectable. Nobody can stop a person with write access from opening a file and editing it, and any design that claims otherwise is describing hardware, not software. What a log can do is make every edit leave a mark that arithmetic finds. The seal on a medicine bottle works the same way. It does not stop the tampering, it makes the tampering impossible to hide.

How hash chains make edits visible

The standard construction is a hash chain. Every entry carries a digest of the entry before it, so entry three's link covers entry three's content and entry two's link, which covers entry two's content and entry one's link, all the way back to the first record. Change a single character anywhere, delete an entry, or reorder two of them, and every link after that point recomputes to a different value. A verifier walking the chain does not merely notice something is wrong. It names the exact entry where history stops being intact.

The missing half: anchoring

A chain alone proves internal consistency, and internal consistency is cheap. Anyone can sit down this afternoon and fabricate a perfectly consistent chain that says whatever they like. What makes a chain evidence is publishing its head, one short hash, somewhere the log's operator cannot rewrite: a timestamp authority under RFC 3161, a commit in a public git repository, a transparency log. Once heads are anchored on a schedule, a convincing fake requires having lied from the very first entry and having published the false heads the entire time. Rewriting the past now needs a time machine, not a text editor.

How to prove a log was not altered

Put together, proving a log's integrity to a skeptical reader takes four things:

The delivery matters as much as the mechanism. Hand the reader a file and a free verifier, not credentials to your dashboard. Evidence that requires trusting your infrastructure to check is not evidence to a stranger.

What no tamper-evident log can prove

Two limits, stated plainly. First, a chain fixes the record, not the honesty of the recorder. A producer that writes fiction produces an intact chain of fiction. Second, and less obvious: an entry that was never written leaves no break to find. Deletion is detectable. Silent omission is not, unless the log also commits to its own population. That is a separate mechanism, continuous population attestation, where the producer signs a running count on a fixed cadence so that a quietly dropped record contradicts either the chain or the producer's own signed arithmetic. The LoomSpan profile exists for exactly this.

Tamper-evident versus tamper-proof

Tamper-proof is a claim about preventing modification, and in software it is almost always marketing. Storage can be overwritten, databases can be edited by their administrators, and append-only APIs sit on mutable disks. Tamper-evident is the honest, achievable property, and it is sufficient: when any alteration is certain to be caught by a free check, altering the record stops being useful.

Where LoomSeal fits

LoomSeal is an open format that packages all of the above into one portable JSON file: the records, the chain coordinates, the external anchors, and an ed25519 signature, with a free Apache-2.0 verifier anyone can run offline. The format's rules are public in the spec, and you can drop any bundle into the browser verifier and watch the arithmetic settle it.

Related reading