BaFin

Thema Fintech Distributed-Ledger-Technologie: Die Blockchain als Basis für IT-Sicherheit

Datum: 01.08.2018

Die Blockchain stellt eine zusätzliche logische Schicht auf dem Internet bereit, um Werte zu transportieren. Die Lernkurve ist steil, aber durch Blockchain kann IT sowohl sicherer als auch massiv günstiger werden.

Einleitung

Die Blockchain-Technologie hat seit der Einführung des Bitcoins im Jahr 2008 zunehmende Bekanntheit erlangt. Die Blockchain kann jedoch weitaus mehr, als eine digitale Währung zu verwalten. Die Technologie hat das Potenzial, etablierte Geschäftsmodelle grundlegend in Frage zu stellen. Die Erwartungen an die Blockchain-Technologie werden schon dadurch deutlich, dass die Marktkapitalisierung der so genannten Kryptowährungen 2017 auf über 600 Milliarden US-Dollar gestiegen ist.1 Im vierten Quartal 2017 überstiegen die durch Initial Coin Offerings (ICOs) erzielten Investorengelder herkömmliche Venture-Capital-Finanzierungen um das 16-fache.2 Ein ICO ist vergleichbar mit einem Börsengang, bei dem Geld von Investoren eingesammelt wird, basiert jedoch auf der Blockchain-Technologie.

Um eine Bewertungshilfe für das realistische Potenzial der Blockchain-Technologie bereitzustellen, wird in diesem Artikel die Blockchain-Technologie im Vergleich zu herkömmlichen IT-Systemen näher beleuchtet. Ein besonderer Fokus liegt dabei auf der Sicherheit von IT-Systemen. Die Blockchain-Technologie stellt viele Grundsätze herkömmlicher IT in Frage und löst viele Sicherheitsfragen grundlegend anders. Die Blockchain hat dabei das Potenzial, die Sicherheit von IT-Systemen erheblich zu erhöhen und zugleich die IT-Kosten massiv zu reduzieren. Die Blockchain ist nicht automatisch die beste Lösung für jedes Problem. Bei der Umsetzung sind überdies besondere Anforderungen zu beachten, um Risiken vorzubeugen. Daher werden im Artikel auch kritische Faktoren für die erfolgreiche Umsetzung von Blockchain-Projekten beschrieben. Um die bestmögliche Sicherheit von Blockchain-Anwendungen zu gewährleisten, ist es geboten, Kryptografie-Experten früh in den Entwicklungsprozess einzubeziehen. Die Blockchain verändert nicht nur die IT-Abteilung eines Unternehmens, sondern kann Einfluss auf die Struktur der gesamten Wertschöpfungskette nehmen. Daher wird das Veränderungspotenzial von Geschäftsprozessen in Unternehmen auch aus einer holistischen Perspektive betrachtet.

Vorteile der Blockchain-Technologie

Unveränderbare Datenbank

Die Blockchain ist eine unveränderbare, sich kontinuierlich weiter entwickelnde Datenbank (Ledger). In der Unveränderbarkeit liegt ein Vorteil gegenüber konventionellen Datenbanken, der in der Regel unterschätzt wird. Zurzeit sind Daten sehr leicht zu verändernde Objekte. So ist es beispielsweise nicht schwierig, einen Eintrag im Hauptspeicher eines Computers oder einer konventionellen Datenbank zu verändern. IT-Systeme sind sogar darauf ausgelegt, dass Daten nachträglich leicht zu verändern sind. Diese Funktion ist für viele Anwendungsfälle sinnvoll, jedoch wird dadurch die Sicherheit bei konventionellen IT-Systemen auch stark gefährdet. Die Blockchain-Technologie führt hierbei zu einem Paradigmenwechsel, indem die vollkommene Unveränderbarkeit von Daten komplett neue Ansätze beim Aufbau von IT-Systemen ermöglicht. So ist es nicht mehr notwendig, die Sicherheit von Systemen mittels dedizierter Infrastruktur und Firewalls aufwendig zu schützen. Vielmehr sind in der Blockchain alle Daten bereits mittels Kryptografie gesichert und können nicht manipuliert werden.

Abbildung 1: Konventionelle Datenbank vs. Blockchain Ledger

Abbildung 1: Konventionelle Datenbank vs. Blockchain Ledger CryptoTec AG

Diese Unveränderbarkeit von Daten ermöglicht die Umsetzung komplett neuer Geschäftsmodelle, weil die auf der Blockchain abgespeicherten Daten belastbar und vertrauenswürdig sind. Folglich können beispielsweise Bezahlvorgänge auf Grundlage dieser Daten automatisch ausgeführt werden, und der Intermediär, der die Echtheit der Daten bestätigt oder garantiert, wird überflüssig. Die Daten auf einer Blockchain sind so sicher, dass sogar Besitz- und Eigentumsverhältnisse, wie es in einem Grundbuch der Fall ist, sicher darauf abgelegt werden können. Selbst demokratische Wahlen können durch eine Blockchain manipulationssicher durchgeführt werden. Es ist bei gleichzeitiger Bewahrung des Wahlgeheimnisses dabei für jeden nachvollziehbar, dass die Wahlen korrekt abgelaufen sind.

Trustless Systems

Bislang galt der Grundsatz: Je länger Daten im System sind, desto unsicherer werden sie, da Angreifer die Daten manipulieren konnten. Die Zeitdauer zwischen erfolgreichem Angriff und Entdeckung des Angriffs beträgt im Durschnitt 180 Tage.3 Die Blockchain dreht diesen Grundsatz vollständig um: Je länger Daten in der Blockchain sind, desto sicherer werden sie, da die Echtheit von Daten von immer mehr Teilnehmern im Netzwerk bestätigt wird. Für die Sicherheit einiger Blockchain-Architekturen ist es sogar unwesentlich, ob die Identität der Teilnehmer bekannt oder unbekannt ist. Früher wurden Systeme beim Zugriff durch unbekannte Teilnehmer zunehmend unsicherer. Mit einer Blockchain können auch unbekannte Teilnehmer interagieren und das System sicherer machen.

Die Bezeichnung "Trustless System" bedeutet im Zusammenhang mit der Blockchain, dass den beteiligten Servern und deren Betreibern nicht vertraut werden muss, da die Daten auf der Blockchain nachweisbar nicht manipuliert werden können. Die Blockchain selbst erzeugt Vertrauen im System, da die Blockchain-Protokolle automatisch prüfen, ob die Regeln der Blockchain von den Teilnehmern eingehalten werden. Prozessrisiken können so reduziert werden, indem eine Blockchain automatisch sicherstellt, dass Verträge ausgeführt und Zahlungen durchgeführt werden.

Schutz vor Datendiebstahl

Ein weiterer Vorteil der Blockchain-Technologie gegenüber konventionellen Datenbanken liegt im Schutz vor dem Diebstahl riesiger Datensätze. In der Vergangenheit gab es häufig Schlagzeilen zu Hacks zentraler Datenbanken mit Millionen von gestohlenen Datensätzen wie bei Sony, Target und Home Depot. Da eine Blockchain etwa Kreditkarten-Datensätze nicht mehr benötigt, sondern auf Ende-zu-Ende-Sicherheit setzt, können die Daten auch nicht mehr von Servern gestohlen werden. Insbesondere bietet die Blockchain-Technologie aber auch die Möglichkeit, Daten verschlüsselt abzulegen. Zudem können auf Blockchains durch internationalen Konsens direkte Zahlfunktionalitäten und automatisch ausführende Verträge (Smart Contracts) implementiert werden. Solche und viele weitere Möglichkeiten gehen weit über die Funktionalität herkömmlicher Datenbanken hinaus.

Transparenz und Verifizierbarkeit

Eine weitere Innovation durch die Blockchain ist die Validierung von gespeicherten Daten. Die Informationsbeschaffung ist im Zeitalter des Internets sehr einfach geworden. Das Wertversprechen von Google ist, alle verfügbaren Daten auf der Welt durch ein einziges Suchmaschinen-Fenster auffindbar zu machen. Eine Validierung der Daten ist oft jedoch nur schwer möglich. Die Blockchain-Technologie ermöglicht es nun, dass die Echtheit aller Daten auf der Blockchain geprüft werden kann. Diese Eigenschaft bringt viele Anwendungsmöglichkeiten mit sich. So können Kunden beispielsweise sicher davon ausgehen, dass Medikamente auf Basis von echten klinischen Studien entwickelt wurden, dass Autos anhand valider Studien von Abgaswerten entwickelt wurden und dass Nahrungsmittel wirklich in den angegebenen Regionen hergestellt worden sind. Die Validierung der Daten auf der Blockchain erhöht so die Transparenz für Unternehmen, Kunden und Bürger.

IT-Sicherheit durch die Blockchain

IT-Sicherheit ist in vielen Unternehmen ein wichtiges Ziel. Im Allianz Risk Barometer 2018 wird die Gefahr von Cyberattacken als zweitgrößtes Risiko für Unternehmen in Deutschland aufgeführt.4 Die Auswirkungen von Cyberattacken musste beispielsweise der Logistikdienstleister Maersk erfahren. Durch einen Angriff des Trojaners Not-Petya ist schätzungsweise ein Schaden von 200 bis 300 Millionen US-Dollar entstanden.5 Neben erhöhten Sicherheitsanforderungen in der IT verfolgen Unternehmen zugleich das Ziel, Kosten für IT-Bestandssysteme zu senken und die Interoperabilität zu erhöhen. Die Blockchain kann hierbei eine Schlüsseltechnologie sein und Unternehmen dabei helfen, die IT-Sicherheit zu erhöhen und die Kosten zu senken. Gegenüber den typischen Angriffen auf Webanwendungen6 sind Blockchains deutlich resistenter.

Trennung der Informations- und Netzwerksicherheit

Was genau macht Blockchain-Anwendungen im Vergleich zu herkömmlichen IT-Systemen so sicher? Um diese Frage beantworten zu können, ist es notwendig, sich mit dem Aufbau der Netzwerksicherheit herkömmlicher IT-Systeme zu beschäftigen. Herkömmliche IT-Systeme sind durch eine strikte Trennung zwischen außen und innen gekennzeichnet. Nur Teilnehmer im Inneren des Systems haben Zugriff auf die Daten und können Änderungen im System vornehmen. Um Sicherheit zu gewährleisten, erfolgt eine Zugangskontrolle zum inneren Teil auf der Betriebssystemebene. Abhängig vom erforderlichen Sicherheitslevel ist diese Zugangskontrolle aufwändiger und oder weniger aufwändig konzipiert. Die Sicherheit herkömmlicher IT-Systeme wird beispielsweise durch Firewalls und verschlüsselte VPN7-Verbindungen gewährleistet.

In der Welt der Blockchains wird hingegen diese Trennung von innen und außen beinahe aufgehoben. Bei einer Public Blockchain handelt es sich um eine öffentliche und redundant gespeicherte Datenbank. Die Sicherheit der Daten hängt nur am Besitz des jeweiligen Schlüssels und wird durch kryptografische Protokolle gewährleistet. Die Sicherheit braucht daher nicht durch Firewalls gewährleistet zu werden. Die Blockchain entkoppelt damit die Informationssicherheit von der Netzwerksicherheit. Es ist im Grunde genommen egal, ob Fremde Zugriff auf die Blockchain haben (Netzwerksicherheit), solange die Daten auf der Blockchain durch Kryptografie geschützt sind (Informationssicherheit). Selbstverständlich muss eine Blockchain nicht zwingend öffentlich zugänglich sein, sondern kann auch innerhalb eines Unternehmens verbleiben (Private Blockchain). Dieser Blockchain-Ansatz ermöglicht eine erhöhte Sicherheit von Daten und reduziert zugleich den benötigten Sicherheitsaufwand im Vergleich zu herkömmlichen IT-Systemen.

Sicherheit von Blockchain-Standards

Die Blockchain-Technologie befindet sich noch am Anfang der Entwicklung. Daher gibt es viele unterschiedliche Anbieter mit verschiedenen Lösungsansätzen. Oft wird bemängelt, dass die Blockchain noch keine ausreichenden und einheitlichen Standards besitze.8 Es werden jedoch selten Wettbewerbsvorteile durch die Erfüllung von Standards erzielt, sondern vielmehr durch das Setzen von Standards. Unternehmen wie Microsoft, Apple, Google und Facebook gehören zu den wertvollsten Unternehmen der Welt, gerade weil sie eigene Standards gesetzt haben und nicht erst auf andere Standards gewartet haben. Für Wettbewerbsvorteile bei neuen Technologien ist es oft wichtiger, schneller im Markt zu sein, als die perfektere Technologie zu bieten. Gerade bei der Blockchain kann aber auf Sicherheit nicht verzichtet werden. Vor allem wenn wenig bestehende Technologie wiederverwendet und alles neu entwickelt wird, enthalten Blockchain-Entwicklungen oft kritische Implementierungsfehler. So wurde beispielsweise zCoin Opfer eines Denial-Of-Spending-Angriffs. Hierbei wurde ein Fehler im Protokoll ausgenutzt, und Angreifer konnten über Coins verfügen, die ihnen nicht gehörten.9 Auch der DAO-Hack10 ist ein bekannter Fall. Bei der Umsetzung von Blockchain-Projekten ist es daher von zentraler Bedeutung, dass das Projektteam mit Kryptografie-Experten zusammenarbeitet. Nach Möglichkeit sollte, begleitend zur Implementierung, ein formaler Sicherheitsbeweis erarbeitet werden. Auf diesen Aspekt wird in Abschnitt 5.1 detaillierter eingegangen.

Kommunizierbare Mehrwerte

Die Blockchain-Technologie bringt signifikante Vorteile für die IT-Sicherheit mit sich. Dies bedeutet jedoch nicht, dass die Blockchain automatisch für alle Anwendungsfälle die beste Technologie ist. Bevor man sich in einem Unternehmen dafür entscheidet, eine blockchainbasierte Lösung zu implementieren, ist eine genaue Analyse der Mehrwerte erforderlich. Ansonsten besteht die Gefahr, dass Blockchain-Anwendungen programmiert werden, die im Vergleich zu anderen IT-Lösungen keine wirklichen Vorteile haben. Hierbei ist der Grundsatz der Kommunizierbarkeit hilfreich. Mehrwerte müssen dem Kunden oder anderen Stakeholdern gegenüber verständlich kommuniziert werden können. Blockchain-Anwendungen, die diesen Grundsatz erfüllen, rechtfertigen die Investition und tragen zum Unternehmenserfolg bei. Ist dies nicht der Fall, so ist Blockchain möglicherweise nicht die beste verfügbare Technologie. In der Folge werden einige Beispiele für einen tatsächlichen Sicherheitsmehrwert durch die Blockchain-Technologie dargestellt:

  • Zahlungen in einem Peer-to-peer-Blockchain-Netzwerk sind sicher validiert und nicht veränderbar. Ein Rückruf, wie es im SEPA-Basislastschriftverfahren möglich ist, ist ausgeschlossen.
  • Die Verwaltung von Nutzerdaten über eine Blockchain ermöglicht es dem Nutzer, selbst seine digitale Identität zu verwalten und selbst zu entscheiden, welcher Anbieter Zugriff auf welche Daten erhalten soll. So kann ein Nutzer von der Verwendung seiner Daten unmittelbar selbst profitieren, zum Beispiel durch die Überlassung im Rahmen einer klinischen Studie.
  • Sobald ein Smart Contract von beiden Vertragsparteien digital signiert ist, garantiert der Programmiercode die Erfüllung des Vertrages. Diese Sicherheitsmehrwerte können Kunden und anderen Stakeholdern gegenüber vorteilhaft kommuniziert werden und sind daher gute Anwendungsfälle für die Blockchain-Technologie.

Kryptografie

Die Kryptografie ist wesentlich für die Sicherheit von Blockchain-Anwendungen. Durch Hash-Verfahren (Rechenoperationen) wird die Integrität von Daten geschützt. Digitale Signaturen schützen die Autorenschaft eines Eintrags. Verschlüsselung schützt den Zugang zu Informationen. Somit ist es möglich, den Zugang und die Verfügung über Daten, Geld, Güter oder andere Werte auf definierte Teilnehmer zu beschränken. Hierfür werden kryptografische Protokolle mit komplexen mathematischen Modellen benötigt. Um zu erläutern, wie die Kryptografie in einer Blockchain funktioniert, sind im Folgenden einige Verfahren vereinfacht dargestellt. Die Erklärung erfolgt am Beispiel der weit verbreiteten digitalen Währung Bitcoin.

Sichere Identität

Um am Bitcoin-Netzwerk teilnehmen zu können, benötigt jeder Nutzer ein Konto auf der Bitcoin-Blockchain. Hierfür bildet der Computer 256 zufällige Münzwürfe nach und merkt sich das Ergebnis. Es gibt dabei 1.157x1077 verschiedene Möglichkeiten für das Ergebnis, nämlich

115.792.089.237.316.195.423.570.985.008.687.907.853.269.984.665.640.564.039.457.584.007.913.129.639.935

Diese Zahl der Möglichkeiten ist so groß, dass jedem Atom im Universum damit eine eindeutige Nummer zugewiesen werden könnte. Um diese Menge an Möglichkeiten zu generieren, könnte man alternativ 100 Würfel gleichzeitig werfen. Die enorme Zahl der unterschiedlichen Möglichkeiten an Würfelergebnissen ist für die Informationssicherheit auf der Blockchain verantwortlich. Ein Erraten des Würfelergebnisses ist unmöglich, und ein Ausprobieren würde selbst mit den leistungsstärksten Computern Millionen von Jahren benötigen. Das Würfelergebnis muss geheim bleiben und dient später als Schlüssel, um die verschlüsselten Informationen lesen zu können. Mit Hilfe von Hash-Verfahren wird aus dem geheimen Würfelergebnis eine öffentliche Bitcoin-Adresse erstellt und auf der Blockchain abgelegt. Die Verschlüsselungsverfahren sind öffentlich und können so auditiert werden. Die Sicherheit des Verfahrens beruht auf Kerckhoffs’ Maxime aus dem Jahr 1883 und verfolgt den Grundsatz, dass die Sicherheit der Kryptografie auf der Geheimhaltung des Schlüssels basiert statt auf der Geheimhaltung des Verschlüsselungsalgorithmus. Dieser Grundsatz ist ein wichtiger Bestandteil der modernen Kryptografie.

Transaktionen auf der Blockchain

Die zufällig zugewiesene Bitcoin-Adresse repräsentiert ein Konto auf der Blockchain. Diese Adresse kann zum Empfangen von Bitcoins verwendet werden. In anderen Blockchain-Netzwerken können auch digitale Güter und sonstige Informationen versendet werden. Eine zufällig erstellte Blockchain-Adresse kann beispielsweise so aussehen:

92024 57150 21345 42342 34121 34230 16215 64644 54627 72316

Jeder Teilnehmer, der die Adresse kennt, kann digitales Geld oder sonstige Werte an diese Adresse senden, wie an die Adresse eines Hauses. Wie bei einem Haus kann nur der Eigentümer der Blockchain-Adresse über das empfangene Geld verfügen oder die empfangene Nachricht entschlüsseln. Die Entschlüsselung erfolgt mit Hilfe des geheimen Schlüssels (Würfelergebnis). Es ist nicht möglich, von einer öffentlichen Blockchain-Adresse auf den zugrunde liegenden geheimen Schlüssel zu schließen. Es handelt sich hierbei um eine Einwegfunktion der asymmetrischen Kryptografie. Einwegfunktionen sind Funktionen, welche einfach berechnet werden können, jedoch in der Umkehrung nicht praktikabel berechenbar sind. So kann aus dem Würfelergebnis eine Blockchain-Adresse berechnet werden, jedoch nicht umgekehrt. Ein Beispiel aus der physikalischen Welt für eine Einwegfunktion ist der Wurf eines Glases auf den Boden. Hierbei zerspringt das Glas in viele kleine Scherben, und es erfordert nicht viel Aufwand, das Glas zu zerstören. Jedoch ist das Zusammensetzen der Scherben zum ursprünglichen Glas nur mit extremem Aufwand möglich.

Abbildung 2: Blockchain-Konto und Adresse erzeugen

Abbildung 2: Blockchain-Konto und Adresse erzeugen CryptoTec AG Abbildung 2: Blockchain-Konto und Adresse erzeugen

Authentifizierung der Identitäten

Blockchain-Adressen können jedoch nicht nur als Kontonummern im Bitcoin-Netzwerk verwendet werden. So können beispielsweise Industrieunternehmen einzelnen Produkten, Gütern und Bauteilen individuelle Blockchain-Adressen zuordnen und diese im Produktions- und Distributionsprozess eindeutig identifizieren. Mit Hilfe von QR11-Codes können diese Adressen für Maschinen lesbar dargestellt und in einer Blockchain registriert werden. Zusätzlich können Blockchain-Adressen beliebige Attribute zugeordnet werden. So erleichtert die Zuordnung des Firmennamens als Attribut anderen Teilnehmern der Blockchain die Identifizierung der Adresse. Zum Anheften eines Attributes wird die Kenntnis des Würfelergebnisses benötigt. So kann nachvollzogen werden, dass die Attribute nur von einem Teilnehmer hinzugefügt wurden, der auch Eigentümer der Adresse ist.

Abbildung 3: QR-Code für eine Blockchain-Adresse

Abbildung 3: QR-Code für eine Blockchain-Adresse CryptoTect AG Abbildung 3: QR-Code für eine Blockchain-Adresse

In einem Blockchain-Netzwerk ist es jedoch nicht zwingend notwendig, dass man die Teilnehmer des Netzwerkes kennt. Auch unbekannte und nicht bestätigte Teilnehmer können ohne Sicherheitsverlust an der Blockchain teilnehmen. Während unbekannte Teilnehmer in herkömmlichen IT-Systemen ein Sicherheitsrisiko hervorrufen, so ist dies bei öffentlichen Blockchains kein Sicherheits- oder Stabilitätsproblem. Diese Eigenschaft ist ein Vorteil der Blockchain, da die Hürden für die Hinzunahme von neuen Teilnehmern enorm gesenkt werden und eine kritische Masse an Nutzern schneller erreicht wird. Bitcoin ist hierbei ein sehr gutes Beispiel, da jeder Teilnehmer ein eigenes Konto erzeugen kann, ohne sich vorher bei einer Bank oder Verwaltung registrieren zu müssen. Echtheitsprüfungen der teilnehmenden Identitäten können bei Bedarf später durchgeführt werden. Auch ist es möglich, eine unbekannte Identität später zu verifizieren, so dass auch vorangegangene Aktionen rückwirkend dem bestätigten Teilnehmer zugeordnet werden können. Dieser Vorteil wird auch als Key Continuity bezeichnet.

Identity-Management und Schlüsselverwaltung

Damit Nutzer einer Blockchain die langen Zahlen oder die QR-Codes einer Blockchain-Adresse nicht auswendig zu kennen brauchen, gibt es das Blockchain-Identity-Management. Die zugeordneten Attribute (zum Beispiel Firmennamen) geben Auskunft über die Identität des Teilnehmers und können übersichtlich in einer Datenbank abgelegt werden. Das Versenden von Geld an eine Blockchain-Adresse wird damit so einfach wie das Versenden einer E-Mail. Ein kompliziertes Eingeben von langen Kontonummern, wie beispielsweise bei SEPA-Überweisungen, ist bei Blockchain-Anwendungen mit gutem Identity-Management nicht mehr notwendig. Ein gutes Blockchain-Identity-Management zeichnet sich dadurch aus, dass einer Firma oder einer Person mehrere Blockchain-Adressen zugeordnet werden können. In der Praxis werden nämlich für unterschiedliche Blockchain-Anwendungen verschiedene kryptografische Verfahren verwendet, so dass die Blockchain-Adressen nicht austauschbar sind. So haben beispielsweise Blockchain-Lösungen für einen Dokumentenspeicher andere kryptografische Verfahren als Blockchain-Lösungen für den P2P-Geldtransfer.

Folgendes Beispiel soll dieses Szenario illustrieren. Ein Autor eines Blog-Beitrags wird gewöhnlich für seine erfolgreiche Arbeit bezahlt. Der Beitrag wird allerdings über eine andere Blockchain übertragen als die vereinbarte Bezahlung. Das Blockchain-Identity-Management ist die Schnittstelle zwischen beiden Blockchains und stellt sicher, dass die Bezahlung an dieselbe Person geht, die auch den Beitrag verfasst hat.

Es wurde bereits die Funktion des Schlüssels (Private Key) erläutert. Die Geheimhaltung des Schlüssels ist wichtig, um die Sicherheit der Wallet (Konto) und der Daten zu gewährleisten. Der Schlüssel darf auch nicht verloren gehen, da sonst niemand mehr Zugriff auf die digitale Wallet oder die gespeicherten Daten hat. Es erfordert daher umfangreiche Backup- und Recovery-Lösungen, sowohl für Privatpersonen als auch für Unternehmen. Selbstverständlich sollten solche Lösungen Ende-zu-Ende verschlüsselt sein, da sonst das Sicherheitsversprechen der Blockchain hinfällig ist. Ergänzend können die Schlüssel auch aufgeteilt und redundant bei Treuhändern gespeichert werden. Beispiele für solche Verfahren sind Shamirs Secret Sharing oder Multisignature Wallets.

Blockchain in Unternehmen

Geldfluss, Informationsfluss und Warenfluss

Die Blockchain bietet auch in Anwendungen bei Unternehmen viele Vorteile und erlaubt eine schnelle, sichere und kostengünstige Abwicklung von Geschäftsprozessen. Die Technologie ermöglicht eine automatische Abstimmung von Geld-, Informations-, und Warenfluss. In einer Blockchain kann jedes Gut, dem ein Wert zugewiesen werden kann, verwaltet werden. Es kann zu jedem Zeitpunkt einwandfrei und verlässlich festgestellt werden, wem das Gut gehört. Des Weiteren kann in einer Blockchain Eigentum und Besitz eines Gutes übertragen werden. Eine solche Übertragung von Gütern in der Blockchain ist sicher und kann auch nicht ohne Zustimmung des neuen Besitzers rückgängig gemacht werden. Während beim Versand von E-Mails lediglich eine Kopie erzeugt und zwischen den Mailservern ausgetauscht wird, erfolgt auf einer Blockchain eine tatsächliche Übertragung des Gutes. Physikalischen Gütern kann ebenfalls ein digitaler Token zugeordnet werden, wodurch eine Nachverfolgung des Gutes ermöglicht wird. QR-Codes oder RFID12-Chips können dabei helfen, das physikalische Gut und den digitalen Token zusammenzuführen.

Abbildung 4: Die Blockchain bringt Geldfluss, Informationsfluss und Warenfluss zusammen

Abbildung 4: Die Blockchain bringt Geldfluss, Informationsfluss und Warenfluss zusammen CryptoTec AG Abbildung 4: Die Blockchain bringt Geldfluss, Informationsfluss und Warenfluss zusammen

Beschleunigung in der Prozessabstimmung

Eine Blockchain kann enorme Effizienzsteigerungen bewirken, indem mehrere Prozesse, wie zum Beispiel Zahlungen, Vertragsschließung, Supply Chain, Dokumentenaustausch und Fälschungsschutz, in einem System abgebildet werden. Die Blockchain bietet hier die Möglichkeit, Prozessschritte optimal aufeinander abzustimmen. Trifft beispielsweise ein bestelltes Gut bei einem Unternehmen ein, können automatisch Dokumente geprüft und Fälschungen identifiziert werden, der zugrunde liegende Vertrag kann ausgeführt und das Geld an die andere Vertragspartei gesendet werden. Prozesse, die vorher getrennt voneinander abgelaufen sind, können durch die Blockchain automatisch und in Sekunden durchgeführt werden. Die erhöhte Durchlaufgeschwindigkeit birgt hohes Potenzial an Kostenreduktion. Die Optimierung von Prozessen durch Blockchain-Lösungen kann Einsparungen von bis zu 99,9 Prozent und eine Beschleunigung um den Faktor 1.000 herbeiführen. Eine horizontale Abstimmung der Prozesskette kann ebenfalls branchenübergreifend verlaufen und weitere Geschäftsprozesse vereinfachen.

Abbildung 5: Horizontale Abstimmung der Prozesskette

Abbildung 5: Horizontale Abstimmung der Prozesskette CryptoTec AG Abbildung 5: Horizontale Abstimmung der Prozesskette

Veränderung der Wertschöpfungskette

Die Blockchain-Technologie ermöglicht direkten Kontakt zu allen Teilnehmern in einer Supply Chain. So bekommen Unternehmen, die zurzeit in der Mitte einer Supply Chain gefangen sind, die Chance direkten Kontakt zum Kunden aufzubauen. Hierdurch können Hersteller ein Produkt oder eine Dienstleistung direkt an den Endkunden verkaufen. Diese Chance bedeutet jedoch auch ein Risiko für etablierte Unternehmen, die bisher den exklusiven Marktzugang hatten und zwischen Hersteller und Endkunde vermittelt haben. Die Blockchain-Technologie greift bestehende Geschäftsmodelle an und wertet Zulieferer und Hersteller in der Wertschöpfungskette auf. Zusätzlich können Unternehmen mittels Blockchain entlang der Wertschöpfungskette effizienter und schneller miteinander arbeiten. Es ist daher wichtig, die Mehrwerte einer Blockchain zu verstehen, um zukünftig zu den Gewinnern zu gehören.

Umsetzung von Blockchain-Anwendungen

Sicherheitsbeweis

“The main advantage of blockchain technology is supposed to be that it's more secure, but new technologies are generally hard for people to trust, and this paradox can't really be avoided.” - Vitalik Buterin

Die Sicherheit einer Blockchain-Anwendung entscheidet über deren Erfolg oder Misserfolg. Es ist daher wichtig, keine Fehler bei der Entwicklung zu machen, die später die Sicherheit der Anwendung gefährden. Um besser zu verstehen, wie man solche Fehler vermeidet, ist es hilfreich, sich den Prozess der Entwicklung einer Blockchain-Anwendung vor Augen zu führen. Eine Idee für eine Blockchain kann in drei Sätzen grob beschrieben werden. Auf circa 40 Seiten lässt sich ein Konzept fixieren. Auf weiteren 150 Seiten werden die Spezifikationen ausgeführt. Die tatsächliche Implementierung kann dann drei Millionen Zeilen Programmcode umfassen und etwa 30.000 Seiten entsprechen.

Nachträglich Millionen Zeilen von Programmcode auf Sicherheit zu prüfen und konzeptionelle Fehler aufzudecken, ist kaum möglich. Konzeptionelle Fehler können jedoch gravierende Folgen für die Blockchain haben und in vielen Fällen nicht durch ein Softwareupdate behoben werden. Es ist daher empfehlenswert, früh einen formalen Sicherheitsbeweis zu führen und so gewissermaßen die korrekte Statik des Systems zu gewährleisten. Hier wird mathematisch bewiesen, dass ein System von einem real existierenden Computer nicht gehackt werden kann. Für diesen abstrakten Beweis wird die Modellierung eines Angreifermodells und von Schutzzielen benötigt. Ein solcher positiver Sicherheitsbeweis benötigt lediglich 20 Seiten. So können hohe nachträgliche Kosten durch konzeptionelle Fehler vermieden werden. Die Möglichkeit von Sicherheitsbeweisen ist in der Informatik bereits seit Jahren bekannt, wird jedoch in der Praxis noch selten umgesetzt. Gemäß einem auf Blockchain-Projekte zugeschnittenen Entwicklungsprozess (siehe Abbildung 6) hat etwa die Firma CryptoTec (zu der zwei Autoren dieses Artikels zählen, Anm. d. Red.) für den selbst entwickelten Blockchain-Dokumentenspeicher entwicklungsbegleitend einen Sicherheitsbeweis geführt, der die Sicherheit, Vertraulichkeit und Integrität von Dokumenten garantiert.

Abbildung 6: Beispielhafter Entwicklungsprozess für Blockchain-Projekte

Abbildung 6: Beispielhafter Entwicklungsprozess für Blockchain-Projekte CryptoTec AG Abbildung 6: Beispielhafter Entwicklungsprozess für Blockchain-Projekte

Angreifermodelle und Schutzziele

“If you don’t understand what you want to achieve,
how can you possibly know when (or if) you have achieved it?” – Jonathan Katz

Angreifermodelle und Schutzziele modellieren mögliche Szenarien und definieren die Höhe des benötigten Sicherheitslevels. In einem Angreifermodell wird festgelegt, welche Fähigkeiten ein potenzieller Angreifer hat und wie ein Angreifer vorgehen kann. Bei einem Angreifer kann es sich sowohl um eine professionelle Hackergruppe als auch um einen Nutzer handeln, der die Zahlung umgeht. Entwickler müssen sich in potenzielle Angreifer hineinversetzen, um alle möglichen Angriffsszenarien abzudecken. Wird dabei eine Möglichkeit übersehen, so schränkt es die Sicherheit des ganzen Systems ein. Hierfür braucht es viel Zeit und Erfahrung mit Hackerangriffen. In der Praxis stehen interne Mitarbeiter in Unternehmen häufig unter Zeitdruck und kennen in erster Linie die Perspektive des eigenen Unternehmens, nicht die eines Angreifers. Außerdem gilt folgender Grundsatz in der Informatik: „Ein Entwickler kann sein eigenes System nicht testen.“ Deshalb ist die Hinzunahme von externen Experten bei der Erstellung eines Angreifermodells beinahe zwingend. Durch einen Wechsel der Perspektive können neue mögliche Angriffsszenarien erarbeitet werden, und die internen Mitarbeiter können sich auf ihr Kerngebiet, die Entwicklung des Systems, konzentrieren.

Schutzziele legen fest, welches Sicherheitslevel ein System benötigt und welche Angriffe verhindert werden sollen. Hierbei gibt es zwei Arten von Schutzzielen:

  1. Jeder Angriff soll abgewehrt werden (100-prozentiger Schutz).
  2. Angriffe, die wirtschaftlich vorteilhaft für Angreifer sind, sollen abgewehrt werden.

Ein 100-prozentiger Schutz ist ein schwer zu erreichendes Ziel, da zunehmender Schutz eines Systems exponentiell teurer wird. In vielen Fällen reicht es aus, Angriffe für organisierte Kriminalität wirtschaftlich uninteressant zu gestalten. Abbildung 7 zeigt den Gewinn pro Angriff und die Kosten pro Angriff als Funktion. Bei steigendem Schutz des Systems steigen die Kosten für den Angreifer exponentiell an. Sobald die Kosten eines Angriffs größer sind als der Gewinn des Angriffs, wird der Angriff unwirtschaftlich und unattraktiv für organisierte Kriminalität. Es kann also genügen, ein System so sicher zu machen, dass ein Angriff nicht wirtschaftlich ist. Durch die Blockchain erhöht sich für einen Angreifer zudem das Risiko, überführt und strafrechtlich verfolgt zu werden. In der Vergangenheit versuchten Hacker, mögliche Spuren auf Servern zu beseitigen, um nicht identifiziert zu werden. In Blockchain-Anwendungen können jedoch Transaktionen nicht nachträglich verändert werden, sondern sind transparent dokumentiert. Das erhöhte Risiko für Angreifer ist ein Vorteil der Blockchain-Technologie und kann letztendlich zur Reduktion der Kosten für Sicherheitsmaßnahmen führen.

Abbildung 7: Wirtschaftlichkeit von Angriffen

Abbildung 7: Wirtschaftlichkeit von Angriffen CryptoTecAG Abbildung 7: Wirtschaftlichkeit von Angriffen

Benutzerfreundlichkeit

„Complexity is the worst enemy of security.” – Bruce Schneier

Der US-amerikanische Experte für Kryptografie und Computersicherheit Bruce Schneier bringt den Zusammenhang von Komplexität und Sicherheit von IT-Systemen auf den Punkt. Ein unnötig kompliziertes Design erschwert nicht nur die Bedienung, sondern sorgt auch für mehr Sicherheitslücken. Eine Anwendung sollte so einfach wie möglich zu bedienen sein und nur die Funktionen enthalten, die tatsächlich benötigt werden. Benutzerfreundliche Software macht, was der Benutzer erwartet. Sichere Software macht das, was der Benutzer erwartet und nichts anderes. Alle weiteren zusätzlichen Funktionen, die der Nutzer nicht braucht, erhöhen die Komplexität eines Systems und beeinträchtigen zugleich die Sicherheit. Diesen Grundsatz sollte man gerade bei der Entwicklung von Blockchain-Anwendungen vor Augen haben.13 In einer hochvernetzten Welt sind die Produkte am erfolgreichsten, die leicht zu bedienen und schwer zu hacken sind. Deshalb sollte neben der Sicherheit auch die Benutzerfreundlichkeit bei der Entwicklung von neuen Anwendungen verfolgt werden.

Entwicklung von Blockchain-Anwendungen

“Bitcoin is not the kind of software where we can leave so many
unresolved bugs that we need a tracker for them.” – Satoshi Nakamoto

Es wurde bereits erwähnt, dass Blockchain-Anwendungen eine hohe Qualität aufweisen müssen und keine Fehler enthalten dürfen. Oftmals können Fehler in der Blockchain-Software nicht mehr rückgängig gemacht werden. So sind beispielsweise 500.000 Ethers, umgerechnet etwa 375 Mio. US-Dollar, von Nutzern der Parity Wallet eingefroren, da die Entwickler einen folgenreichen Fehler im Code übersehen haben. Bei der Entwicklung von Blockchain-Anwendungen sind Qualitätsmanagement und Auditierung von hoher Wichtigkeit. Es bietet sich daher an, auf bereits entwickelten und auditierten Blockchain-Modulen aufzusetzen. So reduzieren sich die Entwicklungskosten durch Zusammenarbeit mit externen Blockchain-Experten, und die Sicherheit wird durch bereits erprobte Lösungen erhöht.

Definition der Anforderungen

Bei der Entwicklung von neuen Blockchain-Anwendungen ist es zwingend notwendig, die Anforderungen im Vorhinein klar zu definieren. Nur so können die beste Lösung ausgewählt und spätere Probleme verhindert werden. Die Ethereum-Blockchain ist eine sehr beliebte Plattform um neue Projekte umzusetzen. Das bedeutet jedoch keinesfalls, dass es für jedes Projekt die richtige Plattform ist. Möchte man beispielsweise in einer industriellen Anwendung 1.000 Transaktionen pro Sekunde (TPS) ausführen, dann wird das Ethereum-Netzwerk mit aktuell 20 TPS die Anforderungen der Anwendung nicht erfüllen können.14 Die Bewertung von Anforderungen kann durch eine Bewertungsmatrix für Blockchain-Anwendungen erleichtert werden (siehe Tabelle 1).

Tabelle 1: Bewertungsmatrix für Blockchain-Anwendungen

Tabelle 1: Bewertungsmatrix für Blockchain-Anwendungen Tabelle 1: Bewertungsmatrix für Blockchain-Anwendungen

Zuständigkeit für Blockchain-Entwicklung

„Blockchain ist 80% Business und 20% Technik.“
– William Mougayar

Die unternehmensübergreifende Vereinheitlichung von Prozessen ist ein großer Vorteil der Blockchain. Hierbei kommt es oft zur kompletten Umgestaltung von Geschäftsprozessen, auch als Business Process Reengineering bezeichnet. Es ist nicht ausreichend, die bestehenden Prozesse auf eine Blockchain zu überführen. So entstehen nur Kosten für die Umstellung. Es wird jedoch kein Mehrwert für den Kunden herbeigeführt oder eine Prozessoptimierung erreicht. Nur durch eine komplette Umgestaltung von Geschäftsprozessen werden Wettbewerbsvorteile erzielt und das Kundenerlebnis verbessert. Die Blockchain ist daher ein Thema, welches vom Management und der Strategieabteilung eines Unternehmens implementiert werden muss. Einzelnen Fachbereichen hingegen fehlen hierzu der Gesamtüberblick und die Entscheidungskompetenz. Es wäre auch fatal, das Thema Blockchain allein an die IT-Abteilung zu delegieren. Der betriebswirtschaftliche Anteil bei Blockchain-Entwicklungen ist deutlich größer als die tatsächliche Programmierung, da Blockchain immer Sicherheit und wirtschaftliche Incentivierung beinhaltet. Die Perspektive von Externen kann dabei helfen, ein Unternehmen auch aus einem anderen Blickwinkel zu betrachten.

Zusammenfassung

Blockchain ist eine Schlüsseltechnologie und kann in Zukunft Einzug in viele Branchen erhalten. Die Technologie hat das Potenzial, bestehende Geschäftsmodelle anzugreifen und durch effizientere Modelle zu ersetzen. Im Vergleich zu herkömmlichen IT-Systemen hat die Blockchain mehrere Vorteile. So können beispielsweise Daten, die auf einer Blockchain gespeichert werden, nachträglich nicht manipuliert werden. Aufgrund der Trennung von Informations- und Netzwerksicherheit können auch fremde Teilnehmer die Blockchain ohne Sicherheitsrisiko nutzen. Die Informationssicherheit wird mittels Kryptografie gewährleistet. Folglich werden keine aufwendigen Schutzmechanismen (VPN oder Firewall) benötigt, wie es bei herkömmlichen IT-Systemen der Fall ist. Daten sind nur für diejenigen lesbar, die den geheimen Schlüssel zum Öffnen der Nachricht kennen. Die Geheimhaltung des Schlüssels durch den Eigentümer der Daten ist daher auch essentiell für die Sicherheit der Daten. Die Blockchain ist keinesfalls auf die Umsetzung einer digitalen Währung beschränkt. Vielmehr bringt die Technologie Geld-, Informations- und Warenfluss in einem System zusammen. Hierdurch können Prozesse schneller und effizienter ausgeführt werden, was sich letztlich positiv auf das Kundenerlebnis auswirkt. Neben Effizienz und neuen Geschäftsmodellen, können Blockchain-Lösungen die Sicherheit von IT-Systemen erhöhen. Bei der Umsetzung von Blockchain-Anwendungen werden in der Praxis jedoch häufig Fehler begangen. Oftmals können solche Fehler nicht durch ein einfaches Update behoben werden, sondern erfordern zusätzlichen Entwicklungsaufwand. Aus diesem Grund sollte bei der Umsetzung von Blockchain-Lösungen die Sicherheit mit Hilfe eines mathematischen Beweises gewährleistet werden. In diesem Zusammenhang müssen alle möglichen Angriffsszenarien modelliert und das erforderliche Sicherheitslevel definiert werden. Internen Mitarbeitern fehlen häufig ausreichende Erfahrung und Kenntnisse, um Blockchain-Lösungen fehlerfrei zu entwickeln. EDie Entwicklung von Blockchain-Lösungen sollte durch das Management oder die Strategieabteilung des Unternehmens gesteuert werden, da nicht nur die IT-Abteilung, sondern alle Geschäftsbereiche von Änderungen durch Blockchain-Technologie betroffen sind.

Fußnoten:

  1. 1 Coindesk, Q4 2017 State of Blockchain, https://www.coindesk.com/research/state-blockchain-q4-2017, abgerufen am 08.05.2018.
  2. 2 Coindesk, a.a.O. (Fn. 1).
  3. 3 Backofen, Wir brauchen die flächendeckende Immunisierung der Gesellschaft gegen Cyberattacken!, https://www.telekom.com/de/konzern/management-zur-sache/details/immunisierung-der-gesellschaft-gegen-cyberattacken-517376, abgerufen am 08.05.2018.
  4. 4 Allianz Risk Barometer, Die 10 wichtigsten Geschäftsrisiken in Deutschland, https://www.allianz.com/v_1516057200000/media/press/photo/risk-barometer-2018/Allianz_Risk_Barometer_2018_Top_10_Business_Risks_Deutschland.jpg., abgerufen am 8.5.2018.
  5. 5 Scherschel, Heise Online – NotPetya: Maersk erwartet bis zu 300 Millionen Dollar Verlust, https://www.heise.de/newsticker/meldung/NotPetya-Maersk-erwartet-bis-zu-300-Millionen-Dollar-Verlust-3804688.html, abgerufen am 08.05.2018.
  6. 6 OWASP, Top 10 – 2017, The Ten Most Critical Web Application Security Risks, https://www.owasp.org/index.php/Top_10-2017_Top_10.
  7. 7 Virtual Private Network.
  8. 8 Hasso Plattner Institut, Bitcoin-Hype: HPI-Studie zum echten Innovationspotenzial der Blockchain, https://hpi.de/pressemitteilungen/2018/bitcoin-hype-hpi-studie-zum-echten-innovationspotenzial-der-blockchain.html, abgerufen am 08.05.2018.
  9. 9 Schröder, Friedrich-Alexander-Universität Erlangen-Nürnberg – FAU-Forscher warnen vor „verbranntem Geld“ bei verschiedenen Kryptowährungen, https://www.fau.de/2018/04/news/wissenschaft/angriff-auf-kryptowaehrung-entdeckt/, abgerufen am 08.05.2018.
  10. 10 Biederbeck, WIRED - Der DAO-Hack: Ein Blockchain-Krimi aus Sachsen, https://www.wired.de/collection/business/wie-aus-dem-hack-des-blockchain-fonds-dao-ein-wirtschaftskrimi-wurde, abgerufen am 08.05.2018.
  11. 11 Quick Response (siehe Abbildung 3).
  12. 12 Radio-Frequency Identification.
  13. 13 Penke, Gründerszene – Parity-Millionen in Kryptowährung wohl für immer verloren, https://www.gruenderszene.de/fintech/parity-millionen-wallet-protokoll-999, abgerufen am 08.05.2018.
  14. 14 AltcoinToday, Bitcoin and Ethereum vs Visa and Paypal – Transactions per second, https://altcointoday.com/bitcoin-ethereum-vs-visa-paypal-transactions-per-second/, abgerufen am 08.05.2018.

Zusatzinformationen

Fanden Sie den Beitrag hilfreich?

Wir freuen uns über Ihr Feedback