Ballot TrailBorn Between 2 Generals

Section 14 · Section 18

Verify it yourself

Every other page on this site makes claims. This page runs them. The code under test is /assets/mblts.mjs — the same file every demonstration here uses, fetched by your browser from this server, with nothing sent anywhere.

A poison suite deliberately breaks things that should fail, and asserts they do. A test that has never been seen to fail is not evidence.

What each group proves

Ed25519 · RFC 8032

The published §7.1 test vectors. If this implementation deviated from the standard in any way, these would not reproduce — and a signature this engine produced could not be checked by anything else. Interoperability is the property that matters for an archived audit trail.

Canonical serialization

Key order must not change a hash; a missing field must not be silently tolerated. A canonicalisation that quietly drops undefined produces two different objects with one hash, which is a forgery primitive.

Merkle construction

Domain separation, correct proof paths, rejection of recycled paths — and the duplicate-leaf collision, asserted as present, because pretending it is not there is how it gets shipped.

Ledger integrity

Every state rule from the specification, exercised in both directions: the legal path completes, and each illegal one fails closed with the right error code and leaves an exception record behind.

The one thing this page cannot prove

It cannot prove a real deployment behaves this way. This is a reference implementation running client-side against a ledger it created a moment ago. A production system needs independent source review, penetration testing, accessibility testing, tabletop exercises and a supervised pilot before it goes near a real ballot — and a red-team assessment that finds no practical path from voter or token data to a cast-vote record after separation. What this page proves is narrower and still worth something: the design described here is implementable, and this implementation of it does what the pages claim.

Paper remains authoritativeThe token never touches a voteAppend, never overwrite