Blockchain

Aus robopagex.com
Zur Navigation springen Zur Suche springen

Grundlagen

Zwei kryptografische Grundbausteine der Blockchain:
# Kryptografische Hashfunktionen
# Digitale Signaturen

Kryptografische Hashfunktionen

Wichtigsten geforderten Sicherheitseigenschaften
- Einwegfunktionseigenschaften(preimage-resistance)
- Kollisionsresistenz(collision-resistance)

Einwegfunktionseigenschaften

a(b)=c (true)
 Der Eingabewert/String sollte immer sehr groß sein  
c(b)=a (false)
Für jeden Eingabwert wird der Hash berechnet und vergleichen diesen mit dem Ausgabewerten!
Wie praktikabel ist diese Methode? 
2^256
10~77

Kollisionsresistenz

Keine Kollision zweier verschiedener Eingabewerte
 a(b) == g(h) 
Kollisionsresistenz ist eine starke Anforderung an jede Einwegfunktion/Hashfunktion
Kollisionsresistenz schützt vor gezielter bösartiger Manipulation

Digitale Signaturen

Eigenschaften von physischen Unterschriften <=> nachbildung für digitale Dokumente
Signaturschema -> Signatur -> Bitfolge -> Anhang an die Nachricht

Signaturschema

Zwei Anforderungen an das Signaturschema:
# Korrektheit, erfolgreiche Verifikation der Sigantur
# Unfälschbarkeit der Signatur 

Funktionen des Signaturschemas

# Generieren
 Schlüsselpaar aus Signierkey(PR) und Verifikationskey(PUB) (Private & Public Key Schema)
# Signieren
 Erzeugt aus/für Nachricht mit PR eine Signatur
# Verifizieren
 Überprüft die die Gültigkeit einer Signatur

Digitales Bargeld

 Direkte Zahlungen von Zahlenden an einen Empfänger ohne eine Mittelsmann, Dritten oder einen Diensleister haben folgende Vorteile:
 1. Zahlung kann nicht blockiert werden
 2. Kann keine Gebühren erheben
 3. Zahlung kann nicht rückgängig gemacht werden
 4. Geld kann nicht verschwinden durch Insolvenz oder Betrug

Hauptanforderungen an Bargeld

1. Überprüfung der Echtheit
2. Nur der Herausgeber darf Bargeld erschaffen
Bsp.: Geldnote hat eine Seriennummer und eine Wert
Im Gegensatz zu physischen Bargeld lassen sich digitale Nachrichten beliebig kopieren(Double-Spend-Problem)

Double-Spending-Problem

Das Signaturschema schützt nicht vor Versand weiterer Kopien der Nachricht

Lösung für das Problem:
1. Ein Zentrales-Server-Buch für alle Geldnoten
2. ZSB prüft und führt alle Empfänger und Zahlungseingänge
Blockchain Lösung
1. Zeitliche Reihenfolge von Transaktionen
2. Bei widersprüchlichen Transaktionen wird immer die Erste akzeptiert

Timechain

Die Blockchain ist eine Art Zeitstempelbuch mit Zeitstempeln für jede Transaktion

Digitale Zeitstempel

'

NaCl

NaCl und das darauf basierende Sodium, auch libsodium genannt, 
sind Kryptographie-Programmbibliotheken, 
die modern, leicht zu nutzen, sicher, schnell,
frei und Open-Source-Software sind. 
Sie werden in Discord, Dovecot, KeePassXC, PowerDNS, Saltstack, Stellar, Threema, Tox, Wire und WordPress verwendet.
https://nacl.cr.yp.to/

Hashcash

Hashcash ist ein in den 1990er Jahren von Adam Back konzipiertes Proof-of-Work System zur Verhinderung von Denial-of-Service-Attacken.
Dies geschieht mittels einer Rechenaufgabe, die moderat schwierig aufzustellen und durchzurechnen ist, 
deren Lösung aber leicht zu überprüfen ist.
http://hashcash.org/


Allgemein:

Zeitstempel, Timestamping sind Sicherheitseigenschaften von Hashfunktionen
Dezentrale Timestamping Methoden
Proof-of-Work, Beweis für einen geleistete Rechenarbeit