Blockchain sicher gestalten - Konzepte, Anforderungen, Bewertungen - Bund.de
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
����������� Grußwort Im Bereich der Informationstechnik gehört In der Analyse auf den nachfolgenden Seiten wird Blockchain gegenwärtig zu den am häufigsten die Blockchain-Technologie daher detailliert dar- diskutierten Themen. Diese Technologie zur gestellt und die aus Sicht der IT-Sicherheit rele- verteilten Datenhaltung nahm ihren Ursprung vanten Punkte werden ausführlich untersucht. mit der Kryptowährung Bitcoin, die insbesondere Dabei wird auch analysiert, in welchem Maße die durch ihre Kurshöhenflüge im Jahr 2017 berühmt Blockchain-Technologie die mit ihr verbundenen wurde. Ausgehend von ihrem Versprechen, durch Sicherheitserwartungen zu erfüllen vermag und eine dezentrale Struktur die Manipulation von wie sie sich im aktuellen Rechtsrahmen darstellt. Daten rein technisch zu verhindern, größtmög- liche Transparenz zu bieten und Intermediäre in Dieses Dokument unterstützt somit Entwickler Geschäftsprozessen zu ersetzen, wurden in den und potenzielle Nutzer von Blockchain-Lösungen letzten Jahren viele Ideen zur Anwendung der dabei, Chancen und Risiken fundiert zu bewer- Blockchain-Technologie in ganz unterschiedli- ten und IT-Sicherheit von Anfang an zu berück- chen Gebieten entwickelt. sichtigen. Die dynamische Weiterentwicklung der Blockchain-Technologie eröffnet ebenso die Im politischen Diskurs wurde die Block- Möglichkeit, die Ergebnisse der Analysen als Basis chain-Technologie ebenfalls verstärkt aufge- für zukünftige Diskussionen auf nationaler sowie griffen. So findet sich der Begriff Blockchain internationaler Ebene zu verwenden. Denn auch mehrfach im Koalitionsvertrag der 19. Legisla- beim Thema Blockchain möchte das BSI seinem turperiode des Deutschen Bundestages von 2018 Auftrag nachkommen und die Informationssi- wieder und die Bundesregierung hat sich die cherheit für Staat, Wirtschaft und Gesellschaft Entwicklung einer umfassenden Blockchain-Stra- gestalten. tegie bis zum Sommer 2019 zum Ziel gesetzt. Ich wünsche Ihnen eine aufschlussreiche Lektüre. Wie bei vielen Themen mit hoher medialer Auf- merksamkeit ist es wichtig, bei den Diskussionen um Blockchain den Bezug zu den technischen Grundlagen zu wahren. Dies gilt insbesondere für den Aspekt der IT-Sicherheit, da durch die Nutzung von Blockchain häufig ein Sicherheitsge- winn erhofft wird. Zahlreiche Sicherheitsvorfälle mit Schäden in Millionenhöhe zeigen jedoch, dass Maßnahmen zur Herstellung von IT-Sicherheit auch durch Nutzung von Blockchain nicht obsolet werden. Das Bundesamt für Sicherheit in der Informa- tionstechnik (BSI) hat im Februar 2018 mit der Veröffentlichung seines Eckpunktepapiers einen ersten Schritt unternommen, um auf die grund- Arne Schönbohm, Präsident des Bundes- sätzlichen Fragestellungen in diesem Bereich amts für Sicherheit in der Informations- hinzuweisen. In vielfältigen Gesprächen mit technik (BSI) verschiedenen Akteuren, die Blockchain-Lösun- gen anbieten oder über ihren Einsatz nachdenken, ermittelte das BSI den Bedarf nach einer tieferge- henden Analyse der Sicherheitseigenschaften. Arne Schönbohm 1
| Zusammenfassung Zusammenfassung Blockchain ist eine neue Technologie zur Daten- und Software bestehen. Hinzu kommen neue haltung, bei der durch die verteilte Datenspei- Angriffsvektoren auf verschiedene Komponenten cherung in Verbindung mit kryptografischen des Systems. Neben den Konsensmechanismen, Verfahren und weiteren technischen Maßnah- mittels deren die verteilt gespeicherten Daten men die Abhängigkeit von einer zentralen Stelle konsistent gehalten werden, und den Smart weitestgehend eliminiert wird. Hierdurch lassen Contracts, die die Ausführung von Programmen sich einerseits gezielte Manipulationen deutlich im Blockchain-Netzwerk erlauben, sind hier erschweren. Andererseits wurde dieses Merkmal beispielsweise externe Schnittstellen zum Einfü- von Blockchains zum Anlass genommen, ihre gen und Auslesen von Daten zu nennen. Konkrete Nutzung in verschiedenen Anwendungsfällen Vorfälle zeigen, dass die Angriffsmöglichkeiten vorzuschlagen, bei denen mehrere Parteien mit nicht nur theoretischer Natur sind. unterschiedlichen Interessen involviert sind und sich nicht auf eine zentrale Stelle einigen können, Es ist wichtig zu beachten, dass die Block- die die Anwendung kontrolliert. Ebenso wurden chain-Technologie ein breites Spektrum an auch Anwendungsfälle vorgeschlagen, in denen Ausgestaltungen aufweist. Zur Differenzierung zwar eine zentrale Stelle existiert, man sich jedoch werden hier häufig die Einsehbarkeit der Daten von einer unmittelbaren Interaktion der Parteien (Leserechte) sowie die Fortschreibbarkeit der Effizienzgewinne verspricht. Blockchain (Schreibrechte) herangezogen. Jedoch gibt es auch für Konsensmechanismen und Smart Aufgrund der Erwartungen, die an die Block- Contracts eine Reihe von Ansätzen mit teils sehr chain-Technologie gestellt werden, ist sie momen- unterschiedlichen Eigenschaften, die zu einem tan zu einem Trendthema geworden, mit dem gewissen Grad mit der grundsätzlichen Ausge- sich eine Vielzahl an Akteuren aus Forschung, staltung einer Blockchain zusammenhängen, Wirtschaft und Verwaltung intensiv beschäftigt. aber durchaus weitere Freiheitsgrade bieten. Für Die Verwendung der Technologie wird in vielen konkrete Anwendungen, in denen Blockchains Bereichen diskutiert und untersucht. Heute wer- eingesetzt werden sollen, muss daher sorgfältig den Blockchains aber nur in der Finanzbranche, analysiert werden, welche Ausgestaltung am insbesondere im Bereich der Kryptowährungen, geeignetsten ist. Es ist davon auszugehen, dass das in vergleichsweise großem Ausmaß praktisch Modell von Bitcoin, das medial die größte Auf- eingesetzt. merksamkeit findet, für die meisten Anwendun- gen nicht sinnvoll sein wird. Das BSI untersucht das Thema Blockchain in diesem Dokument vor allem unter dem Gesichts- Im Bereich der Konsensmechanismen wird die punkt der IT-Sicherheit, betrachtet aber auch wei- breite Diskussion von dem Verfahren Proof-of- tere Auswirkungen der technischen Grundkon- Work dominiert, das unter anderem von Bitcoin zeption, z. B. auf die Effizienz und die Erfüllbarkeit verwendet wird und insbesondere wegen seines datenschutzrechtlicher Vorgaben. Grundsätzlich immensen Energiebedarfs in der Kritik steht. schneiden Blockchains gegenüber klassischen Das Verfahren ermöglicht es, die Daten in einem zentralen Datenbanken in den Punkten Verfüg- Umfeld ohne Authentisierung der einzelnen barkeit und Robustheit gegen Missbrauch positiv Parteien konsistent zu halten und dabei Manipu- ab. Dem stehen auf der anderen Seite Nachteile lationen zu verhindern. Unbeachtet bleibt oft die im Bereich Vertraulichkeit und Effizienz gegen- Tatsache, dass Blockchains mit strikterer Rech- über. tevergabe und Authentisierung der Parteien, wie sie für viele Anwendungen geboten scheinen, den Die Nutzung von Blockchain allein löst keine Einsatz von sogenannten nachrichtenbasierten IT-Sicherheitsprobleme. Vielmehr bleiben wohl- Konsensmechanismen erlauben, die wesentlich bekannte Probleme wie die Sicherheit von Hard- effizienter und gut untersucht sind. 2
| Zusammenfassung Verschiedene Blockchain-Systeme erlauben den der Konsensmechanismen klar verstanden und Einsatz von Smart Contracts, die die manipulati- berücksichtigt werden. Diese Aspekte sollten onssichere Abwicklung von Verträgen zwischen entsprechend für Blockchain-Anwendungen von einander unbekannten oder misstrauenden Anfang an bedacht werden. Partnern ermöglichen sollen. Jedoch sind Smart Contracts nicht mit juristischen Verträgen gleich- Die rechtlichen Fragestellungen im Zusammen- zusetzen, und nicht jeder Vertragsinhalt lässt sich hang mit Blockchains resultieren unter anderem überhaupt durch einen Smart Contract darstellen. aus dem Fehlen einer zentralen rechtlich verant- Außerdem decken Analysen existierender Cont- wortlichen Stelle im Regelbetrieb, woraus sich racts eine große Zahl von Sicherheitsproblemen vielfältige Implikationen ergeben. Dieses Thema auf. Sie reichen von Fehlern im Code – die tech- wird gegenwärtig kontrovers diskutiert. Daten- nologiebedingt nicht korrigiert werden können schutzrechtliche Probleme, wie die Umsetzung – über manipulierbare Zufallszahlen bis hin zu von Vorgaben der Datenschutz-Grundverordnung fehlender Authentizität der Daten, die aus der (DSGVO), ergeben sich aus der auf Blockchains realen Welt kommend im Contract verarbeitet gerade erwünschten Transparenz und Manipu- werden. Eine Berücksichtigung dieser Einschrän- lationssicherheit und sind ebenfalls Gegenstand kungen und Schwachstellen ist unerlässlich für intensiver Beschäftigung. einen verantwortungsbewussten Umgang mit Smart Contracts. An Lösungen für eine ganze Bandbreite techni- scher Beschränkungen und Probleme der Block- Da die Sicherheit von Blockchains in starkem chain-Technologie wird momentan ausgiebig und Maße auf den verwendeten kryptografischen kreativ geforscht. Zu den aktuellen Forschungs- Algorithmen basiert, müssen diese sorgfältig themen gehören beispielsweise die Aspekte ausgewählt werden, um das angestrebte Sicher- Skalierbarkeit, Effizienz, Pseudonymität und Ver- heitsniveau hinsichtlich der Schutzziele Integrität, traulichkeit. Ob und wann sich hier signifikante Authentizität und Vertraulichkeit zu erreichen. Verbesserungen ergeben werden, die über den Detaillierte Empfehlungen hierzu finden sich in jetzigen Stand der Technologie hinausgehen, kann den im Text referenzierten Technischen Richtli- gegenwärtig nicht eingeschätzt werden. nien des BSI. Ein bisher von den meisten Akteu- ren im Bereich Blockchain kaum beachteter Ein weiterer erwähnenswerter Punkt sind feh- Aspekt ist die Langzeitsicherheit. Um sensible lende Standards im Bereich Blockchain. Dies führt Daten langfristig zu schützen, müssen Maßnah- zur Inkompatibilität verschiedener Blockchains men zur Verfügung stehen, die den Austausch und zu einer relativ unübersichtlichen Fülle kryptografischer Algorithmen ermöglichen, an Lösungen, die die Auswahl eines konkreten deren Sicherheitseignung abgelaufen ist. Dabei ist Produkts für einen längerfristigen Zeithorizont unbedingt zu beachten, dass ein Austausch von für Anwender schwierig machen. Im Bereich der kryptografischen Verfahren nicht automatisch die IT-Sicherheit liefert das BSI nun mit dem vorlie- ursprünglichen Sicherheitsgarantien für ältere genden Dokument eine Entscheidungshilfe und Daten erhält. Neben den kryptografischen Ver- fundierte Basis für zukünftige Diskussionen. fahren müssen auch die Sicherheitseigenschaften 3
| INHALTSVERZEICHNIS Inhaltsverzeichnis Grußwort1 Zusammenfassung2 Inhaltsverzeichnis4 Einleitung6 Teil I Grundlagen 8 1 Definitionen und Taxonomie 9 2 Einordnung 15 3 Vertrauen und Konsens 20 4 Smart Contracts 28 Teil II Sicherheit 34 5 Datensicherheit 35 6 Langzeitsicherheit und Kryptoagilität 42 7 Angriffe 46 Teil III Recht 56 8 Rechtliche Aspekte 57 9 Datenschutz und Datensouveränität 61 4
| INHALTSVERZEICHNIS Teil IV Praxis 67 10 Anwendungsgebiete 68 11 Weiterentwicklungen 72 12 Standards und Regulierung 76 Glossar78 Index80 Abkürzungsverzeichnis82 Literaturverzeichnis83 Impressum96 5
| Einleitung Einleitung Blockchains sind seit einiger Zeit nicht nur Anspruch, das Thema Blockchain allgemeinver- Experten, sondern durch häufige Erwähnung in ständlich aufzubereiten, sondern richtet sich in den Medien auch einer breiteren Öffentlichkeit erster Linie an potenzielle Anwender, die den bekannt. Die Technologie kam 2009 mit der ersten Einsatz von Blockchain erwägen und über fach- erfolgreichen Kryptowährung Bitcoin auf, der bis liche Grundkenntnisse verfügen. Ziel ist es dabei, heute viele weitere folgten. Seit einigen Jahren einen strukturierten und umfassenden Überblick wird der Einsatz von Blockchains auch in zahl- insbesondere über diejenigen Aspekte des The- reichen anderen Bereichen vorgeschlagen und mas zu geben, die einen Bezug zur IT-Sicherheit erprobt. aufweisen. Den Lesern soll es damit ermöglicht werden, die für sie relevanten Fragestellungen Insbesondere für Anwendungen außerhalb der zu identifizieren, ihre Projektideen unter dem Kryptowährungen handelt es sich bei Blockchain Gesichtspunkt der IT-Sicherheit zu bewerten um eine vergleichsweise junge Technologie, an und gegebenenfalls konkrete Maßnahmen für deren Einsatz schnell große Hoffnungen geknüpft den sicheren Betrieb von Blockchain-Lösungen werden, für die sich aber noch keine einheitlichen abzuleiten. technischen Ansätze etabliert haben. Der Inhalt des Dokuments ist wie folgt geglie- Wie bei jeder neuen Technologie sollte auch bei dert: Der erste Teil beginnt mit einer abstrakten Blockchain das Prinzip Security by Design von Beschreibung der Technologie, ergänzt durch Anfang an berücksichtigt werden. Daher veröf- einige Beispiele, und führt allgemeine Fachbe- fentlichte das BSI im Februar 2018 eine Liste von griffe ein. Hieran schließt sich eine grundsätzliche Eckpunkten, in denen es auf allgemeine Rahmen- Einordnung von Blockchain aus Sicht der IT-Si- bedingungen, Anforderungen und Maßnahmen cherheit an, bevor die technischen Kernkompo- hinwies, die für den sicheren Einsatz der Techno- nenten Konsensmechanismen und Smart Cont- logie erforderlich sind [1]: racts detailliert dargestellt werden. Dabei werden auch verschiedene Ansätze miteinander vergli- • Blockchain allein löst keine IT-Sicherheitspro- chen und Aussagen zur Sicherheit getroffen. bleme (vgl. Kapitel 5 und 7). Der folgende Teil befasst sich intensiv mit den • Die Wahl des passenden Blockchain-Modells Sicherheitsaspekten des Themas. Hier werden ist wichtig (vgl. Kapitel 1 und 2). allgemeine Hinweise zur Verwendung kryptogra- fischer Verfahren gegeben. Dies betrifft einerseits • Bei der Konstruktion von Blockchains müssen die Auswahl der Verfahren, mit denen gewisse Sicherheitsaspekte frühzeitig berücksichtigt Sicherheitsgarantien erreicht werden können, werden (vgl. Kapitel 3, 5, 6 und 10). aber auch konkretere Hinweise zur sicheren Umsetzung. Der nachfolgende Abschnitt widmet • Sensible Daten mit langfristigem Schutzbe- sich dem Thema Langzeitsicherheit in Block- darf müssen in einer Blockchain besonders chains, d. h. der Frage, ob und wie darauf reagiert geschützt werden (vgl. Kapitel 6). werden kann, dass verwendete kryptografische Verfahren durch neuartige Angriffe ihre Sicher- • Einheitliche Sicherheitsniveaus für Block- heitseignung verlieren. Abschließend wird eine chains müssen definiert und durchgesetzt Vielzahl bekannter Angriffe auf Blockchains werden (vgl. Kapitel 12). aufgearbeitet und wo möglich Gegenmaßnahmen diskutiert. Das vorliegende Dokument beschäftigt sich mit der gleichen Fragestellung, geht dabei jedoch Der dritte Teil behandelt rechtliche Fragestellun- deutlich weiter in die Tiefe. Es verfolgt nicht den gen. Neben einer allgemeinen juristischen Bewer- 6
| Einleitung tung fallen hierunter insbesondere Aspekte des chains unter dem Oberbegriff Distributed-Led- Datenschutzes. ger-Technologie (DLT) erarbeitet und diskutiert werden. Neben Erweiterungen der Datenstruktur Im letzten Teil wird schließlich die praktische und Kombinationen mit anderen neuen Tech- Anwendung von Blockchains näher beleuchtet. nologien ist hier auch die Interoperabilität ein Dazu werden einige häufig genannte Anwen- wichtiges Forschungsthema. dungsszenarien abstrakt analysiert und die aus Sicht der IT-Sicherheit relevanten Punkte her- Kryptografische Fachbegriffe werden am Ende vorgehoben. Anschließend wird eine Reihe von dieses Dokuments in einem Glossar erklärt. Am Ansätzen und Ideen vorgestellt, die zur Weiter- Schluss jedes Kapitels findet sich eine Zusammen- entwicklung und Verallgemeinerung von Block- fassung der wichtigsten Aussagen. 7
Teil I Grundlagen 8
| Definitionen und Taxonomie 1 Definitionen und Taxonomie Um ein gemeinsames Verständnis der Inhalte der Die Netzwerkknoten verwalten jeweils eine lokale Blockchain-Technologie und damit die Voraus- Kopie der gesamten Daten und können selbst setzung für die weiteren Ausführungen in diesem neue Daten hinzufügen. Ein geeigneter Kon- Dokument zu schaffen, werden in diesem Kapitel sensmechanismus sorgt dafür, dass die verteilten zunächst die wichtigsten Begriffe und grund- Daten in allen Knoten aktuell sind und überein- legenden Mechanismen im Bereich Blockchain stimmen und das Distributed Ledger als verteilte erklärt und verschiedene Klassifikationsmög- Datenstruktur damit stets in einem konsistenten lichkeiten aufgezeigt. Um diese Grundlagen auch Zustand gehalten wird. praktisch zu illustrieren, werden im Anschluss einige bekannte Beispiele für Blockchains vorge- Bei der Absicherung des Netzwerkzugangs, der stellt. Datenstruktur und der Konsensbildung werden kryptografische Verfahren eingesetzt, um die gewünschten Sicherheitsziele (insbesondere Inte- grität und Authentizität) zu erreichen. Die Regeln 1.1 Grundbegriffe für die Validierung, Speicherung und Nutzung der Daten (Geschäftslogik) sind in den Datensätzen Die Grundidee der Blockchain-Technologie selbst codiert und werden bei der Verarbeitung basiert auf der allgemeineren Konstruktion der automatisiert vom Netzwerk ausgeführt und sogenannten Distributed-Ledger-Technologien durchgesetzt. (distributed ledger: verteiltes digitales Analo- gon zum klassischen Journal der Buchführung). Speziell bei der Blockchain-Technologie werden Diese beschreibt eine Technik zur verteilten alle Daten als sogenannte Transaktionen im Netz- Datenhaltung in einem Peer-to-Peer-Netzwerk werk validiert, zu Blöcken zusammengefasst und (P2P-Netzwerk), bei der die Netzwerkknoten neue Blöcke durch eine kryptografische Verket- durch eine Übereinkunft (Konsens) gemeinsam tung manipulationssicher mit ihrem Vorgänger über die Aktualisierung der Daten entscheiden. verbunden. Dadurch wird insbesondere eine Bei den Daten kann es sich beispielsweise um chronologische Reihenfolge der Transaktionen Kontostände einer Kryptowährung, Herkunfts- festgelegt. Es entsteht eine stetig wachsende Kette nachweise für Waren oder auch abstrakter um von Datenblöcken, die sogenannte Blockchain Vertragszustände von sogenannten Smart Cont- als Spezialfall eines Distributed Ledgers (siehe racts handeln. Abbildung 1). Dabei gibt es keine zentrale Kommunikations- Die Blockchain-Technologie besteht also aus fünf steuerung und keine zentrale Datenspeicherung. grundlegenden Bausteinen (siehe Abbildung 2): Abbildung 1: Blockchain-Datenstruktur 9
| Definitionen und Taxonomie P2P-Netzwerk: Datenstruktur: Routing, Zugang, Verteilte redundante Synchronisation, Datenhaltung, Hashbäume, Rechte etc. verkettete Liste von Transaktionsblöcken Konsensndung: (Blockchain) Einigung auf Status der Blockchain, BC PoX, BFT Geschäftslogik: Automatische Regeln Kryptograe: innerhalb der Transaktionen, Integrität der Blockchain, Skripte, Smart Contracts, Authentizität der Transaktionen, dAPPs Pseudonymität der Teilnehmer etc. Abbildung 2: Grundbausteine der Blockchain-Technologie • Peer-to-Peer-Netzwerk anderem die passende nachrichtentechnische Basis und die entsprechenden Kommunikations- • Datenstruktur Blockchain protokolle zu wählen, die richtigen Datenreprä- sentationen und Regelsprachen auszusuchen und • Konsensfindung die passenden Algorithmen korrekt und sicher • Geschäftslogik zu implementieren. Eine solche Umsetzung soll im Weiteren als Blockchain-System bezeichnet • Kryptografie werden. Diese Bausteine müssen je nach Anwendung In jedem Blockchain-System (siehe Abbildung passend modelliert werden, d. h. mit Netzwerkmo- 3) gibt es bestimmte Kernkomponenten, die die dellen, Kommunikations- und Datenstrukturen, Blockchain technisch definieren und die nicht Konsensmechanismen, Regelwerken und krypto- austauschbar sind. Dazu zählen die Netzwerk- grafischen Verfahren unterlegt werden. Beispiel- struktur, die Blockchain als Datenstruktur, der weise muss eine blockchainbasierte Kryptowäh- Konsensmechanismus und die Logik zur Sys- rung so konzipiert werden, dass sie potenziell mit temsteuerung inklusive der zugrunde liegenden vielen wechselnden, unbekannten und möglicher- kryptografischen Mechanismen. Um diesen weise nicht vertrauenswürdigen Nutzern zurecht- Blockchain-Kern herum wird das Blockchain-Sys- kommt. Eine Blockchain zur Nachverfolgung von tem durch verschiedene Infrastrukturkomponen- Luxusgütern dagegen muss insbesondere die Her- ten ergänzt, die für den Systembetrieb und die kunft und Echtheit ihrer Daten zuverlässig sicher- Umsetzung bestimmter sekundärer Funktionali- stellen. Die Auswahl und das Design eines passen- täten notwendig sind. Dabei handelt es sich zum den Blockchain-Modells sind entscheidend für die Beispiel um den Netzwerkzugang, Schnittstellen Erreichung der funktionalen und sicherheitstech- in die Umgebung, Logik zur Systemverwaltung, nischen Ziele jeder Blockchain-Anwendung. kryptografische Zusatzfunktionen oder ein Rol- len- und Rechtemanagement. Das dabei entwickelte Blockchain-Modell kann wiederum auf unterschiedliche Art und Weise Hinter dem Begriff „Blockchain-Technologie“ konkret umgesetzt werden. Dafür sind unter – verkürzend wird oft auch einfach nur „Block- 10
| Definitionen und Taxonomie chain“ verwendet – verbirgt sich also eine Vielzahl Auf der anderen Seite gibt es die Differenzierung von theoretischen und praktischen Variationen in genehmigungsbasierte (permissioned) und und Kombinationsmöglichkeiten der Block- genehmigungsfreie (unpermissioned/permissi- chain-Bausteine. Es kann nicht pauschal von „der“ onless) Blockchains, die die Erlaubnis zur Fort- Blockchain-Technologie oder „der“ Blockchain schreibung der Blockchain betrifft. Dürfen grund- gesprochen werden, sondern je nach Anwendung sätzlich alle Netzwerkknoten an der Validierung muss ein passendes Blockchain-Modell erstellt der Transaktionen, der Bildung neuer Blöcke und und ein entsprechendes Blockchain-System ent- an der Konsensbildung teilnehmen, so handelt es wickelt werden. sich um eine genehmigungsfreie Blockchain. Sind diese Prozesse jedoch nur nach vorheriger Aus- wahl und Zulassung durch eine zentrale Autorität zugänglich, so spricht man von einer genehmi- Netzwerk- gungsbasierten Blockchain. zugang Rollen- und Rechtemanage- Netzwerk- ment Je nach Anwendungsbereich sollte bereits bei der Schnittstellen struktur Konzipierung einer Blockchain eine Einordnung in die passenden Klassen vorgenommen wer- Konsens- Datenstruktur mechanismus den. Dabei spielt unter anderem eine Rolle, für Blockchain welchen Nutzerkreis die Blockchain gedacht ist, KERN welche Daten verarbeitet werden, aber auch wie Kryptograe die wirtschaftlichen und rechtlichen Rahmenbe- Steuerungs- Verwaltungs- logik dingungen für den Blockchain-Betrieb aussehen. logik kryptogra- sche Zusatz- Diese erste grobe Einordnung hat dann auch ent- funktionen sprechende Auswirkungen auf die Ausgestaltung des Blockchain-Modells, insbesondere auf die INFRASTRUKTUR Wahl des Konsensmechanismus und der krypto- grafischen Absicherung. Abbildung 3: Schalenmodell eines Blockchain-Systems Während öffentliche genehmigungsfreie (public unpermissioned) Blockchains (wie zum Beispiel Bitcoin) im Normalbetrieb ohne eine zentrale 1.2 Taxonomie Instanz auskommen, müssen bei den anderen Modellen zumindest die entsprechenden Berech- Aufgrund des großen Gestaltungsspielraums, den tigungen bzw. Einschränkungen mehr oder die Blockchain-Technologie bietet, können kon- weniger zentral vorgegeben und durchgesetzt krete Blockchain-Modelle sehr unterschiedlich werden, so dass eine geeignete Autorität für die aussehen und damit auch völlig unterschiedliche Blockchain vorhanden sein muss. Eigenschaften haben. Zur Klassifizierung haben sich dabei folgende Begrifflichkeiten durchge- setzt: 1.3 Beispiele Einerseits wird unterschieden zwischen privaten (private) und öffentlichen (public) Blockchains. Im weiteren Verlauf des Dokuments werden Hierbei geht es um die Verwendung des Netz- neben allgemeinen Ausführungen immer wieder werks und die Einsehbarkeit der Daten. Öffent- auch Beispiele aus der Praxis genannt, um die liche Blockchains erlauben uneingeschränkt beschriebenen Sachverhalte zu illustrieren. Vorab das Einstellen von Daten im Netzwerk und die sollen hier deshalb einige prominente Beispiele Einsicht in alle Transaktionen der Blockchain. für Blockchains kurz eingeführt werden, die Dagegen schränken private Blockchains diese aufgrund ihrer Verbreitung, ihres Reifegrads oder Nutzung auf bestimmte Nutzergruppen, z. B. eine ihrer ökonomischen Relevanz eine besondere Organisation oder ein Konsortium, ein. Rolle spielen. 11
| Definitionen und Taxonomie Beispiel: Bitcoin Das bestimmt bekannteste Beispiel für eine öffentliche genehmigungsfreie Blockchain-Anwendung ist die Kryptowährung Bitcoin [2], die seit 2009 ohne Unterbrechung online ist und mit etwa 67 Milli- arden US-Dollar die bei Weitem größte Marktkapitalisierung aller Kryptowährungen aufweist (Stand März 2019). Bei der Erstellung von Empfänger- und Absenderadressen sowie zur Authentisierung von Zahlun- gen (Transaktionen) kommt im Bitcoin-System ein Public-Key-Verfahren zum Einsatz. Die benötig- ten Schlüsselpaare können dabei in sogenannten Wallets („Geldbörsen“) gespeichert, verwaltet und zum Teil auch erzeugt werden. Eine Bitcoin-Adresse ist vereinfacht ausgedrückt der Hashwert eines öffentlichen Signaturschlüssels (siehe Abbildung 4 oben). Die genaue Beschreibung der Erzeugung von Bitcoin-Adressen findet sich beispielsweise in [3]. Zum Überweisen wird der zur Absenderadresse passende öffentliche Schlüssel des Überweisenden und ein mit dem zugehörigen privaten Schlüssel signierter Datensatz übertragen (siehe Abbildung 4 unten). Der Empfänger prüft dann durch Wiederholung der Hashprozedur, ob der öffentliche Schlüs- sel zur Absenderadresse gehört, und mit Hilfe des öffentlichen Schlüssels, ob die Signatur korrekt ist. Bei einem positiven Ergebnis beider Prüfungen ist klar, dass der Absender auch tatsächlich über das überwiesene Guthaben verfügt. Abbildung 4: Schematische Darstellung der Adresserzeugung und Signierung von Transaktionen in einem Bitcoin-Wallet Alle Transaktionen werden im gesamten Bitcoin-Netzwerk verteilt und dann von sogenannten Minern bestätigt, zu neuen Blöcken zusammengefasst und an das Ende der Bitcoin-Blockchain ange- hängt. Dieses Anhängen ist mit Hilfe einer kryptografischen Hashfunktion gesichert, was die Integrität der gesamten Kette garantiert. Zur Konsensbildung wird bei Bitcoin der sogenannte Proof-of-Work eingesetzt (siehe auch Abschnitt 3.2.3): Um einen Block hinzufügen zu können, muss ein Hashwert einer bestimmten Form berechnet werden, was im Allgemeinen sehr rechenintensiv ist. Als Anreiz erhalten die Miner für das Lösen dieser Aufgabe und die Verlängerung der Blockchain eine Belohnung in Form von (neu geschaffenen) Bitcoins und können zusätzlich Transaktionsgebühren erwarten. Die- ses Verfahren wird auch Mining (also „Schürfen“) genannt. Bitcoin als offene, pseudonyme und unregulierte Blockchain, die als Open-Source-Software verfüg- bar ist, verkörpert für viele die reine Lehre der Blockchain-Idee. Dieser Blockchain-Ansatz ist aber bei Weitem nicht für alle Einsatzbereiche geeignet und darf den Blick auf das breite Spektrum der Block- chain-Technologie nicht einschränken. 12
| Definitionen und Taxonomie Viele Begriffe der Blockchain-Technologie stam- in der Blockchain verwaltet wird. Auch der Begriff men ursprünglich aus der Bitcoin-Welt und wer- Wallet beschreibt nicht zwangsläufig nur eine digi- den heute oft in einer erweiterten Bedeutung ver- tale Brieftasche, er bedeutet vielmehr eine gene- wendet. Dazu gehört neben Blockchain selbst als relle Benutzerschnittstelle zum Blockchain-Netz- Bezeichnung für die Datenstruktur hinter Bitcoin werk, über die der Nutzer seine Zugangsdaten z. B. auch der Begriff Transaktion, der sich nicht und bestimmte Geheimnisse verwalten und am nur auf die Übertragung von Bitcoins oder anderer System teilhaben kann. Ebenso kann der Begriff digitaler Geldeinheiten beschränkt, sondern ganz Miner allgemein einen Akteur bezeichnen, der der allgemein ein Stück Information bezeichnet, das Blockchain neue Blöcke hinzufügen darf. Beispiel: Ethereum Auch Ethereum [4], [5] ist ein öffentliches genehmigungsfreies Blockchain-System. Es stellt die Kryp- towährung Ether zur Verfügung, die mit einer Marktkapitalisierung von über 14 Milliarden US-Dollar auf dem zweiten Rang liegt (Stand März 2019). Vor allem aber hat Ethereum als blockchainbasierte Plattform für Smart Contracts große Bekanntheit erlangt. Als Kryptowährung operiert Ethereum ähnlich wie Bitcoin. Die zugrunde liegenden Strukturen und Abläufe sowie auch der Konsensmechanismus sind vergleichbar. Transaktionen in Ethereum können allerdings nicht nur Wertüberweisungen enthalten, sondern auch ausführbaren Programmcode, soge- nannte Smart Contracts (siehe Kapitel 4). Ein solcher Contract erhält eine eigene Adresse, die zur wei- teren Interaktion benutzt wird und sich ansonsten nicht von normalen Nutzeradressen unterscheidet. Neben den Transaktionsdaten in der Blockchain gibt es in Ethereum einen übergreifend akzep- tierten Systemstatus (world state), der unter anderem die aktuellen Kontostände und – im Falle von Contract-Adressen – den Hashwert des zugehörigen Bytecodes enthält. Der Systemstatus liegt nicht auf der Blockchain, sondern lokal im Speicher der einzelnen Knoten [6]. Gültige Transaktionen beschreiben den Übergang vom aktuellen zu einem neuen Status, z. B. Änderungen von Kontostän- den. Um sicherzustellen, dass dabei die lokalen Kopien des Systemstatus auf allen Knoten konsistent bleiben, enthalten Blöcke unter anderem den Hashwert des aktuellen Status. Um diesen zu ermitteln, müssen beim Mining alle Smart Contracts ausgeführt werden, die durch im Block enthaltene Trans- aktionen initiiert oder adressiert werden. Ebenso ist es zur Verifikation eines jeden Blocks erforderlich, dass sämtliche Knoten jeden betroffenen Smart Contract ein weiteres Mal ausführen, um den hinter- legten Status-Hash zu überprüfen. Beispiel: Hyperledger Fabric Hyperledger Fabric [7], [8] ist ein weiteres bekanntes Blockchain-System. Es stellt keine Kryptowäh- rung zur Verfügung, sondern ist in erster Linie eine Plattform für Smart Contracts. Im Gegensatz zu den bisher genannten ist es privat und genehmigungsbasiert, was den Einsatz von nachrichtenbasier- ten Konsensverfahren – insbesondere CFT- und BFT-Verfahren (siehe Abschnitt 3.2.2) – erlaubt, die den Minern keine großen Kosten erzeugen. Ein Ziel von Hyperledger Fabric ist, ein modular aufgebautes Blockchain-System bereitzustellen, bei dem einzelne Komponenten ausgetauscht werden können. Dadurch soll eine Möglichkeit zur indivi- duellen Anpassung des Systems an eigene Bedürfnisse gegeben werden. Insbesondere sind die Validie- rung der Blöcke und der Konsensmechanismus voneinander getrennt. Neben der größeren Flexibilität gelingt es dadurch, den Ressourcenverbrauch zu begrenzen (siehe Abschnitt 4.1). 13
| Definitionen und Taxonomie Zusammenfassung. • Die Blockchain-Technologie kann modular definiert werden und erlaubt viele unterschiedliche Ausprägungen. • Je nach Anwendungsfall muss das richtige Blockchain-Modell gewählt werden. • Es gibt verschiedene Möglichkeiten, die Lese- und Schreibrechte auf einer Blockchain zu gestalten. 14
| Einordnung 2 Einordnung In diesem Kapitel werden Blockchains hinsicht- Die sehr gute Verfügbarkeit in Blockchain-Sys- lich verschiedener Eigenschaften bewertet und temen resultiert aus der dezentralen Datenspei- mit ihrer klassischen Alternative in Gestalt von cherung. Andererseits verringert diese wegen der Datenbanken verglichen. Diese Analyse ermög- auftretenden Latenzzeiten den Durchsatz des licht eine grundsätzliche Einschätzung, inwiefern Systems gegenüber zentralisierten Lösungen und der Einsatz der Blockchain-Technologie in einem verursacht zusätzlichen Speicherbedarf sowie gegebenen Kontext zielführend ist und welche damit verbundene Kosten. Insofern ist immer Vor- und Nachteile gegenüber Datenbanken eine Abwägung dieser verschiedenen Aspekte bestehen. erforderlich. Zu den betrachteten Eigenschaften zählen einer- seits die Schutzziele der IT-Sicherheit, die im nächsten Abschnitt genauer eingeführt werden, 2.1 IT-Sicherheit und andererseits die praktischen Anforderun- gen an den Durchsatz und die Skalierbarkeit der 2.1.1 Schutzziele Technologie. Diese Merkmale stehen teilweise in einem Spannungsverhältnis zueinander sowie mit Die klassischen Schutzziele der IT-Sicherheit, dem grundsätzlichen Design von Blockchains, das anhand derer technische Lösungen bewertet durch den Wunsch nach Dezentralität, Transpa- werden, sind die Integrität, Authentizität, Verfüg- renz und Manipulationssicherheit motiviert ist barkeit und Vertraulichkeit. Darüber hinaus wird (siehe Abbildung 5). häufig auch die Anonymität bzw. Pseudonymität betrachtet. Die Begriffe sind dabei wie folgt zu verstehen (vgl. IT-Grundschutz [9]): unmittelbare Designmerkmale technische Implikationen • Integrität bezeichnet die Sicherstellung der hohe Vollständigkeit und Korrektheit (Unversehrt- Verfügbarkeit heit) von Daten. Ein Verlust der Integrität dezentrale Datenspeicherung kann daher bedeuten, dass Daten unerlaubt geringer Durchsatz verändert, Angaben zum Autor verfälscht oder Zeitangaben zur Erstellung manipuliert geringe wurden. hohe Transparenz Vertraulichkeit • Authentizität bezeichnet die Eigenschaft, die Manipulations- keine Korrektur- gewährleistet, dass ein Kommunikationspart- sicherheit möglichkeiten ner (eine Person oder IT-Komponente oder Abbildung 5: Designziele und ihre unmittelbaren technologischen -Anwendung) tatsächlich derjenige ist, der er Implikationen vorgibt zu sein. Bei authentischen Informatio- nen ist sichergestellt, dass sie von der angege- benen Quelle erstellt wurden. So ist aufgrund der gewollten Transparenz die Herstellung von Vertraulichkeit und auch Ano- • Die Verfügbarkeit von Dienstleistungen, nymität in Blockchains sehr schwierig (siehe IT-Anwendungen oder auch von Informa- Abschnitte 5.1 und 5.4). Gleiches gilt für die tionen ist vorhanden, wenn diese von den Erfüllung von Datenschutzanforderungen (siehe Anwendern stets wie vorgesehen genutzt Abschnitt 9.3). werden können. 15
| Einordnung • Vertraulichkeit ist der Schutz vor unbefugter chain garantiert ist. Bei verschiedenen Konsens- Preisgabe von Informationen. Vertrauliche mechanismen ist nämlich eine gewisse Wartezeit Daten und Informationen dürfen ausschließ- nötig, bis die Daten in Blöcken nur noch mit lich Befugten in der zulässigen Weise zugäng- unrealistischem Aufwand verändert werden lich sein. können. Die Wahl des Konsensmechanismus steht wiederum mit dem Blockchain-Modell in Zusam- • Die Anonymität einer Entität liegt vor, wenn menhang (siehe Abschnitt 3.2). Grundsätzlich sie nicht identifiziert werden kann. Anony- kann die Integrität auf privaten oder genehmi- mität garantiert insbesondere, dass Daten gungsbasierten Blockchains schneller gesichert oder Handlungen der gleichen Entität nicht werden als auf öffentlichen genehmigungsfreien miteinander verknüpft werden können. Von Blockchains. Pseudonymität spricht man dagegen, wenn eine solche Verknüpfung über ein Pseudonym durchgeführt werden kann, gleichzeitig aber eine Zuordnung des Pseudonyms zu einer 2.1.3 Verfügbarkeit realen Identität nicht möglich ist. Aufgrund der technologieimmanenten ver- Die folgende Bewertung beschränkt sich auf die teilten und dezentralen Speicherung sind die Blockchain selbst. Insbesondere gelten die ver- Informationen zu jedem Zeitpunkt mit hoher schiedenen Sicherheitsgarantien für Daten erst Wahrscheinlichkeit verfügbar, sofern eine ausrei- dann, wenn sie in der Blockchain gespeichert chende Anzahl an Knoten, die den vollständigen wurden. So erstreckt sich beispielsweise der Integ- Datensatz vorhalten, vorhanden ist, sodass auch ritätsschutz nicht auf das Einlesen von Daten über Teilausfälle des zugrunde liegenden Netzwerks eine Schnittstelle zur realen Welt (z. B. Sensorda- toleriert werden können. Gezielte Angriffe auf ten, Ereignisse in der realen Welt). Hierfür wären, eine einzige zentrale Stelle sind nicht möglich, in ebenso wie bei alternativen Technologien, zusätz- privaten Blockchains kann ein Angreifer jedoch liche Maßnahmen außerhalb der Blockchain mit größerem Aufwand durchaus die Verfügbar- erforderlich. keit einschränken. Grundsätzlich gilt, dass eine höhere Rate an Verbindungen die Resistenz des Wo möglich und sinnvoll differenziert die Analyse Netzwerks gegen Ausfälle aufgrund gezielter zwischen öffentlichen und privaten Blockchains. Angriffe oder technischen Versagens stärkt. Anzumerken ist, dass die gute Verfügbarkeit nur für die direkt in der Blockchain gespeicherten 2.1.2 Integrität Daten gegeben ist. Wenn Daten, z. B. aus Daten- schutz- oder Vertraulichkeitsgründen (siehe Die Integrität der in einer Blockchain abgelegten Abschnitt 5.2), ausgelagert und in der Blockchain Daten wird im Wesentlichen dadurch sicher- nur Verweise gespeichert werden, so liefert die gestellt, dass die einzelnen Blöcke mittels einer Blockchain keine Verfügbarkeitsgarantien für die Hashfunktion verkettet werden. Sofern eine eigentlichen Daten. geeignete Hashfunktion gewählt ist, können Daten nicht nachträglich manipuliert werden, ohne dass dies auffällt. 2.1.4 Vertraulichkeit Es ist jedoch darauf hinzuweisen, dass die Sicher- heitseignung von Hashfunktionen eventuell Die Herstellung von Vertraulichkeit auf einer nur über einen gewissen Zeitraum besteht und Blockchain ist konstruktionsbedingt als sehr langfristig Anpassungen nötig sein können (siehe schwierig anzusehen und sollte daher kein Abschnitt 6.2). Weiterhin sollte bedacht werden, Schutzziel beim Einsatz von Blockchains sein. dass der Schutz der Integrität für die Daten oft Ursache dafür ist, dass die Transaktionsdaten allen erst einige Zeit nach ihrer Aufnahme in die Block- teilnehmenden Knoten zur Verfügung stehen 16
| Einordnung müssen und damit auch die Verschlüsselung der Knoten bei Erzeugung der Schlüssel in geeigne- Daten sehr schwierig umsetzbar ist. Es existieren ter Weise identifiziert und die Zuordnung der einige komplexe Vorschläge zur Herstellung von Schlüssel dokumentiert werden, z. B. über eine Vertraulichkeit, die in der Regel jedoch relativ Public-Key-Infrastruktur (PKI). ineffizient sind (siehe Abschnitt 5.1). Um die Authentizität der Transaktionsdaten Auf privaten Blockchains ist die Anzahl der Kno- sicherzustellen, ist der Schutz der entsprechen- ten in der Regel deutlich geringer als bei öffent- den privaten Signaturschlüssel von größter lichen. Vertraulichkeit ist gegenüber denjenigen Wichtigkeit. Insbesondere beim Einsatz von gewährleistet, die keinen Zugang zum Netzwerk statischen (d. h. dauerhaft verwendeten) Schlüs- haben, sofern die Kommunikation innerhalb des seln erlischt mit einem Schlüsselverlust gleich- Netzwerks angemessen geschützt wird. Zudem zeitig auch die Garantie für die Authentizität des gibt es auf privaten Blockchains Möglichkeiten, Knotens selbst. die Sichtbarkeit weiter einzuschränken (z. B. [8]), die aber mit einem höheren Aufwand verbunden sind. Auch wenn bei diesen Lösungen die Daten immer für einige Knoten mit höheren Rechten 2.1.6 Anonymität/Pseudonymität sichtbar bleiben, sind sie womöglich für viele Anwendungsfälle hinreichend. Aufgrund der Transparenz von Blockchains können verschiedene Transaktionen einer Entität Eine grundsätzliche Idee, um Probleme mit miteinander verknüpft werden, sodass höchstens der Vertraulichkeit zu umgehen, besteht in der Pseudonymität vorliegt. Auf privaten Blockchains externen Speicherung der relevanten Daten (siehe ist dies unproblematisch, da in der Regel die Abschnitt 5.2). In diesem Fall ist aber gemäß Identifizierung der Knoten sogar gewünscht ist. Es Abschnitt 2.1.3 insbesondere die Verfügbarkeit wird vorgeschlagen, auf öffentlichen Blockchains nicht durch die Blockchain gewährleistet. für verschiedene Transaktionen verschiedene Pseudonyme zu verwenden, um die Verknüpfung von Transaktionen zu verhindern und Anonymi- tät zu erzielen. Diese Maßnahmen stoßen jedoch 2.1.5 Authentizität an fundamentale Grenzen und lassen sich mit ausreichendem Aufwand aufheben. Auch die Auf einer Blockchain werden Transaktionen in Aufhebung der Pseudonymität ist durch Einbezie- der Regel durch digitale Signaturen mittels eines hung weiterer Informationen, die häufig außer- Public-Key-Kryptosystems abgesichert. Bei geeig- halb der eigentlichen Blockchain liegen, als mög- neter Wahl dieses Kryptosystems ist die Fälschung lich anzusehen. Für Details wird auf Abschnitt 5.4 einer Signatur für gegebene Daten extrem schwie- verwiesen. rig und somit sind die Transaktionen authentisch. Jedoch sei auch hier bezüglich der Langzeitsicher- heit auf den Abschnitt 6.2 verwiesen. 2.2 Effizienz Wichtig ist, dass durch die Blockchain die Authen- tizität nur bezüglich der Identitäten innerhalb Sollen Blockchains hin zu einem großflächigen des Netzwerks sichergestellt werden kann. Die Einsatz und einer großen Zahl an Transaktio- Zuordnung der Schlüssel zu einem konkreten nen skaliert werden, so sind in der Praxis ihr Kommunikationspartner muss ebenso wie bei Ressourcenbedarf und Durchsatz sehr wichtige anderen Technologien, die digitale Signaturen Kennwerte. Zu den hier betrachteten Ressourcen verwenden, durch zusätzliche Maßnahmen erzielt zählen dabei der genutzte Speicher und insbeson- werden. Auf einer öffentlichen genehmigungs- dere die benötigte Energie. Der Durchsatz einer freien Blockchain sind dazu keine Ansätze etab- Blockchain bezeichnet die Menge an Transaktio- liert. Auf privaten oder genehmigungsbasierten nen, die in einer festen Zeitspanne in neue Blöcke Blockchains müssen hierzu die Betreiber der aufgenommen werden können. 17
| Einordnung 2.2.1 Ressourcenbedarf Durchsatz. Dies ist vor allem in der Struktur des Netzwerks begründet, das bei privaten Block- Die sehr gute Verfügbarkeit der in einer Block- chains im Regelfall deutlich weniger Knoten als chain abgelegten Daten resultiert aus der viel- bei öffentlichen enthält. Weiterhin ermöglichen fachen verteilten Speicherung aller Daten ab die auf privaten Blockchains einsetzbaren Kon- dem ersten Block. Insbesondere auf öffentlichen, sensmechanismen einen um Größenordnun- großflächig eingesetzten Blockchains wäre der gen höheren Durchsatz als die gegenwärtig auf notwendige, schnell wachsende Speicherbedarf öffentlichen Blockchains verwendeten. So lag der jedoch für privat betriebene Knoten nicht tragbar. Durchsatz von Bitcoin im März 2019 bei etwa 7 tps Vor allem auf privaten Blockchains könnte sich (Transaktionen pro Sekunde), während Konsens- dieses Problem durch regelmäßiges, zumindest mechanismen auf privaten Blockchains 20.000 tps teilweises Löschen oder Komprimieren hinrei- oder mehr erreichen ([11], siehe Abschnitt 3.2). chend alter Daten abmildern. Ein oft genanntes Hindernis für die Skalierbarkeit von Blockchains ist der Energieverbrauch, der 2.3 Vergleich mit Datenbanken beispielsweise bei Bitcoin gemäß Schätzungen vom März 2019 für etwa 0,2 % des weltweiten Blockchains werden häufig als eine Alternative zu Stromverbrauchs verantwortlich und damit klassischen Datenbanken gesehen. Die Entschei- exorbitant hoch ist [10]. Dies liegt in erster Linie dung für den Einsatz einer der beiden Technolo- in dem verwendeten Konsensmechanismus gien kann dabei anhand verschiedener Kriterien begründet. Je nach Blockchain-Modell können erfolgen. Als erste Entscheidungshilfe wird hier jedoch Konsensmechanismen genutzt werden, ein grober Vergleich der Technologien gegeben. deren Energieverbrauch vernachlässigbar gering Aus Gründen der Übersichtlichkeit werden ledig- ist (siehe Abschnitt 3.2), weshalb insbesondere bei lich die zwei wichtigsten Blockchain-Modelle, privaten Blockchains der Energieverbrauch kein eine öffentliche genehmigungsfreie Blockchain Problem darstellt. (z. B. Bitcoin) sowie eine private genehmigungs- basierte Blockchain (z. B. Hyperledger-Instan- zen), einer klassischen Client-Server-Datenbank gegenübergestellt (siehe Tabelle 1). Darin hält ein 2.2.2 Durchsatz zentraler Server die Daten vor, auf die Clients per Abfrage zugreifen können. Grundsätzlich ist zu Der Durchsatz einer Blockchain hängt ebenfalls beachten, dass einzelne Aspekte je nach konkreter sehr stark vom Konsensmechanismus ab. Auf einer Ausgestaltung in einem gewissen Rahmen variie- niedrigeren Ebene ist er zudem von physikalischen ren können. Eigenschaften des zugrunde liegenden Netzwerks abhängig, da die dezentrale Speicherung und Ver- Datenbanken stellen die Integrität der gespei- teilung der Daten eine ständige Kommunikation cherten Daten durch eine Reihe von Maßnah- der verschiedenen Knoten innerhalb des Netz- men sicher. Dazu gehören in erster Linie die werks erfordern. Hier ist erstens die Bandbreite zu regelmäßige Erstellung von Sicherheitskopien nennen, die angibt, welche Datenmenge pro Zei- und Log-Dateien sowie eine starke Zugriffskon- teinheit innerhalb des Netzwerks verteilt werden trolle auf die Daten. Der zentrale Server stellt kann. Zweitens ist die Latenzzeit zu berücksichti- einen Single-Point-of-Failure dar, sodass gezielte gen, die die Zeit zur Übertragung eines Datenpa- Angriffe die Verfügbarkeit stark einschränken kets innerhalb des Netzwerks bezeichnet. Beide können. Durch redundante Datenhaltung lässt Werte unterliegen über die Zeit und in Abhängig- sich dieses Risiko jedoch im gewünschten Maße keit von den Netzwerkknoten, die miteinander abmildern. Die Vertraulichkeit der Daten lässt sich kommunizieren, gewissen Schwankungen. in einer Datenbank durch den geeigneten Ein- satz kryptografischer Routinen erreichen, wobei Grundsätzlich erlauben private Blockchains Zugriffsrechte nur an jeweils befugte Nutzer ver- gegenüber öffentlichen einen deutlich höheren geben werden (vgl. auch IT-Grundschutz [12]). 18
| Einordnung Ein wesentlicher Unterschied besteht darin, dass Wegen der zentralen Infrastruktur ist der Rechen- eine Datenbank – auch mit redundanter Daten- und Kommunikationsaufwand und auch der haltung – unter Kontrolle eines einzelnen Betrei- Energieverbrauch zum Betrieb einer Daten- bers steht. Im Gegensatz zu Blockchain-Lösungen bank sehr gering. Gleichzeitig ist ein sehr hoher kann somit die Einhaltung der Schutzziele durch Durchsatz möglich. Klassische Bezahldienstleis- missbräuchliches Verhalten dieser Entität beein- ter berichteten beispielsweise 2015 von bis zu trächtigt werden, ohne dass dies technisch verhin- 56.000 tps im Rahmen von Stresstests [13]. dert wird. Kurz gefasst bieten Blockchains gegenüber Durch zusätzliche organisatorische Sicherheits- Datenbanken Vorteile in der Robustheit gegen maßnahmen und aufgrund rechtlicher Rahmen- Missbrauch und gegebenenfalls der Verfügbarkeit, bedingungen wird dieses Risiko de facto als gering wohingegen sich in den Punkten Vertraulichkeit eingeschätzt. und Effizienz deutliche Nachteile ergeben. Blockchain (öffentlich Blockchain (privat Client-Server- genehmigungsfrei) genehmigungsbasiert) Datenbank Integrität ++ ++ ++ Authentizität umsetzungsabhängig Verfügbarkeit ++ ++ + Vertraulichkeit -- o* + Pseudonymität o -- -- Dezentralität ++ o -- Robust gegen ++ + o Missbrauch Transparenz ++ o -- Ressourcenbedarf (sehr) hoch† gering sehr gering Durchsatz -- + ++ Tabelle 1: Vergleich von Blockchain und Datenbanken (vgl. Abschnitte 2.1 und 2.2). * In einigen Blockchains gab es Fortschritte, die diese Bewertung widerspiegelt, in vielen Lösungen ist die Vertraulichkeit aber schwächer als angegeben zu beurteilen. † Alle bedeutenden öffentlichen genehmigungsfreien Blockchains verwenden momentan den Konsensmechanismus Proof-of-Work (siehe Abschnitt 3.2). Ein Übergang zu weniger energieintensiven Konsensmechanismen ist teilweise geplant (Stand März 2019). Zusammenfassung. • Die Schutzziele der IT-Sicherheit, Anforderungen an die Effizienz sowie die Designziele von Block- chains stehen in einem Spannungsverhältnis zueinander. • Es gibt große Unterschiede zwischen öffentlichen genehmigungsfreien und privaten genehmi- gungsbasierten Blockchains. • Einige Sicherheitsziele, insbesondere die Authentizität, müssen durch zusätzliche Infrastruktur- maßnahmen sichergestellt werden. • Blockchains bieten gegenüber zentralen Datenbanken Vorteile in den Punkten Robustheit gegen Missbrauch und Verfügbarkeit. • Blockchains weisen gegenüber zentralen Datenbanken Nachteile in den Punkten Vertraulichkeit und Effizienz auf. 19
| Vertrauen und Konsens 3 Vertrauen und Konsens Die verteilte Datenhaltung ist eine wesentliche integrieren. Dies gilt auch, wenn Blockchains als Eigenschaft von Blockchains. Einerseits erhöht Open-Source-Projekte entwickelt und betrieben sie auf technischer Ebene die Resistenz gegen werden. Dabei steuern die Programmierer die missbräuchliches Verhalten, das daher in geringe- allgemeine Entwicklung des Projekts, und die rem Maße durch organisatorische Vorkehrungen öffentliche Einsehbarkeit des Quellcodes muss verhindert werden muss. Andererseits macht sie mangels Zeit und Expertise der Nutzer nicht Maßnahmen unumgänglich, um die Überein- unbedingt zur Aufdeckung subtiler Schwach- stimmung der verschiedenen Kopien der Daten stellen führen. Dieses Vertrauen in die korrekte sicherzustellen. Der hierfür verwendete Konsens- Programmierung ist umso wichtiger, da Updates, mechanismus bildet somit eine Kernkomponente die bekannte Schwachstellen korrigieren, auf von Blockchains, deren Ausgestaltung für die öffentlichen Blockchains gegebenenfalls erst Sicherheit des gesamten Systems grundlegend nach längerer Zeit von allen Knoten eingespielt ist. werden, sodass die Korrektur sehr langwierig sein kann. Beim Betrieb von öffentlichen Blockchains 3.1 Blockchains und Vertrauen ergeben sich im Laufe der Zeit häufig Gruppen herausgehobener Akteure. Beispiele hierfür sind Ein wesentliches Merkmal einer Blockchain ist bei Kryptowährungen die Tauschbörsen zum das Fehlen einer zentralen Instanz, über die wie in Umtausch in etablierte Fiatwährungen, z. B. Euro herkömmlichen Lösungen die Kommunikation oder US-Dollar, sowie Mining-Pools als Zusam- geleitet und verwaltet wird und der von den Nut- menschlüsse mehrerer Miner. In diesen Bereichen zern vertraut werden muss. Die ursprüngliche Bit- sind aus ökonomischen Gründen Zentralisie- coin-Veröffentlichung [2] gibt diese Eigenschaft, rungstendenzen erkennbar (siehe Abschnitt 3.2.5). gemäß der die Sicherheit von Blockchains „statt Den Tauschbörsen muss dabei vertraut werden, auf Vertrauen auf kryptografischen Beweisen“ dass sie ihre Leistung tatsächlich erbringen [14] basiert, als grundlegende Motivation für die Kon- und ihre Infrastruktur gegen Angriffe schützen, zeption von Bitcoin an. Sie wird sehr häufig als die für die sie herausgehobene Ziele darstellen. wesentliche Neuerung der Blockchain-Technolo- gie bezeichnet. Auf privaten Blockchains ähnelt das Vertrauens- modell dem klassischer zentralisierter Lösungen, Im eigentlichen Betrieb der Blockchain existiert ohne dass dabei die Eigenschaft der Dezentralität anders als bei traditionellen Lösungen wie Daten- völlig aufgegeben wird. Aufgrund der abgestuften banken keine zentrale Instanz wie oben beschrie- Rechteverwaltung müssen Nutzer den Inhabern ben. Allerdings muss auch auf Blockchains eini- höherer Positionen vertrauen, wobei verschiedene gen Akteuren und Komponenten ein erhebliches Arten von Fehlverhalten aufgrund der Sicht- Maß an Vertrauen entgegengebracht werden. barkeit der Blockchain für ihre Nutzer detek- tiert werden können. Weiterhin ist auf privaten Eine wichtige Position haben die Programmie- Blockchains eine zentrale Administrationsstelle rer der Software inne, die zum Betrieb und zur nötig, von der die Verwaltung der Rollen und Teilnahme an der Blockchain verwendet wird. Die Rechte durchgeführt wird. Auch wenn sie nicht Nutzer müssen darauf vertrauen, dass die Pro- direkt in den Betrieb der Blockchain eingreifen grammierer tatsächlich die gewünschte Funktio- kann, könnte sie durch Vergabe oder Entzug von nalität implementieren und nicht versehentlich Rechten indirekt, aber nicht unbemerkt darauf oder absichtlich Schwachstellen in die Software Einfluss nehmen. 20
Sie können auch lesen