Oyd

Dokument mit der Blockchain versiegeln

DE | EN
Hier findest du die sicherste und gleichzeitg einfachste Form, deine Daten und Dokumente zu schützen. Egal ob Musikstück, Foto, Algorithmus oder sonstige schützenswerte Informationen - dank Blockchain-Technologie sind deine Informationen 100% anonym, 100% manipulationssicher und zu 100% rechtlich verbindlich abgesichert.

Das Tolle daran: Wir selbst speichern keine Informationen, liefern dir aber gleichzeitig rechtlich einwandfreie Beweise.

Tipp für alle Neugierigen: Jetzt mit einem beliebigen Probedokument testen oder ein bestehendes Dokument ansehen!

Wähle eine Datei mit dem Dateidialog aus oder lade eine Datei durch Ziehen und Ablegen in dem strichlierten Bereich hoch.

Zurücksetzen


Zurücksetzen

Mit folgenden Befehlen kannst du mit OpenSSL den Hashwert selbst berechnen und eine Datei zum Nachweis signieren.

Hashwert berechnen
cat file.dat | openssl dgst -sha256
Datei signieren und Hashwert berechnen
cat file.dat | \
    gpg --detach-sig -u your.email@provider.com | \ 
    openssl dgst -sha256

Verwende dieses Formular, um den Wurzelknoten eines Merkle Baums anhand von Hashwert und Audit Proof zu berechnen.





Zurücksetzen

Die Blockchain sind kryptographisch miteinander verbundene und dezentral gespeicherte Datensätze. Jeder Datensatz enthält dabei einen Fingerabdruck (Hashwert) des vorhergehenden Datensatzes, einen Zeitstempel und weitere Transaktionsdaten. Dadurch, dass spätere Datensätze auf früheren Datensätzen aufbauen und diese damit als richtig bestätigen, ist es unmöglich diese früheren Daten zu ändern oder zu löschen, ohne alle darauf aufbauenden Daten ebenfalls zu ändern. Eine solche Änderung ist aber durch die verteilte Speicherung der Daten nicht möglich und würde sofort erkannt werden.

Beim Versiegeln von Dokumenten wird diese Eigenschaften der garantierten Datenintegrität einer Blockchain verwendet.

Der Verein zur Förderung der selbstständigen Nutzung von Daten hat es sich zum Ziel gesetzt, die selbstbestimmte Nutzung persönlicher Daten durch Privatpersonen zu fördern. Die Blockchain-Technologie ermöglicht nun auch für die private Datennutzung einen einfachen und sicheren Weg zum Nachweis von Datenintegrität und daher bietet der Verein dieses Service an. Durch die Kombination von mehreren Vorgängen - derzeit erfolgt die Gruppierung pro Tag - können die dafür notwendigen Transaktionskosten gering gehalten werden und sind durch das Vereinsbudget abgedeckt.

Auf Github ist der Quellcode für diese Webseite unter der MIT-Lizenz frei verfügbar: https://github.com/OwnYourData/app-seal

Der Dienst zum Versiegeln von Dokumenten verwendet im Hintergrund eine frei zugängliche API, die ebenfalls von anderen Diensten genutzt werden kann. Mittels HTTP POST Request kann ein Hashwert sowohl in die Blockchain geschrieben werden, oder - wenn der Hashwert zuvor bereits verwendet wurde - wird die Adresse in der Blockchain zurückgegeben. Da alle Hashwerte eines Tages in einem Merkle-Baum kombiniert werden, ist neben der Adresse in der Blockchain auch der Audit-Proof wie in RFC 6962 angegeben.

Diese API ist mittels Swagger hier beschrieben (nur in englischer Sprache): https://blockchain.ownyourdata.eu/doc
Auf Github ist der Quellcode für das API-Service unter der MIT-Lizenz frei verfügbar:

Verwende den folgenden Aufruf, um einen Hashwert mittels API in der Blockchain zu speichern:

$ curl -X POST "https://blockchain.ownyourdata.eu/api/doc?hash=a955f04c736f78474999901fd78d043a72969c0b0006b104fb55b1e255ac4b58"

Beim ersten Aufruf wird folgende JSON-Struktur als Rückgabewert geliefert:

{
  "status": "new",
  "address": "",
  "root-node": "",
  "audit-proof": [],
  "ether-timestamp": "",
  "oyd-timestamp": "2018-09-01T22:39:16Z"
}

Sobald alle eingegangenen Hashwerte eines Tages tatsächlich in die Blockchain geschrieben wurden, enthält der Rückgabewert folgende weitere Informationen:

{
  "status": "exist",
  "address": "0xcf4a0cf4b9ea6d10c0407680fe1f73df1a59c362db29a1863e14d85fcdb69c9c",
  "root-node": "10611bc55c740b46517ce15ad82b79350468affc4660379771475eaa494ec3fd",
  "audit-proof": "+661eec906b6a88b3bf751d7f5c62b84de03fadaed78e9398efebf408b2a3236c,
                  -0cdf07531250367444ae8a3bfcbb0b928e1313ece65f2a45abcc2226e278d6cd,
                  -5cbe1017c15d83ce8f4c02b4c1d8d2fa0c51bbe281363d98ef7dc33ffe26a072",
  "ether-timestamp": "2018-09-02T06:00:17Z",
  "oyd-timestamp": "2018-09-01T22:39:16Z"
}

Anmerkung: die Vorzeichen (+,-) im Feld audit-proof geben an, ob der jeweilige Hashwert als linker (+) oder rechter (-) Knoten bei der Überprüfung zur Berechnung des Wurzelknotens zu betrachten ist - siehe RFC 6962. Als Hashfunktion wird generell SHA256 verwendet.

Ein Merkle-Baum ist eine sogenannter Binärbaum, d.h., jeder Knoten besitzt höchstens 2 Kindknoten. Die Blätter sind dabei Hash-Werte und jeweils 2 benachbarte Knoten bilden einen übergeordneten Knoten. Der Hash-Wert eines Blattes, gemeinsam mit dem Audit-Proof (lt. RFC 6962) ergibt eindeutig die Wurzel des Merkle-Baums. Wichtig ist bei der Anwendung des Audit-Proofs die Angabe, ob es sich jeweils um den linken oder rechten Knoten im Pfad handelt.

In der vorliegenden Implementierung werden die Werte des Audit-Proofs durch + (linker Knoten) und - (rechter Knoten) gekennzeichnet. Gemeinsam mit dem Hashwert kann so der Wurzelknoten berechnet werden. Das Verfahren des Merkle Baums wird verwendet, um alle eingegangen Hash Werte eines Tages in eben diesem Binärbaum anzuordnen und dann nur den Wurzelknoten selbst in der Blockchain zu speichern.