Blockchain für schlaue Leute*

*Die sich dumm fühlen, wenn jemand „Blockchain“ sagt

Blockchain auf einen Blick

Blockchain ist der Begriff für eine Technologie, die 2009 zum ersten Mal angewendet wurde und vor allem für ihren Einsatz im Zusammenhang mit Kryptowährung bekannt ist. Blockchain ist schnell zu einer vielfach verwendeten Methode geworden, die so unterschiedliche Bereiche wie beispielsweise Cyber-Sicherheit, Wahlen, Immobilien, Analytik und Mitfahrgelegenheiten abdeckt.

Für die Zwecke der Kryptowährung dient eine Blockchain als öffentlich verteiltes Register, eine sichere Methode, um Peer-to-Peer-Transaktionen zu erfassen und öffentlich nachprüfbar zu machen. Blockchain verlässt sich nicht auf eine zentrale Behörde und, am allerwichtigsten, macht es Doppelausgaben und Fälschungen unmöglich. Theoretisch sind Doppelausgaben und Fälschungen zwar möglich, aber die hierfür erforderliche Zeit wäre länger als das momentane Alter unseres Universums.

Noch unmöglicher wäre es, die Blockchain-Technologie im Rahmen dieses Artikels gründlich zu erklären! Stattdessen möchten wir einige grundlegende Konzepte im Zusammenhang mit der Verwendung von Blockchain durch Scrive erläutern. Je nachdem, wie technisch versiert Sie sind, ist das Folgende entweder ein Ausblick auf ein richtig hohes Level oder ein granularer Tieftauchgang.

Warum Scrive Blockchain verwendet

Scrive garantiert die Integrität Ihres Dokuments, indem es es mit einer digitalen Signatur versiegelt. Die Blockchain-Technologie ermöglicht eine Methode zur Sicherung der digitalen Signatur, indem sie diese in ein beständiges, überprüfbares öffentliches Register einträgt. Dies bedeutet, dass Sie im Streitfall nachweisen können, dass Ihr Dokument:

  • nicht verändert wurde
  • keine Fälschung ist
  • genau an dem Datum und zu der Uhrzeit erstellt wurde, die im Zusammenhang mit der digitalen Signatur angezeigt werden.

Kryptographischer Hash

Es ist möglich, einen einzigartigen, fälschungssicheren Fingerabdruck jeder digitalen Datei zu erstellen, indem man einen Algorithmus auf die Binärdaten anwendet. Der resultierende Fingerabdruck ist ein Wert, der als kryptographischer Hash bekannt ist.

Ein Beispiel für eine sehr einfache Hashing-Funktion wäre:

  • Verwenden Sie nur jeden zweiten Buchstaben
  • Der Hash darf maximal 6 Buchstaben enthalten
  • Füllen Sie Leerstellen bei Bedarf mit X aus

Blockchain –> BOKHIX
To be, or not to be, that is the question –> TBONTO

Angesichts der möglichen Buchstabenkombinationen würde dieser Algorithmus es nicht schaffen, wirklich einzigartige Fingerabdrücke für die Textketten zu erzeugen. Es gibt jedoch viel ausgeklügeltere Möglichkeiten, dies zu tun. Man kann beispielsweise die binäre Darstellung von Buchstaben nutzen und Funktionen anwenden, die viel interessanter sind als „jeder zweite Buchstabe“. Wenn man bedenkt, dass eine einfache Datei von 100 KB durch eine 800.000-stellige Zeichenkette von Einsen und Nullen dargestellt werden kann, ist es auch nicht weiter verwunderlich, dass Menschen Doktorarbeiten über Hash-Funktionen schreiben.

Im Falle eines Scrive-Dokuments ist die Datei das elektronisch unterzeichnete Dokument im PDF-Format, das Nachweis-Packet und alle Anhänge. Um ein elektronisch unterzeichnetes Dokument zu versiegeln, verwendet Scrive den Algorithmus SHA-256, der es unmöglich macht, einen identischen Hash aus irgendeinem anderen Dokument oder einer anderen Datei zu erzeugen. Und die Art eines kryptographischen Hashes ist so beschaffen, dass es unmöglich ist, damit den Inhalt des Dokuments neu zu erstellen. Der Hash wird dann an Guardtime, den Leistungserbringer und Partner von Scrive, übermittelt.

Merkle-Baum

Um die Integrität mehrerer Dateien zu gewährleisten, können Sie deren Hash-Werte in eine Struktur, die „Merkle-Baum“ genannt wird, einbinden. Jeder Hash stellt dabei einen Knotenpunkt in der Baumstruktur dar.

Jedes der Blätter (die Knotenpunkte auf der untersten Baumebene) ist ein Hash, der eine digitale Datei darstellt (nicht die Datei selbst). Sie können die Hashes zweier benachbarter Blätter (Hash G und Hash H) kombinieren und mit der gleichen Hash-Funktion (dem Algorithmus SHA-256) einen dritten Hash-Wert berechnen, indem Sie einen Knoten auf einer Ebene weiter oben im Baum erstellen (Hash C). Wenn Sie diesen Prozess im Baum fortsetzen, können Sie am Ende den Top-Level-Hash (Top) berechnen.

Alle Knotenpunkte im Baum (die Blätter sowie die Werte der Zwischenhashes) sind so miteinander verknüpft, dass Sie den richtigen Top-Level-Wert nur berechnen können, wenn alle Hashes im Baum korrekt sind. Das heißt: Diese wurden nicht verändert oder gefälscht. Diese Berechnungsmethode macht Fälschungen unmöglich, denn wenn auch nur ein einziger Hash verändert wurde, kann dies nicht durch Ändern eines anderen Hashes im Baum kompensiert werden, um am Ende den richtigen Top-Level-Hash zu erhalten.

Wenn Ihr Dokument im Diagramm durch Hash G dargestellt wird, benötigen Sie die Werte für Hash H, Hash D und Hash B, um Top zu berechnen.

Blockchain: sicherer Speicherplatz

Eine Blockchain ist eine effiziente und sichere Möglichkeit, die Datensätze mehrerer Merkle-Bäume zu speichern. Sie können sich eine Blockchain als Datenbank vorstellen. Im Gegensatz zu den meisten herkömmlichen Datenbanken, die aus Tabellen mit Spalten und Zeilen bestehen, besteht eine Blockchain jedoch aus aufeinanderfolgenden Blöcken, die über eine Kryptographie sicher miteinander verbunden sind. Ein weiterer Unterschied besteht darin, dass die Sicherheit nicht von Zugriffsberechtigungen abhängt, sondern die Daten unabhängig verifiziert werden.

In den meisten herkömmlichen Datenbanken gibt es vier Arten von Aktionen, die Sie ausführen können: Erstellen, Lesen, Aktualisieren und Löschen (CRUD). Mit der Blockchain dahingegen ist es nur das Erstellen und Lesen möglich. Um neue Daten zu erstellen, wird ein neuer Block zur Kette hinzugefügt, sodass der letzte Block in der Kette der jüngste ist. Immer, wenn ein neuer Block hinzugefügt wird, wird er von mehreren unabhängigen Parteien validiert, um sich vor Betrug zu schützen.

Eine KSI-Blockchain ist in Realität ein großer, kontinuierlich wachsender Merkle-Baum. Jeder Block stellt einen Hash-Wert dar, der so mit dem vorherigen Block verknüpft ist, dass es unmöglich wäre, die Hash-Werte der später hinzugefügten Blöcke korrekt zu berechnen, wenn ein Datensatz in der Kette geändert worden wäre.

Das Hinzufügen neuer Daten zur Blockchain ist das gleiche wie das Erstellen eines neuen Knotens in einem Merkle-Baum. Der Hash der Wurzel eines Merkle-Baums (der noch nicht mit der Blockchain verbunden ist) wird mit dem Hash des vorherigen Blocks kombiniert. Dann verwendet man die gleiche Hashing-Funktion (den Algorithmus SHA-256), um den Hash des neuen Blocks zu berechnen. Der neueste Block ist untrennbar mit dem vorherigen Block sowie mit dem Merkle-Baum verbunden, der der Blockchain gerade hinzugefügt wurde.

Um auf das Beispiel der Kryptowährung zurückzukommen: Jedes Blatt im Merkle-Baum enthält Registerinformationen. Da das Register öffentlich und unveränderlich ist, kann jeder den Saldo eines Kontos berechnen, gleichzeitig ist es aber niemandem möglich, einen Kontosaldo zu ändern.

Dokumentenprüfung

Im Falle der Versiegelung und Verifizierung eines Scrive-Dokuments veröffentlicht Guardtime regelmäßig (einmal pro Monat) den Top-Level-Hash des kontinuierlich wachsenden Merkle-Baums. Dieser Hash ist mit den Hashes aller Scrive-Dokumente verknüpft, die im Vormonat unterzeichnet und versiegelt wurden.

Um den neuen Block zu validieren, veröffentlicht Guardtime den Hash in der Financial Times, die dem Rechtsstandard “weithin sichtbarer Medien” entspricht. Einfacher ausgedrückt bedeutet dies, dass der Hash in eine öffentliche Akte eingetragen wird. Die Veränderung von nur einem einzigen Blatt eines Merkle-Baums würde die Blockchain durchbrechen. Die Veröffentlichung des Hash in der Financial Times ist ein Mittel zur Überprüfung des korrekten Wertes eines Blocks unabhängig von Scrive oder Guardtime.

Nach der Veröffentlichung werden alle durch den neuen Hash repräsentierten Scrive-Dokumente ein zweites Mal versiegelt. Das zweite Siegel ebnet den Weg zum Gipfel des Baumes, d. h. bietet die Zwischenhash-Werte, die Sie benötigen, um den veröffentlichten Hash neu zu berechnen.

Die Verifizierung erfordert nur das versiegelte Dokument und den Zugriff auf den in der Financial Times veröffentlichten Hash. Der Prozess wäre wie folgt:

  • Neuberechnung des Dokumenten-Hash.
  • Neuerstellung des Merkle-Baums mithilfe der Siegel-Informationen.
  • Vergleich des Top-Level-Hash mit dem in der Financial Times veröffentlichten Hash.

Aber das war noch nicht alles

Angesichts der Vielfalt von Blockchain-Anwendungen, Ausführungen und neuen Entwicklungen in der Technologie werden Sie wahrscheinlich eine Vielzahl von Erklärungen zu diesen Themen finden. Es gibt keinen schnellen und einfachen Weg, die Blockchain-Technologie zu durchschauen, und die meisten von uns werden die feinen Details nie verstehen. Wenn Sie also interessiert sind, nehmen Sie sich Zeit und konsultieren Sie mehrere Quellen.