Verify this yourself

803 recorded inventions. Every fingerprint is public. No content is. You can check the count, the dating and the integrity in about fifteen minutes — without a key, without permission, and without any cooperation from me.

Andreas Ehstand · ORCID 0009-0006-3773-7796 · 23 September 2026 · doi.org/10.5281/zenodo.22909342

Anyone asked to assess a documented body of knowledge normally faces an unpleasant choice. Either they are shown the content — and are no longer an independent assessor but a party to it. Or they are not shown it — and must take everything on trust.

This page removes that choice. Nothing below asks you to believe me. Every step is a computation you can repeat.

Six steps

Step 1

Open the foundations

doi.org/10.5281/zenodo.22909342 — a concept identifier, so it always resolves to the newest version. Open access, no account.

English and German, each as plain text and as a typeset document, together with the public register.

Step 2

Inspect the public register

sealed-register.csv — also served here directly. It has 803 rows and exactly four fields:

FieldContent
entry_nosequential number, 1 to 803
functionone of ten function groups, in plain words
sealed_ondate of sealing
sha256fingerprint, 64 characters

It contains no content. No title, no description, no assessment. A SHA-256 fingerprint is one-way: the content cannot be recovered from it. That is the defining property of the function, not a claim of mine.

Step 3 — the actual test

Recompute the root

All 803 fingerprints, in ascending entry order, joined with newlines and hashed once more, give exactly this:

41f9f070f92476b668c54ecd350459b2d094c7365cda4e338f4ad80d0a134f5f

Check it. One line is enough:

python -c "import csv,hashlib;r=sorted(csv.DictReader(open('sealed-register.csv',encoding='utf-8')),key=lambda x:int(x['entry_no']));print(hashlib.sha256(chr(10).join(q['sha256'] for q in r).encode()).hexdigest())"

Change one character, remove one row or add one, and the root no longer matches. The body is therefore protected against silent insertion and silent deletion. Integrity alone would not give you the second one.

Step 4

Read the verifier

verify_seal.py — about twenty lines of logic, readable in one sitting. It recomputes the fingerprint of an opened entry from its eight fields and compares it against the published one. No network, no service, no key, no permission.

python verify_seal.py --selftest

The self-test demonstrates the computation on an invented example entry. It discloses nothing real.

Why the method is published: a secret verification method proves nothing. The openness of the method is precisely what makes the sealing checkable. The protection lies not in the method but in the inputs.

Step 5

Confirm the restricted deposit

doi.org/10.5281/zenodo.22909339 — access restricted. You see title, author, date and version history; not the content. That is deliberate, and it is the point. The access decision is enforced by the repository, not merely asserted by me.

Step 6

Check the blockchain anchor

The baseline of the whole body sits in Bitcoin block 945970:

Block height:   945970
Block hash:     000000000000000000002fc55b1780b87c23bcbdb1af3b7cd4329f23f71d27d5
Unix time:      1776722274   =   2026-04-20 21:57:54 UTC
Anchored digest:
  299e4b3d0ac9e50740268896b5eeb541f6462332bb67b7efdf4cd309704770d0

Check the block with any provider you like, and convert the timestamp yourself:

python -c "import datetime;print(datetime.datetime.fromtimestamp(1776722274,datetime.UTC))"

No one can alter a Bitcoin block after the fact. What was anchored at that moment existed at that moment.

What each step proves — and what it does not

Stating this plainly is part of the point, so it is stated here rather than left to be discovered.

EstablishedNot established
That 803 delimited entries existThat every one of them is valuable
That they existed in exactly that form on a given dateThat they are novel in the sense of a registered right
That nothing has since been altered, removed or insertedHow good the content is
That the content was not disclosedThat no one elsewhere held something similar earlier

These are statements about form, count, time and integrity. They are not statements about quality or worth. Conflating the two would be dishonest, and it is exactly the failure mode that sinks comparable projects.

If anyone holds earlier work of this kind, the appropriate response is to date it. That is why the foundations are public rather than in a drawer.

How to obtain a single entry

If your assessment requires the content of a particular entry, the path is short:

You remain free to use and publish your conclusion. Statements about count, structure, dating, verifiability, methodological classification and assessability are expressly not restricted. What is protected is the content, not your judgement.

The one thing this construction achieves

The usual choice between show it and lose it and stay silent and prove nothing does not arise.

Proof is decoupled from negotiation. You need not believe me, and I need not disclose anything for you to verify. Only when you want to judge the substance do we open exactly as much as that requires — and not one entry more.