Digitale Signatur

Die Verwaltung von Eigentum ist aktuell ein zentrales Einsatzgebiet der Blockchain. Wer über Eigentum verfügen will, muss quasi einen Vertrag unterschreiben. Die digitale Signatur ermöglicht das. Sie kommt in der Praxis auch abseits der Blockchain zur Anwendung. Wie aber funktioniert das nun technisch?

Bitcoin kurz analysiert – Währung, Kapitalanlage oder Spekulation? Wie spekuliert man am besten mit der Kryptowährung? – weitere Informationen zum Thema bietet mein KOSTENLOSES WHITEPAPER! Tragen Sie hier Ihre eMail-Adresse ein

Eigenhändige Unterschriften dienen seit jeher dazu, eine berechtigte Person zu authentifizieren. So wird die Kenntnisname von Sachverhalten, die Zustimmung zu einem Vertrag oder der Abschluss einer Transaktion durch die Unterschrift bekräftigt. Das gilt in vergleichbarer Form natürlich auch in der Welt der Digitalisierung. Die digitale Signatur ist das Gegenstück zur eigenhändigen Unterschrift. Sie ist allerdings wesentlich sicherer und die Überprüfung ihrer Korrektheit kann durch jedermann quasi voraussetzungslos erfolgen.

Im Rahmen der Blockchain werden öffentliche kryptographische Schlüssel in der Ausprägung “von öffentlich an privat” sowie die asymmetrische Kryptographie verwendet, um Eigentumsübertragungen zwischen Konten zu ermöglichen. Wie aber kann gewährleistet werden, dass in einem öffentlichen Peer-to-Peer-System  nur der rechtmäßige Eigentümer über sein Eigentum verfügen kann? Dazu muss der Eigentümer nicht nur identifiziert werden, er muss auch Transaktionen autorisieren, wenn er über sein Eigentum verfügt. Dies erfolgt mittels der digitalen Signatur. In der asymmetrischen Kryptographie wird nicht nur ein Schlüssel, sondern ein Schlüsselpaar zur Verschlüsselung und zur Entschlüsselung verwendet. Man spricht daher von einem “private key” und einem dazu passenden “public key”. Das Schlüsselpaar ist durch eine mathematische Beziehung miteinander eindeutig verbunden.

Technisch wird dafür die asymmetrische Kryptographie in der Variante “von privat an öffentlich” genutzt. Vorsicht: der Begriff “digitale Signatur” wird oft auch synonym mit “elektronischer Signatur” oder “elektronischer Unterschrift” oder auch “Handysignatur” verwendet. Das ist jedoch unzutreffend. Während im Bereich von e-government oft schon die elektronische Unterschrift eingesetzt wird, gelangt die digitale Signatur im Bereich der Blockchain technisch ohne legitimierende Autorität zu Anwendung. Dies resultiert zwangsläufig aus der Natur eines dezentralen Peer-to-Peer-Systems.

Welche Herausforderung muss bewältigt werden?

Eigenhändige Unterschriften sind einzigartig. Dennoch sind sie relativ leicht zu fälschen. Die digitale Signatur muss jedoch sicher sein, da Teilnehmer in einem offenen System wie der Blockchain grundsätzlich nicht als vertrauenswürdige Partner angesehen werden können. Das Vertrauen in das System muss daher auf technischem Wege hergestellt werden. Mittels der Unterschrift, ob jetzt eigenhändig oder digital, wird das Einverständnis mit dem Inhalt eines Dokumentes sowie mit dessen Vollzug bezeugt. Die Signatur beweist die Zustimmung. Ohne diesen Schritt wären sichere Transaktionen innerhalb der Blockchain nicht gegeben. Denn durch die digitale Signatur wird sichergestellt, dass nur der Verfügungsberechtigte eines Kontos das mit diesem Konto verbundene Eigentum übertragen kann. Nun ist es natürlich eine besondere Herausforderung, die Offenheit und auch die Anonymität des Systems zu erhalten und dennoch sicher sein zu können, dass bei Transaktionen alles mit rechten Dingen zugeht.

Die digitale Signatur stellt nun genau das sicher. Sie entspricht einem Verfahren, mit dessen Hilfe der Initiator einer Transaktion authentifiziert wird und die Transaktionsdaten der Transaktionshistorie im Rahmen der Blockchain hinzugefügt werden kann. Technisch kommen dabei sogenannte Hashfunktionen zur Anwendung. Wie sodann die gesamte Blockchain-Datenstruktur aussieht, ist im Augenblick für das Verständnis der digitalen Signatur noch nicht wichtig. Ich werde dies in einem weiteren Blogpost demnächst erläutern.

Welche Informationen liefert die digitale Signatur nun für den Empfänger?

Unabhängig vom Inhalt der übermittelten Informationen erhält der Empfänger durch die von ihm vorgenommene erfolgreiche Verifikation der digitalen Signatur (darüber gleich noch mehr) folgende Gewissheiten:

  • Die Nachricht wurde durch den Verfügungsberechtigten über ein Konto der Blockchain versandt. Man spricht in diesem Zusammenhang von “authentification”.
  • Der Sender einer Nachricht kann nicht mehr bestreiten, die Nachricht (bzw. den Vertrag oder die Eigentumsübertragung) veranlasst zu haben. Dies wird als “non-repudiation” bezeichnet.
  • Der Inhalt des Dokuments wurde unterwegs nicht verändert. Dies heißt in der Terminologie der Informatik “integrity”.

Wie wird eine digitale Signatur erzeugt und überprüft?

Lassen Sie uns das an einem praktischen Beispiel durchspielen. Anton möchte ein Datenpaket digital unterzeichnen und damit beweisen, dass es von ihm stammt. Er erzeugt als erstes einen Hashwert des Datenpaketes. Dabei ist es gleichgültig, ob es sich beim Datenpaket um eine Bilddatei, ein Textfile, ein Audiofile oder einen ganzen Film handelt. Das Ergebnis ist unabhängig von der Größe des ursprünglichen Datenpaketes immer ein einzelner Hashwert. Sodann benutzt Anton seinen privaten Schlüssel, um diesen Hashwert zu verschlüsseln. Diesen verschlüsselten Hashwert nennt man schließlich die digitale Signatur.

Bitcoin kurz analysiert – Währung, Kapitalanlage oder Spekulation? Wie spekuliert man am besten mit der Kryptowährung? – weitere Informationen zum Thema bietet mein KOSTENLOSES WHITEPAPER! Tragen Sie hier Ihre eMail-Adresse ein

Petra ist am Datenpaket von Anton interessiert. Anton sendet ihr daher sowohl das Datenpaket als auch die digitale Signatur. Petra verifiziert nun Antons digitale Signatur. Dazu entschlüsselt sie die digitale Signatur von Anton, indem sie Antons öffentlichen Schlüssel benutzt. Als Ergebnis erhält sie den Hashwert des ursprünglichen Datenpakets, das sie ja ebenfalls von Anton übermittelt bekommen hat. Nun wendet sie dieselbe Hashfunktion auf das originale Datenpaket an. Als Ergebnis erhält sie einen Hashwert, den sie nun mit jenem Hashwert vergleichen kann, der aus der Entschlüsselung der digitalen Signatur hervorgegangen ist. Stimmen die beiden Hashwerte überein, dann kann Petra sicher sein, dass das Datenpaket während des Transports nicht verändert wurde und dass der Absender (Anton) verfügungsberechtigt ist. Stimmen die Hashwerte nicht überein, dann kann Petra einen Fälschungsversuch – beispielsweise durch einen Hacker – eindeutig erkennen. Entweder wurden die Daten verfälscht oder von einem nicht authorisierten Absender übermittelt. Graphisch lassen sich diese Schritte in einem Schaubild wie folgt darstellen.

Schematische Darstellung für das Erstellen einer digitalen Signatur
Quelle: Drescher, D. “Blockchain Grundlagen”, S. 123, Abb. 13.1.

Das Ausgangsdokument ist ein kurzer Satz und lautet Hello World! , dargestellt in einem weißen Kasten. Nachdem dieser gehasht wurde, entsteht der Hashwert 7F83B165, grau unterlegt dargestellt. Wird dieser nun mittels des privaten Schlüssels von Anton – dem schwarzen Schlüssel – verschlüsselt, so entsteht ein neuer Hashwert. Dieser schwarz unterlegte Hashwert ist die digitale Signatur und wird nun gemeinsam mit dem Originaltext Hello World! an Petra übermittelt. Beides zusammen wird im grau unterlegten Kasten dargestellt. Petra kann nun ans Werk gehen:

Verwenden einer digitalen Signatur zum Überprüfen einer Nachricht
Quelle: Drescher, D. “Blockchain Grundlagen”, S. 124, Abb. 13.2.

Petra kann nun so wie jeder andere anhand des öffentlichen Schlüssels (weißer Schlüssel) die digitale Signatur (schwarz unterlegt) wieder entschlüsseln. Daraus resultiert sodann wieder ein Hashwert, im Beispiel der grau unterlegte Wert 7F83B165. Unter Verwendung derselben Hashfunktion, die Anton verwendet hat, hasht nun Petra auch den Ausgangstext Hello World! Stimmen beide Hashwerte überein, ist alles in Ordnung.

 

Unterscheiden sich die Hashwerte, so fand eine Manipulation statt. Dies kann entweder durch Veränderung der Daten oder aber durch Übermittlung durch einen nicht autorisierten Sender zustandegekommen sein. Im Beispiel wurden die Daten Hello World! verändert.

Verwenden einer digitalen Signatur zum Erkennen von Betrug
Quelle: Drescher, D. “Blockchain Grundlagen”, S.124, Abb. 13.3.

Welche Daten werden im Rahmen der Bitcoin-Blockchain übertragen?

Die Bitcoin Blockchain dient der Verwaltung von Eigentum. Daher werden als “Datenpakete” die Transaktionsdaten wie die beteiligten Kontonummern, der Überweisungsbetrag etc. übermittelt. Die Signatur selbst ist nicht Teil dieser Daten. Sie wird später aus dem Hashwert dieser Transaktionsdaten erzeugt, indem dieser Hashwert mittels des privaten Schlüssels verschlüsselt wird. Beides zusammen, die Transaktionsdaten und die digitale Signatur werden schließlich dem Empfänger zugänglich gemacht. Dieser kann dann auf die oben dargestellte Art und Weise die Transaktion überprüfen. Digitale Signaturen können in der Blockchain eindeutig zu einem bestimmten privaten Schlüssel und einer bestimmten Transaktion zurückverfolgt werden.

Wie aber bereits gesagt, kommen im Rahmen unterschiedliche Blockchains auch unterschiedliche Daten zur Anwendung. Der beschriebene Mechanismus der digitalen Signatur ist daher auch universell einsetzbar. Und er setzt kein Vertrauen zwischen den Vertragspartnern, ja nicht einmal Kenntnis des Gegenübers voraus. Dies macht das disruptive Potenzial der Blockchain für alle möglichen Anwendungen aus.

Wie werden Schlüssel im Rahmen der Bitcoin Blockchain sicher erzeugt?

Die digitalen Schlüssel werden nicht tatsächlich im Netzwerk gespeichert, sondern von Benutzern in einer Datei oder einer einfachen Datenbank namens Wallet erstellt und gespeichert. Ein Wallet ist eine Art digitale Geldbörse, in der derartige Schlüssel anstelle der eigentlichen Kryptowährung aufbewahrt werden. Wallets können rein softwaremäßig oder auch hardwaregestützt, ja sogar in bloßer Papierform genutzt werden. Die digitalen Schlüssel im Wallet eines Benutzers sind völlig unabhängig vom Bitcoin-Protokoll und können von der Wallet-Software des Benutzers ohne Bezugnahme auf die Blockchain oder den Zugriff auf das Internet erzeugt und verwaltet werden. Der öffentliche Schlüssel entspricht praktisch der Kontonummer bei einer Bank, der private Schlüssel dem PIN-Code.

Ein Bitcoin-Wallet enthält eine Sammlung von Schlüsselpaaren, die jeweils aus einem privaten Schlüssel und einem öffentlichen Schlüssel bestehen. Der private Schlüssel ist eine Zahl, die normalerweise zufällig ausgewählt wird. Aus dem privaten Schlüssel verwendet man beispielsweise eine sogenannte elliptische Kurvenmultiplikation, eine kryptographische Einwegfunktion, um einen öffentlichen Schlüssel (K) zu erzeugen. Aus dem öffentlichen Schlüssel wiederum wird eine kryptographische Einweg-Hash-Funktion zum Erzeugen einer Bitcoin-Adresse (A) verwendet. Eine Bitcoin-Adresse ist eine Zeichenfolge aus Ziffern und Zeichen, die mit jedem geteilt werden kann, der jemanden Geld senden möchte. Die Bitcoin-Adresse wird am häufigsten in einer Transaktion als „Empfänger“ der Mittel angezeigt.

Im Zahlungsteil einer Bitcoin-Transaktion wird der öffentliche Schlüssel des Empfängers durch seinen digitalen Fingerabdruck (Hashwert) dargestellt, der als Bitcoin-Adresse bezeichnet wird und auf die gleiche Weise wie der Name des Empfängers auf einem Verrechnungsscheck verwendet wird. In den meisten Fällen wird eine Bitcoin-Adresse erzeugt und entspricht einem öffentlichen Schlüssel. Die Bitcoin-Adresse ist die einzige Repräsentation der Schlüssel, die Benutzer routinemäßig sehen, da dies der Teil ist, den sie mit der Welt teilen müssen.

Die Sicherheit der Bitcoin-Blockchain hängt von mehreren Aspekten ab. Ein ganz wesentlicher Aspekt ist aber die Sicherheit des privaten Schlüssels. Und diese ist beinahe absolut. Die Größe des privaten Schlüsselraums von Bitcoin (2^256) ist eine unergründlich große Zahl. Sie beträgt in etwa 10^77. Zum Vergleich wird geschätzt, dass das sichtbare Universum 10 ^ 80 Atome enthält.

Sicherheitsmängel entstehen nicht systembedingt, sondern durch menschliche Fehler. Wallets in ihren verschiedenen Ausprägungen spielen dabei eine wesentliche Rolle und sind zumeist das Ziel von Hackerangriffen und die Quelle von Schäden. Es ist wesentlich zu verstehen, dass es nicht die Blockchain an sich ist, die risikobehaftet ist. Es ist vielmehr der Umgang der User oder der Systempartner, der Probleme und kriminelle Machenschaften mit sich bringen kann. Die Verfügung der Eigentümer über ihr Eigentum durch die digitale Signatur ist sicher!

Bitcoin kurz analysiert – Währung, Kapitalanlage oder Spekulation? Wie spekuliert man am besten mit der Kryptowährung? – weitere Informationen zum Thema bietet mein KOSTENLOSES WHITEPAPER! Tragen Sie hier Ihre eMail-Adresse ein

 

 

 

 

 

Jetzt downloaden!

Gratis Whitepaper

Wie Sie trotz 0% Zinsen eine Wertsteigerung in Ihrem Unternehmen erreichen:

  • Gratis Whitepaper
  • Schnelle Übersicht
  • Detaillierte Erklärung

Tragen Sie Ihre E-Mail ein und Sie können sofort mit dem Whitepaper starten:




Mit Klick auf den Button stimme ich zu, die Infos und ggf. weiterführendes Material zu erhalten (mehr Infos). Meine Daten sind SSL-gesichert und ich kann meine Zustimmung jederzeit widerrufen.

Hat Ihnen der Artikel gefallen? Dann fühlen Sie sich frei, ihn zu teilen!

2 Kommentare, seien Sie der Nächste!

  1. Die Abbildung: “Verwenden einer digitalen Signatur zum Erkennen von Betrug Quelle: Drescher, D. “Blockchain Grundlagen”, wurde in Ihrer Darstellung falsch wiedergegeben.

    Der Knackpunkt im Aufdecken von Betrug durch digitale Signaturen ist folgender: Die Original-Nachricht “Hello World!” wurde (zum Beispiel von einem Hacker durch eine Man in the Middle Attcke) in “Hello World?” geändert. Damit ändert sich deren Hashwert während die Original-Signatur (die auf Basis der Original-Nachricht erstellt wurde) unverändert bleibt. Die Unveränderte Signatur im Vergleich zur Veränderten Nachricht ist. In der Abbildung muss also die veränderte Nachricht “Hello World?” gezeigt werden, was im Buch korrekt getan wird, in dieser Darstellung aber nicht.

    1. Herzlichen Dank für Ihre Korrektur. Bei der Übertragung ihrer graphischen Darstellung ist uns ein Fehler unterlaufen, den wir mittlerweile korrigiert haben. Wir entschuldigen uns für den Fehler. Ich darf anmerken, dass ihr Buch eine fantastische Lektüre darstellt, die ich nur jedem empfehlen kann, der sich mit den technischen Grundlagen des Themas “Blockchain” näher auseinandersetzen will.

Was brennt Ihnen unter den Nägeln?

Ihre Email-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit einem Stern (*) markiert.