🔎 Print verifizieren
Lade das Originaldokument und die zugehörige Metadaten-Datei
(*.dtfp.json). Beide werden ausschließlich lokal im Browser verarbeitet –
nichts wird hochgeladen, nichts verlässt dein Gerät.
📘 Der Vorgang – Schritt für Schritt erklärt
Ein Entstehungsprint ist eine Beweiskette aus mehreren ineinandergreifenden Prüfsummen. Der folgende Durchlauf zeigt an einem konkreten Beispiel, was bei der Verifikation tatsächlich passiert.
Was du brauchst
| Datei | Rolle | Woher |
|---|---|---|
| Originaldokument | z. B. vertrag.pdf – die Datei, deren Existenz bewiesen werden soll |
dein Archiv |
| Metadaten | vertrag.pdf.dtfp.json – Hashes, Datum, Beacon-Referenz, ggf. Signatur |
zusammen mit dem Original aufbewahrt |
Allein die JSON-Datei reicht nicht – ohne das Original ist nur der Zeitanker prüfbar, nicht aber die Echtheit des Inhalts.
Beispielhafter Prüfdurchlauf
Angenommen, du prüfst eine Datei vertrag.pdf, die am 14. Mai 2026
gesiegelt wurde. Die JSON-Datei enthält unter anderem:
D = "2026-05-14" (Datum)
N = "7b3e…41df" (Nonce)
C₀ = "e2d9…88a1" (Commitment)
B = "d4c2…7f6b" (drand-Beacon-Randomness)
F = "1a80…3b2c" (Tagesfingerprint)
P = "5f7e…d90a" (Entstehungsprint)
sig = "9b41…2c7e" (Ed25519-Signatur, optional)
Die Verifikation rechnet diese Kette nun von unten nach oben nach:
Aus der geladenen Datei vertrag.pdf wird erneut SHA-256 gebildet.
Vergleich mit gespeichertem H:
stimmt überein
Aus H, Datum D und Nonce N wird C₀ neu berechnet.
Vergleich mit gespeichertem C₀:
stimmt überein
Vorausberechnung ausgeschlossen (Nonce)
Der gespeicherte drand-Wert B wird zusammen mit dem Datum
in F verrechnet.
Vergleich mit gespeichertem F:
stimmt überein
Aus C₀ und F wird der finale Wert P gebildet.
Vergleich mit gespeichertem P:
stimmt überein
Ist eine Signatur vorhanden, wird sie gegen den Public Key und den
Nachrichtentext "DTFP1-SIG-P|" + P geprüft.
Ergebnis: Signatur gültig – Urheber bekannt ohne Signatur: anonymer Nachweis
Die im Print hinterlegte drand-Runde (hier: Runde 12 345 678) wird
frisch von der drand-API geladen und mit dem gespeicherten
Wert B verglichen.
Ergebnis: Beacon-Wert unverändert – Zeitanker bestätigt
Was das Gesamtergebnis bedeutet
Wenn alle Schritte grün sind, steht fest:
- Die Datei
vertrag.pdfhatte am 14.05.2026 genau diesen Inhalt (Schritt 1 + 2). - Die Zufallszahl aus Schritt 3 wurde öffentlich vom drand-Netzwerk erzeugt und ist nachträglich nicht veränderbar (Schritt 6).
- Der finale Beweiswert
Pist damit ein Siegel, das nur zu diesem Inhalt und zu diesem Tag passt. - Falls eine Signatur vorhanden war: Der Inhaber des Public Keys hat sich zu diesem Siegel bekannt (Schritt 5).
Was passiert, wenn etwas nicht stimmt?
| Meldung | Ursache | Folge |
|---|---|---|
| ✘ H weicht ab | Die Datei wurde verändert – auch nur ein Bit. | Kette bricht sofort. Kein gültiger Nachweis. |
| ✘ C₀ weicht ab | Datum oder Nonce manipuliert – oder H passt nicht zu C₀. | Kette bricht. Print zurückgewiesen. |
| ✘ F weicht ab | Beacon-Wert B wurde in der JSON-Datei ausgetauscht. |
Zeitanker ungültig. |
| ✘ P weicht ab | Der finale Wert wurde nachträglich verändert. | Print zurückgewiesen. |
| ✘ Signatur ungültig | Signatur oder Public Key wurden verändert. | Urheberschaft widerlegt. |
| ✘ Beacon liefert anderen Wert | Der gespeicherte Beacon-Wert ist gefälscht oder von einer anderen Runde. | Zeitanker nicht bestätigt. |
Praktische Tipps
- Prüfe immer gegen das Originaldokument – nicht gegen eine Kopie aus einem E-Mail-Anhang, wenn möglich.
- Die
.dtfp.jsonnie bearbeiten. Schon ein zusätzliches Leerzeichen im Datum bricht die Kette. - Den Button „drand-Beacon erneut prüfen“ nur verwenden, wenn eine drand-basierte Signatur vorliegt – er lädt den Wert live nach.
- Für Beweiszwecke: Screenshot der gesamten Verifikationsausgabe zusammen mit der JSON-Datei aufbewahren.