mirror of
https://github.com/saymrwulf/verifying-crypto-with-lean.git
synced 2026-09-04 20:03:41 +00:00
ch13: send the reader to the live log — the cross-referencing that did not exist
Measured before writing: the book made ZERO references to the transparency log, the live site, leaves, receipts, verify.py, or anything post-quantum — two incidental uses of the word "accumulator" were the entire overlap with the estate's flagship artifact. A book that teaches "who checks the checker" never mentioned that a live log practicing every one of its principles is publicly checkable. New closing section of ch13, "Go and touch the real thing": what a leaf is in the chapter's own vocabulary; the fifteen-minute exercise (clone the mirror, verify.py --all, pin both trust anchors two independent ways, read leaf 18 in full); the map from the log's nineteen leaves onto the book's chapters (leaves 13-16 = the pyramid at 44 certificates with ch11's boundary-exact apex cones in production; leaf 17 = ch13 made literal, the log carrying proofs of its own Merkle machinery; leaf 18 = the first post-quantum subject, FIPS 205 verify path); and the two boundaries a reader must hold — verify proven / signing never, for both algorithms, and the frozen paper as an honestly-aged snapshot contained byte-identical inside today's history. Root cause of the staleness, named: the book has no button. Every other doc surface in the estate is gated or audited; the book froze as a July-6 deliverable plus one chapter. Until it grows a gate, estate doc audits are its only clock (last: 2026-08-08). README: ch13 entry expanded accordingly. PDF still awaits a LaTeX host. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
64dfe090c7
commit
62d12dc3fa
2 changed files with 77 additions and 1 deletions
|
|
@ -43,7 +43,7 @@ and a little programming suffice.
|
||||||
10. **Verifying a Field** — the full campaign, told honestly (including the crash)
|
10. **Verifying a Field** — the full campaign, told honestly (including the crash)
|
||||||
11. **Honesty and Axioms** — `#print axioms`, hollow certificates, trusted bases
|
11. **Honesty and Axioms** — `#print axioms`, hollow certificates, trusted bases
|
||||||
12. **The Pyramid** — group law, scalars, signatures, and where you come in
|
12. **The Pyramid** — group law, scalars, signatures, and where you come in
|
||||||
13. **The Attestation Protocol** — what it takes to make "it is proven" checkable by a stranger
|
13. **The Attestation Protocol** — what it takes to make "it is proven" checkable by a stranger; closes with *Go and touch the real thing*: a guided reading of the estate's **live transparency log** (ltl.zkdefi.org — 19 leaves, the four ed25519 pyramids at 44 certificates, the log's own Merkle proofs as leaf 17, and the first post-quantum leaf, SLH-DSA, as leaf 18), including the fifteen-minute verify-it-yourself exercise
|
||||||
|
|
||||||
Appendices: **A** — the pen-and-paper toolkit (recipe cards with drills);
|
Appendices: **A** — the pen-and-paper toolkit (recipe cards with drills);
|
||||||
**B** — guided walkthroughs of every exercise-file hole; **C** — a tour of
|
**B** — guided walkthroughs of every exercise-file hole; **C** — a tour of
|
||||||
|
|
|
||||||
|
|
@ -221,3 +221,79 @@ And when it is your own project: invite someone to attack the button, early.
|
||||||
Every one of the eighteen defects was found by a reviewer trying to break it.
|
Every one of the eighteen defects was found by a reviewer trying to break it.
|
||||||
\emph{None} was found by the author reviewing their own work --- and the author
|
\emph{None} was found by the author reviewing their own work --- and the author
|
||||||
looked, repeatedly, with the same care they had used to write the proofs.
|
looked, repeatedly, with the same care they had used to write the proofs.
|
||||||
|
|
||||||
|
\section{Go and touch the real thing}
|
||||||
|
\label{sec:live-log}
|
||||||
|
|
||||||
|
Everything in this chapter runs in production, in public, right now. The
|
||||||
|
companion estate operates a \emph{transparency log} of its own attestations:
|
||||||
|
a Merkle accumulator whose leaves are signed statements of the form ``this
|
||||||
|
repository, at this exact commit, was checked by its own button, and these
|
||||||
|
are the certificates it proved, on exactly these axiom cones.'' The log is
|
||||||
|
served at \texttt{ltl.zkdefi.org} and mirrored as an ordinary git repository
|
||||||
|
(\texttt{github.com/saymrwulf/lean-transparency-log}) that you can clone and
|
||||||
|
interrogate offline. It is act two, industrialized: every failure class this
|
||||||
|
chapter catalogued has a gate in that pipeline because a reviewer once got
|
||||||
|
past the spot where the gate now stands.
|
||||||
|
|
||||||
|
\begin{checkpoint}
|
||||||
|
The fifteen-minute exercise, and the best return on time in this book: clone
|
||||||
|
the mirror and run the verifier.
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item \code{python3 verify.py --all} --- plain Python for the hashing, the
|
||||||
|
\code{openssl} binary for signatures, and it \emph{fails closed} without
|
||||||
|
them (Section~\ref{ch:attestation} taught you why ``couldn't check'' must
|
||||||
|
never print as a pass). It recomputes every leaf hash, every historical
|
||||||
|
tree head against its recomputed prefix root, every signature, and every
|
||||||
|
inclusion proof --- your machine, your verdict, nobody's word.
|
||||||
|
\item Pin the trust anchors \emph{two independent ways}: the keys are served
|
||||||
|
by the site (\texttt{/log-public-key}, \texttt{/log-slhdsa-public-key})
|
||||||
|
and shipped in the mirror (\code{provider.ed25519.pub},
|
||||||
|
\code{provider.slhdsa.pub}). The copies must agree byte-for-byte. If they
|
||||||
|
ever disagree, you have caught something worth catching.
|
||||||
|
\item Read one leaf in full --- \code{entries/000018.json} is a good choice
|
||||||
|
--- and find, inside it, every vocabulary item of this chapter: the pinned
|
||||||
|
commit, the certificate list, the \emph{observed} axiom cones, the machine
|
||||||
|
protection, and the stated exclusions.
|
||||||
|
\end{itemize}
|
||||||
|
\end{checkpoint}
|
||||||
|
|
||||||
|
The log's nineteen leaves map onto this book. Leaves 13--16 attest the four
|
||||||
|
ed25519 repositories whose pyramid you climbed in
|
||||||
|
Chapters~\ref{ch:modular}--\ref{ch:pyramid}: forty-four certificates each ---
|
||||||
|
twenty-seven on the main button, thirteen on the scalar button, and the four
|
||||||
|
apex-tier theorems whose \emph{documented, boundary-exact} cones are
|
||||||
|
Chapter~\ref{ch:honesty}'s lesson enforced in production. Leaf 17 is this
|
||||||
|
chapter made literal: the log carries kernel-checked proofs of \emph{its own
|
||||||
|
Merkle machinery} as one of its own entries --- ``who checks the checker?''
|
||||||
|
answered by putting the checker's mathematics inside the thing it checks.
|
||||||
|
And leaf 18 is the estate's first post-quantum subject: eleven certificates
|
||||||
|
over the SLH-DSA-SHA2-128s \emph{verification} path (FIPS~205), whose apex
|
||||||
|
states that the extracted verifier accepts exactly when the recomputed
|
||||||
|
Merkle root matches --- tree recursions under a hash-oracle boundary, the
|
||||||
|
same proof shapes you met in the pyramid, on a hash-based signature scheme.
|
||||||
|
Since tree 14 every head also carries an \emph{additive} deterministic
|
||||||
|
SLH-DSA signature beside the required Ed25519 one; heads published before
|
||||||
|
then have none, and the verifier reports them as \code{ABSENT} rather than
|
||||||
|
failing them --- an append-only log keeps its history, including the history
|
||||||
|
of its own signature scheme.
|
||||||
|
|
||||||
|
Two boundaries, so that you read the log the way this book taught you to
|
||||||
|
read everything. First: for both signature algorithms the estate has proved
|
||||||
|
\emph{verification} and nothing about \emph{signing} --- the heads are
|
||||||
|
signed by unproven code and checkable by proven code, and every leaf names
|
||||||
|
its trusted base; read a leaf's exclusions before believing anything beyond
|
||||||
|
them. Second: the estate's paper about this log is frozen under journal
|
||||||
|
review and describes the thirteen-leaf snapshot of July 2026. Nothing it
|
||||||
|
describes was altered --- the paper-era leaves and heads sit byte-identical
|
||||||
|
inside today's history, and \code{verify.py --all} checks both eras in one
|
||||||
|
run. A document that ages honestly inside a system that keeps moving is not
|
||||||
|
a defect; it is what append-only means.
|
||||||
|
|
||||||
|
That is the whole arc of this book in one artifact: arithmetic became
|
||||||
|
theorems (act one), theorems became certificates with named cones
|
||||||
|
(Chapter~\ref{ch:honesty}), certificates became attestations a stranger can
|
||||||
|
re-derive (this chapter) --- and the attestations went into a structure that
|
||||||
|
remembers everything and lets anyone catch it lying. When you build your
|
||||||
|
own, you now know what it costs, and where the bodies are buried.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue