Die in der Blockchain verwendeten Hash-Algorithmen wurden entwickelt, um Daten zu verschlüsseln. Die erste digitale Währung Bitcoin verwendet den Verschlüsselungsalgorithmus Secure Hash Algorithm-256.
Der Algorithmus wurde 1994 erstellt und viermal aktualisiert: SHA-1, SHA-2, SHA-3, SHA-256. Die Zahl 256 bedeutet, dass jeder Hash einen 256-Bit-Code hat.
Was ist ein Hash?
Dies ist ein verschlüsselter Wert. Jedes Wort, das Sie durch die Hash-Funktion laufen lassen, wird zu einer Reihe von Buchstaben und Zahlen einer bestimmten Länge, die als “Hash” bezeichnet wird.
Das Wort “Hacken”, das wir durch die SHA-256-Hash-Funktion laufen gelassen haben, sieht folgendermaßen aus:
e269cf574be41db5428803c5e879f2d996628a359d1129d159833e544b98c4d9
Wenn wir einen Buchstaben im Wort “Hacken” ersetzen und es durch dieselbe Hash-Funktion laufen lassen, ändert sich der Hash vollständig und sieht so aus:
176453e3134e2a7d06c97b1a77a725f36539f98f0b9219786ed2118a3f51b21e
Ein Hash wird auch als Fingerabdruck oder Eindruck bezeichnet. Die Hash-Größe hängt jedoch nicht von den ursprünglichen Informationen ab. Wenn wir einen ganzen Satz durch die Hashfunktion laufen lassen, ändert sich die Länge des Strings nicht.
Wenn wir einen Satz durch die Hash-Funktion laufen lassen:
„Bei Hacken geht es um das Leben.“
Dann erzeugt die Hashfunktion einen Code gleicher Länge:
15ea57436f1f4198bf71b6c616f54f354103137f5d4a59934bd0d91add10e381
Was ist eine Hash-Funktion?
Dies ist der Name des Verschlüsselungsverfahrens. Eine wichtige Eigenschaft von Hashfunktionen ist die Hashwert-Eindeutigkeit. Der Hash ist immer an denselben Wert gebunden.
Was wird auf der Bitcoin-Blockchain gehasht?
- Informationen über den Absender, Empfänger, die Anzahl der gesendeten Coins und das Datum der Transaktion.
- Jeder Block in der Blockchain hat einen eindeutigen Hash.
Somit enthält jeder Block Folgendes: Informationen über den Absender, Empfänger, die Anzahl der gesendeten Coins, das Versanddatum, seinen eigenen eindeutigen Hashwert und den Hashwert des vorherigen Blocks. Der Hashwert des vorherigen Blocks im neuen Block ermöglicht es Ihnen, eine Kette zwischen Blöcken zu erstellen. Es ist diese Eigenschaft, die der Blockchain Rückverfolgbarkeit, Sicherheit und Zuverlässigkeit verleiht.
Wenn Sie die Informationen in einem der Blöcke in der Blockchain ändern, ändert sich automatisch der Hashwert dieses Blocks, der Hashwert des geänderten Blocks wird in die Informationen des nächsten Blocks aufgenommen und so weiter entlang der Kette.
Wie funktioniert das Sicherheitssystem in der Bitcoin-Blockchain?
Wenn ein neuer Nutzer-Knoten verbunden wird, werden Informationen über alle Blöcke in der Blockchain dorthin kopiert. Bevor ein neuer Block hinzugefügt wird, wird die Blockchain mit allen Knoten synchronisiert, um zu bestätigen, dass sich der Hashwert in den Blöcken nicht geändert hat. Nach dieser Bestätigung wird ein neuer Block angehängt. Wenn Sie die Informationen in einem bestehenden Block ändern (die Anzahl der gesendeten Coins oder die Adresse des Empfängers korrigieren), dann wird die Blockchain diese Änderung als neuen Block festlegen. Als nächstes beginnt die Überprüfung mit Kopien von Blöcken in Nutzer-Knoten, gefolgt von einem Fehler, wenn die Daten nicht übereinstimmen. Damit dieser Block in der Blockchain aufgenommen wird, müssen Änderungen in allen Nutzer-Knoten vorgenommen werden.
Stellen Sie sich vor, dass genügend Rechenleistung vorhanden ist, um die Daten in allen Nutzer-Knoten zu ändern, da moderne Computer können Millionen von Hashwerten pro Sekunde bearbeiten. In diesem Fall hilft die zweite Schutzfunktion – das Proof-of-Work-Protokoll.
Proof-of-Work erstellt Blöcke alle zehn Minuten. Es wird also Jahre dauern, bis Änderungen an einem Block erstellt und Änderungen an allen Knoten vorgenommen werden.