Skip to content
BlockchainSign
de

Was ein Zeitstempel-Zertifikat enthält

Von Veröffentlicht am

Was ein Zeitstempel-Zertifikat enthält
Photo: RDNE Stock project

Ein Zeitstempel-Zertifikat ist eine kleine Datei, und jedes Feld darin hat seinen Grund. Zu verstehen, was jedes einzelne leistet, verwandelt das Zertifikat von etwas, dem man blind vertraut, in etwas, das man selbst prüfen kann.

Die Felder

Ein BlockchainSign-Zertifikat ist eine YAML-Datei mit diesen Feldern:

Feld Bedeutung
version Die Version des Zertifikatsformats
provider Der Aussteller
timestamp Die Blockzeit der Transaktion — das zu beweisende Datum
blockchain Die Chain, auf der der Eintrag gespeichert ist
algorithm Die verwendete Hash-Funktion, SHA-256
payload_hash Der Hash des Payload-Blocks und das, was on-chain erscheint
tx_hash Die Transaktionskennung
tx_url Ein Link zu dieser Transaktion auf einem öffentlichen Block-Explorer
payload Drei Zeilen: die Liefer-E-Mail, der SHA-256-Hash der Datei und alle von Ihnen angegebenen Metadaten

Die Struktur ist bewusst nüchtern gehalten. Es gibt nichts Proprietäres, nichts Verschlüsseltes und nichts, das unsere Software zur Interpretation benötigt.

Warum der Payload separat gehasht wird

Dies ist der Teil, den man verstehen sollte, denn er erklärt das Design.

Der Payload enthält drei Dinge: eine E-Mail-Adresse, den Hash Ihrer Datei und Freitext-Metadaten wie einen Autorennamen oder einen Projektverweis. Er wird nicht direkt in die Chain geschrieben — stattdessen wird sein eigener SHA-256-Hash dort abgelegt.

Zwei Gründe dafür. Erstens hält die Begrenzung der On-Chain-Daten auf feste 64 Zeichen die Transaktionskosten vorhersehbar, unabhängig davon, wie viele Metadaten Sie hinzufügen. Zweitens enthält der Payload eine E-Mail-Adresse, und es gibt keinen Grund, diese dauerhaft in einem öffentlichen Ledger zu veröffentlichen.

Die Folge ist eine zweistufige Beweiskette: Der Datei-Hash führt zu einem Wert innerhalb des Payloads, der Payload-Hash führt zum Wert in der Chain. Beide Schritte sind für jeden reproduzierbar, der das Zertifikat besitzt.

Selbstprüfung Schritt für Schritt

Dafür brauchen Sie uns nicht.

1. Prüfen Sie, ob die Transaktion existiert. Öffnen Sie tx_url. Sie landet auf einer echten Transaktion auf einem öffentlichen Explorer mit einer Blocknummer und einem Zeitstempel.

2. Lesen Sie die On-Chain-Daten. Suchen Sie auf der Transaktionsseite nach den Eingabedaten und wählen Sie „Als UTF-8 anzeigen“. Sie sehen den Payload-Hash als lesbaren Text.

3. Vergleichen Sie ihn mit dem Zertifikat. Diese Zeichenkette muss exakt mit payload_hash übereinstimmen.

4. Haschen Sie den Payload neu. Nehmen Sie die drei Payload-Zeilen genau so, wie sie erscheinen, und haschen Sie sie mit SHA-256. Das Ergebnis muss payload_hash entsprechen. Eine Einschränkung: Die YAML-Einrückung fügt führende Leerzeichen hinzu, die nicht Teil des Payloads sind — entfernen Sie diese vor dem Haschen, sonst stimmt der Wert nicht überein.

5. Haschen Sie Ihre Datei neu. Führen Sie shasum -a 256 yourfile.pdf unter macOS oder Linux aus, certutil -hashfile yourfile.pdf SHA256 unter Windows, oder nutzen Sie das kostenlose Hash-Tool in Ihrem Browser. Vergleichen Sie das Ergebnis mit der Zeile File SHA-256 im Payload.

Wenn alle fünf Punkte stimmen, haben Sie nachgewiesen, dass diese exakte Datei zu diesem Zeitpunkt in diesem Block an ein öffentliches Ledger gebunden wurde und sich seitdem nichts geändert hat.

Was das Zertifikat nicht verrät

Klarheit über die Grenzen ist es, was den Rest glaubwürdig macht:

  • Wer die Datei erstellt hat. Das Zertifikat dokumentiert nur, dass jemand sie besaß. Siehe Existenznachweis vs. Urheberschaftsnachweis.
  • Was die Datei enthält. Nur ihr Hash wird aufgezeichnet. Jeder, der die Gültigkeit prüft, benötigt die Datei selbst; dies ist genau die Eigenschaft, die sie für vertrauliche Dokumente nutzbar macht.
  • Dass die Metadaten wahr sind. Das Freitextfeld zeigt lediglich, was Sie eingegeben haben. Es ist zu diesem Moment festgeschrieben und danach unveränderlich, was nützlich ist — aber das Ledger überprüft den Inhalt nicht.
  • Einen rechtlichen Status. Es ist ein Beweis, keine Registrierung oder ein Recht.

Bewahren Sie die Datei Byte für Byte auf

Der häufigste Weg, wie Menschen den Wert eines Zertifikats verlieren, ist der Verlust der exakten Datei.

Ein Hash deckt eine exakte Sequenz von Bytes ab. Das erneute Speichern eines Dokuments, das erneute Exportieren oder das Überschreiben von Metadaten durch eine Anwendung erzeugt eine andere Datei mit einem anderen Hash — und das Zertifikat passt nicht mehr dazu. Archivieren Sie die zertifizierte Version separat und arbeiten Sie mit einer Kopie.

Das Zertifikat selbst ist ebenfalls aufbewahrungswürdig, wenn auch weniger kritisch: Der Payload-Hash liegt in der Chain, sodass ein Zertifikat aus öffentlichen Daten rekonstruiert werden kann, solange Sie wissen, um welche Transaktion es sich handelt.

Häufige Fragen

Brauche ich Ihre Website, um ein Zertifikat zu überprüfen?
Nein. Jede Prüfung kann mit einem öffentlichen Block-Explorer und jedem SHA-256-Tool durchgeführt werden. Öffnen Sie die Transaktions-URL, lesen Sie die Eingabedaten als UTF-8, vergleichen Sie sie mit dem Payload-Hash und haschen Sie dann den Payload und die Datei neu. Nichts in dieser Abfolge erfordert unsere Software, und das ist gewollt.
Warum stimmt mein neu berechneter Payload-Hash nicht überein?
Fast immer liegt es an der YAML-Einrückung. Der Payload erscheint im Zertifikat mit führenden Leerzeichen, die Teil der Formatierung der Datei sind, nicht Teil des zu haschenden Payloads. Entfernen Sie die führenden Leerzeichen von jeder Zeile vor dem Haschen, und der Wert stimmt überein.
Was passiert, wenn ich die Zertifikatsdatei verliere?
Weniger, als man befürchten könnte, vorausgesetzt, Sie wissen, um welche Transaktion es sich handelt: Der Payload-Hash liegt in der Chain, sodass das Zertifikat rekonstruiert werden kann. Was Sie auf keinen Fall verlieren dürfen, ist die Originaldatei, Byte für Byte — ohne sie gibt es nichts zu haschen und zu vergleichen, und das erneute Speichern eines Dokuments ändert seine Bytes.

Beweisen Sie heute, dass Ihre Arbeit existiert

Versehen Sie jede beliebige Datei auf der Ethereum-Blockchain mit einem Zeitstempel und erhalten Sie ein fälschungssicheres Zertifikat, das lebenslang gilt. Ihre Datei verlässt niemals Ihren Browser.