DUH-IT

Funktionsweise & Transaktionsablauf

DUH-IT - Innovationstransfer für die Region Dortmund-Unna-Hamm

Ein Projekt von TU Dortmund und Fraunhofer IML gefördert durch EFRE/JTF NRW

🚀 by Decker

Fork

Was passiert, wenn zwei Blöcke gleichzeitig zur Blockchain hinzugefügt werden?

Die Blockchain spaltet sich in zwei verschiedene Versionen auf, sie “forkt”.

images/Fork.png

Ein Fork ist also eine Abspaltung einer bestehenden Blockchain in zwei separate Blockchains.

Eine Abweichung von den zuvor festgehaltenen Vereinbarungen ist möglich, wenn es zu Modifikationen im Konsensprotokoll oder in den zugrunde liegenden Regeln kommt.

Fork

Was passiert, wenn zwei Blöcke gleichzeitig zur Blockchain hinzugefügt werden?

Die Blockchain spaltet sich in zwei verschiedene Versionen auf, sie “forkt”.

images/Fork.png

Es gibt zwei Hauptarten von Forks:

  • Hard Fork: Führt zu einer dauerhaften Trennung und oft zu einer neuen Kryptowährung.
  • Soft Fork: Ist abwärtskompatibel, sodass die alte Blockchain weiterhin ohne Datenverlust funktioniert.

Fork

Wie wird nach der Auswahl einer Version verfahren?

images/ForkV.png
ausgewählte Version einer Fork

  • Das Netzwerk arbeitet mit der ausgewählten Version weiter und löscht die andere Version
  • Transaktionen der gelöschten Version werden neu eingereiht

Fork

Was passiert, wenn jemand versucht, einen bösartigen Block hinzuzufügen?

Jemand kann versuchen, so viele Blöcke hinzuzufügen, wie er möchte, aber das Netzwerk wird diese Blöcke nur akzeptieren, wenn mehr als 50 % der Rechenleistung des gesamten Netzwerks darauf verwendet wurden.

Dies ist der Zweck des Proof-of-Work-Konsensmechanismus und der Grund, warum Blockchain-Netzwerke wie Bitcoin als so sicher gelten:
  • Theoretisch benötigt man die Mehrheit der Rechenleistung des Netzwerks, um bösartige Blöcke hinzuzufügen
  • Die enorme Menge an Ressourcen, die im Bitcoin-Netzwerk aufgewendet werden, macht einen Angriff extrem teuer und logistisch schwer erreichbar

Quizfragen

Was ist der Hauptunterschied zwischen einem Hard Fork und einem Soft Fork in der Blockchain-Technologie?

  1. Ein Hard Fork ist eine vorübergehende Änderung, die später rückgängig gemacht wird, während ein Soft Fork eine dauerhafte Änderung ist.

  2. Ein Soft Fork führt zu einer dauerhaften Divergenz, während ein Hard Fork abwärtskompatibel ist.

  1. Ein Hard Fork führt zu einer dauerhaften Divergenz, während ein Soft Fork abwärtskompatibel ist.

  2. Ein Soft Fork führt zu einer neuen Kryptowährung, während ein Hard Fork die alte Blockchain weiterhin funktionstüchtig lässt.

  • 1
  • 2
  • 3
  • 4

Quizfragen

Was passiert, wenn zwei Blöcke gleichzeitig zur PoW-Blockchain hinzugefügt werden?

  1. Die Blockchain wird in zwei verschiedene Versionen aufgeteilt, aber das Netzwerk wählt automatisch eine Version aus und löscht die andere.

  2. Die Blockchain bleibt unverändert, und beide Blöcke werden dauerhaft in der Blockchain gespeichert.

  1. Das Netzwerk überprüft, welche Version mehr Rechenleistung benötigt hat, und akzeptiert diese, während die andere gelöscht wird.

  2. Das Netzwerk führt eine sofortige Hard Fork durch, wodurch zwei separate Blockchains entstehen.

  • 1
  • 2
  • 3
  • 4

Quizfragen

Was passiert, wenn jemand versucht, einen bösartigen Block zur PoW-Blockchain hinzuzufügen?

  1. Das Netzwerk wird den Block sofort akzeptieren, wenn er von einem Miner hinzugefügt wird.

  2. Der Block wird automatisch von der Blockchain gelöscht, ohne dass eine Überprüfung stattfindet.

  1. Das Netzwerk erlaubt keine Änderungen an der Blockchain, selbst wenn mehr als 50 % der Rechenleistung investiert werden.

  2. Das Netzwerk wird den Block nur akzeptieren, wenn mehr als 50 % der Rechenleistung des gesamten Netzwerks in den Block investiert wurden.

  • 1
  • 2
  • 3
  • 4

Hash

  • Ein Hash oder eine Hashfunktion ist wie ein digitaler Fingerabdruck.
  • Sie nimmt eine Eingabe beliebiger Größe und erzeugt eine Ausgabe mit fester Länge.
  • Die Eingabe kann jede Art von Datei sein.
  • Eine häufig verwendete Hashfunktion ist die SHA-256 (Secure Hash Algorithm – 256 Bit).
  • Die Ausgabe ist eine Zeichenkette im Hexadezimalformat.
images/Hash.png
Unwandlung einer Nachricht durch eine Hashfunktion in einen eindeutigen Hashwert

Hash

  • Ein Hash oder eine Hashfunktion ist wie ein digitaler Fingerabdruck.
  • Sie nimmt eine Eingabe beliebiger Größe und erzeugt eine Ausgabe mit fester Länge.
  • Eine kleine Änderung in den Eingabedaten führt zu einer drastischen Änderung der Ausgabe
  • Zum Beispiel:

  • SHA-256 von „Dortmund“: 2ad64c143f3eb3b8177f9b9bc71f548cf0e6be163c1a73f6785b400739199850

  • SHA-256 von „dortmund“: 49ffa0597506d25557a2f436f042931eecd373c1c63b64f95f81b33528313315

  • SHA-256 von „1;7– xyz“: 1f6c9129615be16a5f01dfb59712636cf290591ac37f5f6bcd028d06838cc74f

  • Aus dem Hash können keine Rückschlüsse auf die ursprüngliche Datei gezogen werden!

Quizfragen

Welche Eigenschaft beschreibt eine Hash-Funktion am besten?
  • Eine Hash-Funktion erzeugt eine Ausgabe variabler Länge basierend auf der Eingabe.
  • Eine Hash-Funktion erzeugt eine Ausgabe fester Länge, unabhängig von der Größe der Eingabe.
  • Eine Hash-Funktion kann die Originaldatei aus dem Hash-Wert rekonstruieren.
  • Eine Hash-Funktion ist nur für Zahlen geeignet und funktioniert nicht mit Textdaten.

Was passiert, wenn sich die Eingabedaten einer Hash-Funktion nur minimal ändern?
  • Die Ausgabe bleibt nahezu unverändert.
  • Die Ausgabe verändert sich leicht, aber bleibt fast gleich.
  • Die Ausgabe verändert sich sehr stark.
  • Die Hash-Funktion erkennt keine Änderungen an den Eingabedaten.

Nonce (“Number used only once”)

  • Es ist möglich, ein Ziel für den Hash-Wert festzulegen.
  • Dieses Ziel wird manchmal auch als Block-Schwierigkeit oder Netzwerk-Schwierigkeit bezeichnet.
  • Zum Beispiel könnte das Ziel für den Hash-Wert sein, dass er mit einer Null (oder mit X Nullen) beginnen muss.
  • Die Daten müssen mit einem neuen, unbekannten Wert erweitert werden, um das Ziel zu erreichen.
  • Der Blockchain-Block enthält ein Feld für die Nonce.
images/Nonces/Nonce1.png

Nonce

  • Es ist möglich, ein Ziel für den Hash-Wert festzulegen.
  • Dieses Ziel wird manchmal auch als Block-Schwierigkeit oder Netzwerk-Schwierigkeit bezeichnet.
  • Zum Beispiel könnte das Ziel für den Hash-Wert sein, dass er mit einer Null (oder mit X Nullen) beginnen muss.
  • Die Daten müssen mit einem neuen, unbekannten Wert erweitert werden, um das Ziel zu erreichen.
  • Der Blockchain-Block enthält ein Feld für die Nonce.
images/Nonces/Nonce2.png

Nonce

  • Es ist möglich, ein Ziel für den Hash-Wert festzulegen.

  • Die Daten müssen mit einem neuen, unbekannten Wert erweitert werden, um das Ziel zu erreichen.

  • Dieses „Rätsel“ kann nur durch Trial-and-Error gelöst werden – mit verschiedenen Nonces (einer Zahl, die nur einmal verwendet wird).

  • Ziel: Der Hashwert muss mit einer Null beginnen.
images/Nonces/Nonce4.png

Nonce

  • Es ist möglich, ein Ziel für den Hash-Wert festzulegen.

  • Die Daten müssen mit einem neuen, unbekannten Wert erweitert werden, um das Ziel zu erreichen.

  • Dieses „Rätsel“ kann nur durch Trial-and-Error gelöst werden – mit verschiedenen Nonces (einer Zahl, die nur einmal verwendet wird).

  • Ziel: Der Hashwert muss mit einer Null beginnen.
images/Nonces/Nonce3.png

Nonce

  • Es ist möglich, ein Ziel für den Hash-Wert festzulegen.

  • Die Daten müssen mit einem neuen, unbekannten Wert erweitert werden, um das Ziel zu erreichen.

  • Dieses „Rätsel“ kann nur durch Trial-and-Error gelöst werden – mit verschiedenen Nonces (einer Zahl, die nur einmal verwendet wird).

  • Ziel: Der Hashwert muss mit einer Null beginnen.
images/Nonces/Nonce5.png

Rückblick: Überblick über ein Blockchain-Netzwerk

images/Ruckblick_BC_Nw.png

Quizfragen

Wie verläuft eine Blockchain-Transaktion?

A. Die Transaktion wird an das P2P-Netz der Knoten übertragen.

B. Die Transaktion ist abgeschlossen!

C. Jemand beantragt eine Transaktion.

D. Ein neuer Block wird dauerhaft und unabänderlich zur Blockchain hinzugefügt.

E. P2P-Knoten validieren Transaktionen und Benutzerstatus mithilfe von bekannten Algorithmen.

C
A
E
D
B
1
2
3
4
5

Mining

  • Teilnehmer lösen kryptografische Rätsel, um Transaktionen zu bestätigen.

  • Der erste Teilnehmer, der eine Transaktion bestätigt, erhält eine Belohnung (Mining).

  • Das Mining erfordert Rechenressourcen und Zeit.

  • Nur der erste Miner mit dem korrekten Ergebnis erhält die Belohnung.

Das Finden der richtigen Nonce erfordert das Lösen eines Rätsels durch Trial-and-Error.

images/ArrowDown.png

Wenn ein Miner die richtige Nonce findet, informiert er die anderen Netzwerkteilnehmer.

images/ArrowDown.png

Die anderen Teilnehmer im Netzwerk prüfen die vom Miner gefundene Lösung.

images/ArrowDown.png

Je nach Richtigkeit der Lösung akzeptieren oder lehnen sie diese ab.

Quizfragen

Wie verläuft ein PoW-Prozess?

A. Andere Teilnehmer des Netzes prüfen, ob die vom Miner gefundene Lösung korrekt ist.

B. Der Miner informiert die anderen Netzwerkteilnehmer, wenn er die richtige Nonce findet.

C. Um den richtigen Nonce zu finden, muss man ein Rätsel durch Versuch und Irrtum lösen.

D. Die anderen Netzwerkteilnehmer akzeptieren oder lehnen die Lösung je nach Korrektheit ab.

C
B
A
D
1
2
3
4

Mining

Mining

  • Teilnehmer lösen kryptografische Rätsel, um Transaktionen zu bestätigen.

  • Der erste Teilnehmer, der eine Transaktion bestätigt, erhält eine Belohnung (Mining).

  • Das Mining erfordert Rechenressourcen und Zeit.

  • Nur der erste Miner mit dem korrekten Ergebnis erhält die Belohnung.

Block Reward

  • Ein Block Reward ist die Belohnung für das Hinzufügen eines neuen Blocks zur Blockchain.

  • Die Belohnung besteht aus:

  • Neuen Kryptowährungseinheiten, die durch den Mining-Prozess erzeugt werden.

  • Transaktionsgebühren, die in dem neuen Block enthalten sind.

Quizfragen

Was beschreibt am besten die Funktion eines Hashs in einem digitalen Kontext?
  • Ein Hash verschlüsselt Daten, sodass nur der Besitzer des Schlüssels sie entschlüsseln kann.
  • Ein Hash ist wie ein digitaler Fingerabdruck, der aus einer beliebigen Eingabe eine feste Länge erstellt.
  • Ein Hash stellt eine unstrukturierte Sammlung von Daten dar, die von Computern verarbeitet wird.
  • Ein Hash speichert Daten in einer verschlüsselten Form, die nicht mehr verändert werden kann.

Was passiert beim Mining in einer Blockchain?
  • Der erste Teilnehmer, der das kryptografische Rätsel löst, erhält eine Belohnung.
  • Alle Teilnehmer, die das Rätsel lösen, erhalten eine Belohnung.
  • Mining erfordert keine Rechenleistung und Zeit.
  • Nur der erste Teilnehmer mit dem richtigen Ergebnis wird für das Mining bestraft.

Quizfragen

Was ist der Hauptzweck des Minings in einer Blockchain?

  1. Mining dient der Validierung von Transaktionen und dem Hinzufügen neuer Blöcke zur Blockchain.

  2. Miner sammeln Kryptowährungseinheiten, ohne dass sie für die Blockchain arbeiten müssen.

  1. Miner arbeiten nur an der Erstellung neuer Blöcke, ohne bestehende Transaktionen zu überprüfen.

  2. Mining wird nur verwendet, um die Blockchain sicherer zu machen, ohne Transaktionen zu validieren.

  • 1
  • 2
  • 3
  • 4

Quellen

Fill, H.-G., & Meier, A. (2020). Blockchain kompakt: Grundlagen, Anwendungsoptionen und kritische Bewertung. Springer Vieweg.

Knuth, D. E. (2000). The art of computer programming. Upper Saddle River, NJ: Addison-Wesley.

images/Logos/DUH-IT_Logo.png
Blockchain in der Logistik: Innovationstransfer für die Modellregion „Dortmund-Unna-Hamm“

Die Erstellung dieser Inhalte wurde durch das Forschungsprojekt DUH-IT gefördert.

images/Logos/tud_logo.png images/Logos/EU-MWIKE.png images/Logos/FraunhoferIML.png