UdZPraxis 1-2018

9 UdZ Praxis che Informationen die Rohdaten genau beinhalten. Durch die Verschlüsselung (Pub- lic-/Private-Key-Encryption) kann nur derjenige bestimmte Informationen sehen, der einen privaten Schlüssel zu der Adresse (öffentlicher Schlüssel) hat, auf welcher die je- weilige Information gespeichert wurde. Welche Teile der Daten verschlüsselt und wel- che offen sind, hängt auch hier von der Ausgestaltung der jeweiligen Applikation ab. Ein Problem dieser vollständigen Speicherung bei verschiedenen Teilnehmern wird sofort klar: Eine solche Speicherung ist bezüglich der Speichernutzung alles andere als effizient. Für Anwendungen wie den Bitcoin macht das wenig aus – alle mittlerweile über 290.000.000 Bitcoin-Transaktionen führen zu einer Gesamtgröße der Blockchain von gerade mal 150 GB (ungefährer Wert). Für speicherplatzintensive Anwendungen stellt dies aber natürlich ein Problem dar. Doch abweichend von der bis hierhin dargestellten Funktionsweise gibt es hierfür bereits Ansätze, Blockchains nur oder teilweise auf zentralen Servern zu speichern und nur die Prüfsummen im Netzwerk zu verteilen. Blockchains sind transaktionsbasiert und die Transaktionen werden in Blöcken ge- speichert. Zumindest das ist eine Aussage, von der bisher kaum abgewichen wird. In Blockchains werden Daten nicht geändert, sondern nur hinzugefügt. Soll in einer Block- chain also eine Information über einen neuen Zustand gespeichert werden, wird die Än- derung zum vorherigen Zustand aufgenommen. Bei Besitzverhältnissen ist dies denkbar einfach: Eine Übergabe von einem Besitzer an einen anderen nennt man Transaktion. Die Transaktionen wiederum werden zu Blöcken zusammengefasst. Dabei wird über alle Transaktionen, die zu einem Block gehören, eine „Prüfsumme“ (auch „Hashwert“) ge- bildet und im sogenannten „Blockkopf“ (auch „Blockheader“) gespeichert. Die kleins- te Änderung einer Transaktion führt zu einer Änderung der zugehörigen Prüfsumme. Im Blockkopf werden zusätzlich einige andere blockchainspezifische Daten gespeichert, etwa die Nummer des Blocks oder die Uhrzeit der Entstehung desselben. Auf jeden Fall wird aber die Prüfsumme des Blockkopfs des vorangegangenen Blocks gespeichert. Dies führt dazu, dass, sollte irgendeine Transaktion in irgendeinem Block geändert werden, alle Blockköpfe ab diesem Block verändert werden. Es reicht also, wenn die Netzknoten die Prüfsumme des Blockkopfs ihres letzten Blocks abgleichen. Solange diese gleich sind, sind auch alle Daten gleich. Zeigt jedoch ein Netzknoten eine andere Prüfsumme, so sind die Daten an diesem Standort möglicherweise manipuliert. Die Fälschungssicherheit ist somit trotz Dezentralität gegeben. Zur Prüfung vor der Aufnahme der Transaktionen wird ein gemeinsames Regel- werk vorgehalten. Auch hier gilt: Für Kryptowährungen ist das recht einfach. Eine Transaktion ist nur dann gültig, wenn der Überweisende über Coins verfügen kann. Das Regelwerk muss dabei von den Netzknoten eingehalten werden – eine Abwei- chung würde zu einem anderen Datenstand führen, und der Datenstand des Netz- knotens würde aufgrund seiner abweichenden Prüfsumme abgelehnt werden. Das Regelwerk dient also nicht nur der Vermeidung von nicht zulässigen, womöglich betrügerischen Transaktionen, sondern auch schlicht der Organisation der Daten. In anderen Anwendungsbereichen der Blockchain-Technologie sind wesentlich kompli- ziertere Regelwerke denkbar – soll etwa eine Lieferkette in einer Blockchain transparent gemacht werden, müsste das Regelwerk mit konvergenten und divergenten Material- flüssen umgehen können.

RkJQdWJsaXNoZXIy NzcyMw==