Newsletter Anmeldung

Bleiben Sie mit dem Newsletter immer up to date.

Anfrage
arrow-to-top

Blockchain, Smart Contracts und Datenschutz

Risiken und Grenzen Blockchain-basierter Smart Contracts

A. Einführung

2008 wurde unter dem Namen Satoshi Nakamoto das Bitcoin-System beschrieben. Dabei handelt es sich um das erste jedermann zugängliche dezentrale Online-Transaktionssystem. Nachdem in der breiten Öffentlichkeit lange einseitig kriminelle Nutzungspotentiale wahrgenommen und diskutiert worden sind, kursieren um die zugrunde liegende Datenstruktur, die Blockchain, mittlerweile geradezu euphorische Mythen. So wird das disruptive Potential der Blockchain beschworen, auf dessen Realisierung man indes – auch noch knapp zehn Jahre nach Initialisierung der Bitcoin-Blockchain – vergeblich wartet, und wird dabei – in gewisser Ignoranz der technischen Funktionsweise – der falsche Eindruck erweckt, Daten aller Art seien in Blockchains sicherer und effizienter aufzubewahren.

Aus dem Fokus rückt dabei die eigentliche Innovationskraft von Blockchain-Systemen, die schlicht in der Möglichkeit besteht, gemeinsam mit anderen Nutzern eine Datenbank zu pflegen, ohne dass dafür Vertrauen in einen zentralen Intermediär oder der Nutzer untereinander erforderlich ist. Die Möglichkeiten erschöpfen sich dabei nicht in der Vornahme einseitiger Transaktionen. Auf Blockchains lassen sich auch Computerprogramme ausführen, die vertragliche Abreden abbilden können (Smart Contracts). Die Automatisierung des Austauschs von Leistungen durch solche Smart Contracts verspricht die Durchsetzbarkeit von Vereinbarungen auch unter Vertragspartnern, die sich nicht vertrauen – ggfs. sogar nicht kennen.

Dieser Beitrag weist auf tatsächlich bestehende Risiken und Limitierungen Blockchain-basierter Smart Contracts hin und mag zur Beantwortung der Frage beitragen, für welche Anwendungsfälle die Nutzung Blockchainbasierter Smart Contracts sinnvoll ist. Nach einem Überblick über die technischen Grundlagen (siehe unter B.) widmet sich der Beitrag datenschutzrechtlichen und IT‑Sicherheits-bezogenen Risiken (siehe unter C.) und stellt praktische Grenzen der dezentralen Verifikation von Daten dar (siehe unter D.), bevor in einem abschließenden Fazit Kriterien zur Bewertung konkreter Implementierungsvorschläge rekapituliert werden (siehe unter D.).

B. Grundlagen und Anwendungsvorschläge

Blockchain-Systemen wie Bitcoin oder Ethereum liegt eine sog. public, permissionless Blockchain zugrunde. Solche Blockchains sind öffentliche Datenbanken, die ohne Einschaltung einer zentralen Partei durch eine zu einem Peer-to-peer-Netzwerk zusammengeschlossene Nutzergemeinschaft gespeichert und kontrolliert werden. Jedermann kann dem Netzwerk jederzeit bei- oder aus ihm austreten und zur Nutzung des Systems eine beliebige Zahl von Konten generieren, auf die Zuordnungsvorschriften – insbesondere Cryptocoin-Transaktionen – bezogen werden können. Über den Zustand der dezentral – d. h. lokal auf den Rechnern der Nutzer – gespeicherten Blockchain muss die Mehrheit der Nutzergemeinschaft einen Konsens erzielen, wobei die Abstimmung zur Verhinderung von Manipulationen durch spezielle Konsensmechanismen abgesichert wird.

Bei Cryptocoins wie Bitcoin enthält diese dezentrale Datenbank – gleich einem Kontobuch – sämtliche im System vorgenommene Cryptocoin- Transaktionen. Über die bloße Vornahme einfacher Transaktionen hinaus lassen sich jedoch auch komplexere Zuordnungsprozesse auf der Blockchain ausführen. Insbesondere lassen sich – auch im Bitcoin-System – Transaktionen an zusätzliche Bedingungen knüpfen. Das Ethereum-System ermöglicht die Ausführung beliebiger Computerprogramme, die auch zur Abbildung und Durchsetzung vertraglicher Vereinbarungen, also für Blockchain- basierte Smart Contracts genutzt werden können.

Neben dem beschriebenen Modell von public, permissionless Blockchains existieren alternative Modelle. Bei sog. permissioned Blockchains ist der Kreis der schreibberechtigten Nutzer auf einen bestimmten Personenkreis, z. B. Angehörige eines Industriekonsortiums, begrenzt. Ist eine solche Blockchain nicht öffentlich einsehbar, sondern ist auch nur ein begrenzter Personenkreis leseberechtigt, spricht man von einer private Blockchain.

Blockchains weisen spezifische Eigenschaften auf: Bei ihrem Einsatz ist kein Vertrauen in eine zentrale Partei oder die anderen Nutzer erforderlich. Blockchain-Systeme sind durch Vermeidung kritischer Einzelkomponenten widerstandsfähig. Wegen des mit dem dezentralen Konsens verbundenen Aufwands und der Datenstruktur ist die nachträgliche Modifikation eines Großteils der in einer Blockchain enthaltenen Daten impraktikabel aufwändig. Zur Gewährleistung der mehrseitigen Überprüfbarkeit durch die Nutzer sind die Daten in Blockchains transparent. Zwar ermöglichen Zero-Knowledge-Verfahren und homomorphe Verschlüsselung die Implementierung weniger transparenter Blockchain-Systeme, bei denen dennoch die mehrseitige Überprüfbarkeit der Blockchain-Daten erhalten bleibt. Nicht domänenspezifische, universell programmierbare Systeme wie Ethereum so zu gestalten, ist auf Grundlage bekannter kryptographischer Verfahren jedoch bislang nicht gelungen.

Die Anwendungsvorschläge für Blockchain-basiertes Smart Contracting sind zahlreich, beispielhaft herausgegriffen seien die Folgenden:

– Smart Contracts im Bereich des Internets der Dinge (IoT), die den Vertragsabschluss mit autonomen Maschinen ermöglichen. So könne sich ein Mietwagen praktisch selbst vermieten und dabei der Motor erst dann gestartet werden, wenn das Entgelt geleistet worden ist. Ergänzend könne das Fahrzeug mittels eingebauter Sensoren auch Wartungsbedarf anmelden. An den Hersteller könnten wirtschaftliche Überschüsse, an den Staat Steuern abgeführt werden.

– Die Überwachung der Einhaltung insb. regulatorischer Vorgaben in Lieferketten (Supply Chain Transparency). Vorgeschlagen wird z. B., dass die beim Medikamententransport an der Lieferkette Beteiligten die Temperatur der transportierten Medikamente an ein Blockchain-Netzwerk melden und hierdurch einen für die konkrete Lieferkette erstellten Smart Contract ansprechen. Einerseits würden die Messdaten in die unveränderliche Blockchain eingepflegt, andererseits durch den Smart Contract automatisiert darauf geprüft, ob sie den im Smart Contract codierten Vorgaben entsprechen.

– Dezentrale, autonome Organisationen (Decentral Autonomous Organizations = DAOs), bei denen der Erwerb von Anteilen und Abstimmungen über einen Smart Contract ausgeführt werden. Dabei kommt ein Smart Contract zum Einsatz, über den der Erwerb von Anteilen abgewickelt und die Abstimmungen der Mitglieder – etwa über die Verwendung von in dem Smart Contract gebundenen Cryptocoins – organisiert und durchgesetzt werden.

C. Risiken Blockchain-basierten Smart Contractings

Die Ausführung von Smart Contracts auf Blockchains ist mit Risiken insbesondere im Bereich des Datenschutzes (siehe unter I.) und der IT‑Sicherheit (siehe unter II.) verbunden. Daneben gibt es zahlreiche weitere Risiken, die im Weiteren jedoch außen vor bleiben.

I. Datenschutzrisiken

Werden in Blockchains personenbezogene Daten verarbeitet, ist die DSGVO grundlegend einschlägig. In public, permissionless Blockchain-Systemen fungieren Konten als Pseudonyme der Nutzer. Mittels Zusatzinformationen kann ein Konto dem dahinter stehenden Nutzer zuordenbar sein. Mittels spezieller Heuristiken lassen sich mit hoher Wahrscheinlichkeit demselben Nutzer zugeordnete Konten ermitteln, und so kann im äußersten Fall ein vollständiger Überblick über sämtliche diesen Nutzer betreffende Blockchain-Einträge gewonnen werden. Bei der Beteiligung natürlicher Personen an Smart Contracts, beispielsweise an DAOs oder bei der Inanspruchnahme von Leistungen im IoT-Bereich, sind die betreffenden Cryptocoin-Transaktionen und – soweit aus der Blockchain ersichtlich – vertraglichen Abreden potentiell personenbeziehbar.

Datenschutzrechtlich verantwortlich für die Datenverarbeitung in der Blockchain sind die die Blockchain speichernden und fortschreibenden Nutzer, d. h. bei public, permissionless Blockchains eine Gemeinschaft überwiegend Unbekannter. Unter diesen und diesen gegenüber lassen sich datenschutzrechtliche Vorgaben indes nicht durchsetzen, weil die Nutzer weitgehend unbekannt sind und die Inanspruchnahme bloß Einzelner auf die Datenverarbeitung in der Blockchain keinen Einfluss hat. Betroffenenrechte laufen ins Leere.

Speziell der Löschung und Berichtigung von Daten in der Blockchain steht ihre nachträgliche Unveränderbarkeit entgegen. Zwar existieren Vorschläge zur Implementierung nachträglich veränderbarer Blockchains auf Grundlage neuartiger kryptographischer Verfahren. Diese können allerdings nicht als bewährt angesehen werden und gehen mit dem Risiko des Missbrauchs einher.

Auch die Transparenz der von den Nutzern lokal ausgeführten Datenverarbeitungsvorgänge ist nicht gewährleistet. Der Intransparenz der Datenverarbeitungsvorgänge steht die Transparenz der Daten in der Blockchain gegenüber, die im Falle öffentlicher Blockchains den Schutz personenbezogener Daten gefährdet.

Für vorgeschlagene Anwendungsfälle von Smart Contracts im B2B-Bereich – wie insbesondere im Bereich der Lieferketten-Überwachung stellen sich die datenschutzrechtlichen Probleme mangels Personenbezugs indes nicht. Im engen Zusammenhang mit Datenschutzinteressen stehen aber Geheimhaltungsinteressen.

Wegen der Transparenz der Blockchain ist vor der Implementierung Blockchain-basierter Smart Contracts sorgfältig prüfen, welche Informationen in der Folge aus der Blockchain hervorgehen und mit welchen Risiken die Veröffentlichung der Daten verbunden ist. Das Transparenzproblem besteht nicht beim Einsatz von private Blockchains, die nur ein begrenzter Personenkreis einsehen kann.

II. IT‑Sicherheitsrisiken

Auch hinsichtlich der IT‑Sicherheit begegnet Blockchain-basiertes Smart Contracting Bedenken. Das Ethereum-System erlaubt die Ausführung beliebigen, auch angreifbaren Software-Codes auf der Ethereum-Blockchain. Tatsächlich enthält ein signifikanter Anteil der auf der Ethereum-Blockchain ausgeführten Smart Contracts Verweise auf veränderbare Daten oder andere Smart Contracts und funktioniert daher nicht ohne Vertrauen in Dritte wie es das Ethereum-System eigentlich verspricht. Bei einer anderen Analyse der auf der Ethereum-Blockchain ausgeführten Smart Contracts wurden über 40 % als angreifbar identifiziert.

Im Grunde kann selbst die Sicherheit von Bitcoin und anderen Blockchain- Systemen bisher nicht mit an Sicherheit grenzender Wahrscheinlichkeit angenommen werden, auch wenn die genutzten kryptographischen Verfahren für sich genommen als sicher gelten. Der den Systemen zugrunde liegende Open-Source-Code wird aber von einer Vielzahl kundiger Beobachter im Hinblick auf mögliche Fehler ständig überprüft. Für in einer Blockchain gespeicherte Smart Contracts geschieht dies aber, auch soweit deren Code aus der Blockchain ersichtlich oder sonst öffentlich ist, nicht im selben Umfang. Denn angreifbarer Code eines Smart Contracts betrifft unmittelbar nicht die Gesamtheit der Nutzer, sondern nur die beteiligten Nutzer. Für die Nutzergemeinschaft im Übrigen bestehen einerseits weniger Anreize zur Prüfung des Codes. Andererseits lassen sich Fehler bereits in der Blockchain verarbeiteten Codes nachträglich nicht beheben.

In besonderem Maße problematisch sind angreifbare Smart Contracts da, wo bei Inaktivierung des als angreifbar erkannten Smart Contracts den an ihm Beteiligten der Verlust an den Smart Contract gebundener Anteile und Wertverluste drohen oder durch Fehler im Code in ihm gebundene Anteile eingefroren werden. Riskant sind etwa dezentrale autonome Organisationen, die der Bereitstellung von Kapital dienen und dementsprechend im Smart Contract Cryptocoins binden, über deren Verwendung die Mitglieder abstimmen. Realisiert hat sich das Risiko bei der dezentralen Investitionsgesellschaft DAO, bei der ein Mitglied durch Ausnutzung einer Sicherheitslücke des zugrunde liegenden, auf der Ethereum-Blockchain ausgeführten Smart Contracts Ethers im Wert von mehr als 50 Millionen US‑Dollar abziehen konnte. Letztlich hat sich – nach kontroverser Diskussion – die Mehrheit der Nutzergemeinschaft auf Initiative der Entwickler von Ethereum zu einer Änderung der Regeln des Systems entschlossen, die den betroffenen Nutzern die Rückabwicklung des Erwerbs ihrer Anteile ermöglichte. Damit wurde die Blockchain rückwirkend umgeschrieben, was dem Konzept einer unveränderlichen Datenbank gerade widerspricht. Wer Anteile an einer DAO erwirbt, kann nicht darauf vertrauen, dass eine Mehrheit der Nutzergemeinschaft im Falle der Ausnutzung einer Sicherheitslücke eine entsprechende Entscheidung (wieder) trägt, setzt sich also dem Risiko des Totalverlusts aus.

D. Praktische Grenzen der dezentralen Verifikation

Neben den Risiken sollten sich Anwender vor Implementierung eines Smart Contracts in einer Blockchain auch die Limitierungen der dezentralen Verifikation von Daten vergegenwärtigen. Dies führt zu Zweifeln an der Sinnhaftigkeit des Einsatzes von Blockchains auch für solche Anwendungsfälle, für deren Realisierung die oben genannten Risiken hinreichend begrenzt erscheinen.

Die Nutzung von Blockchains wird verbunden mit dem Versprechen valider Daten. Kryptographisch absichern lässt sich jedoch zunächst nur die Validität rein Blockchain-interner Daten. Dies gilt insbesondere für Cryptocoin-Transaktionsdaten. Denn es gelten schlicht nur die Transaktionen als erfolgt, die sich in der Blockchain befinden. Die Daten in der Blockchain können insofern nicht falsch sein. Überall, wo externe Daten in die Blockchain eingespeist werden, die sich der mehrseitigen Überprüfbarkeit durch die Nutzergemeinschaft entziehen, ist die Validität der Daten, auch wenn sie in die Blockchain eingespeist worden sind, nicht abgesichert. Ein entsprechender Blockchain-Eintrag garantiert etwa nicht, dass Waren eine bestimmte Temperatur nicht überschritten haben, wirklich aus einer bestimmten Region stammen, nicht mit Pestiziden behandelt worden sind usw. Denn die Nutzergemeinschaft hat nicht die Möglichkeit zur Validierung solcher Daten. In public, permissionless Blockchains hat der nicht am konkreten Smart Contract beteiligte, und damit der Großteil der Nutzergemeinschaft auch gar kein Interesse an der Validierung.

Sämtliche Anwendungsvorschläge, die auf der Verarbeitung externer Daten in Blockchains beruhen, z. B. im Zusammenhang mit Supply Chain Traceability oder wenn im IoT-Bereich Maschinen Wartungsbedarf melden, nutzen im Kern bloß eine Eigenschaft von Blockchain-Systemen: ihre nachträgliche Unveränderbarkeit. Für solche Daten steht dann praktisch nur fest, dass sie das Blockchain-Netzwerk erreicht haben, in welcher Reihenfolge sie in der Blockchain verarbeitet worden sind und dass sie nicht nachträglich verändert worden sind. Dass die Daten valide sind, also nicht von vornherein manipuliert wurden, ist nicht sichergestellt. Das mangelnde Vertrauen etwa eines Herstellers in die von ihm beauftragten Transportunternehmen oder das mangelnde Vertrauen potentieller Kunden in die Verkehrssicherheit eines Mietfahrzeugs lassen sich nicht durch Nutzung einer Blockchain, sondern allenfalls durch den ergänzenden Einsatz kryptographischer Sensorhardware kompensieren, auf deren Sicherheit indes wiederum vertraut werden muss. Deren Einsatz sehen Anwendungsvorschläge durchaus vor, wobei allerdings das Versprechen einer erhöhten Effizienz der Speicherung der Daten auf der Blockchain im Vergleich zur Nutzung einer zentralen Datenbank unzureichend ökonomisch belegt und wegen der mit der dezentralen Datenhaltung und Abstimmung verbundenen Kosten nicht haltbar erscheint. Nicht nur vor dem Hintergrund der IT‑Sicherheitsrisiken, sondern auch angesichts der Komplexität von Blockchain-Systemen und der Limitierungen des dezentralen Konsenses stellt sich die Frage, inwieweit das Vertrauen in Dritte durch das Vertrauen in Technik sinnvollerweise ersetzt werden kann. Vor allem bei der Beteiligung von Endverbrauchern, aber auch bei der Beteiligung anderer Akteure, denen eigene Sachkunde fehlt, wird das Vertrauen in die Technik über vertrauenswürdige Dritte wie z. B. sich öffentlich äußernde Fachleute oder Hersteller von kryptographischer Hardware vermittelt.

E. Fazit

Die Nutzung Blockchain-basierter Smart Contracts ist – vor allem beim Einsatz von public, permissionless Blockchains – mit Risiken in den Bereichen des Daten- und Geheimnisschutzes sowie der IT‑Sicherheit verbunden. Unter Berücksichtigung dieser Risiken ist daher für jeden möglichen Anwendungsfall zu prüfen, ob die Nutzung einer Blockchain der Implementierung einer etwaig möglichen zentralen Lösung vorzuziehen ist. Das kann sich nur in Fällen ergeben, in denen die beteiligten Akteure sich untereinander nicht (vollständig) vertrauen. Dabei ist zu beachten, dass die Möglichkeiten, Vertrauen der Akteure untereinander durch Vertrauen in Technik zu ersetzen, praktisch begrenzt sind. Vor diesem Hintergrund erscheinen vorgeschlagene Anwendungen vielfach als durch den anhaltenden Hype getrieben und unzureichend durchdacht. Anbieter, die am Markt Vertrauen genießen oder bilden können, laufen bei vorschneller Implementierung eines Smart Contracts, der die in ihn gesetzten Erwartungen nicht erfüllt, Gefahr, dieses Vertrauen zu verspielen.

Zur einfacheren Lesbarkeit wurden die Verweisnoten entfernt.

Paulina Jo Pesch in: Smart Contracts; Hrsg. Martin Fries, Boris P. Paal; 2019

https://library.oapen.org/bitstream/handle/20.500.12657/24858/1005245.pdf?sequence=1&isAllowed=y

https://creativecommons.org/licenses/by-nc-nd/4.0/


© Swiss Infosec AG 2024