Blockchain trifft Digital Identity
Mit voranschreitender Digitalisierung und einer echten Verwirklichung von Industrie 4.0 und Internet of Things offenbart sich die Notwendigkeit eines neuen Identitätsstandards. Die Möglichkeit, sich online als Mensch, Organisation, Gerät oder andere technische Instanz eindeutig auszuweisen, ist ein unabdingbares, bisher aber nur unzureichend gelöstes Schlüsselkonzept, welches die als Zukunftstechnologie gehandelte Blockchain mit der Verwirklichung einer digitalen Identität lösen könnte.
Als Fundament der Kryptowährung Bitcoin stellt die Blockchain-Technologie keine Neuerfindung im engeren Sinn dar, sondern vielmehr eine intelligente Vereinigung bereits bestehender Verfahren. Ein Peer-to-Peer-Netzwerk verständigt sich algorithmisch auf einen Konsens über die gemeinsame, redundant auf Nodes gespeicherte Transaktionshistorie zwischen allen Teilnehmern – die eigentliche Blockchain. Asymmetrische Verschlüsselung und digitale Signaturen garantieren korrekte Transaktionen zwischen Teilnehmen. Hashbäume sorgen für die charakteristische Kettenstruktur und damit für Integrität der Datenblöcke.
Es existiert nicht nur "die eine" Blockchain: Die Dimensionen der Leseberechtigung "Public vs. Private" und des Schreibzugriffs "Permissionless vs. Permissioned" (s. Tabelle) sowie zahlreiche andere Parameter (Konsensalgorithmus, Erzeugungsrate neuer Blöcke, etc.) definieren ein großes Spektrum von Modellen. Fast jeder Problemstellung kann dabei mit einer entsprechenden Architektur begegnet werden.
Tabelle 1: Blockchain Berechtigungsarchitektur
Zugriff | Validierung "Permissionless" | Validierung "Permissioned" |
---|---|---|
Public | Jeder darf lesen und validieren | Jeder darf lesen, nur Berechtigte dürfen validieren |
Private | Nur Berechtigte dürfen lesen, jeder darf validieren | Nur Berechtigte dürfen lesen und validieren |
Insgesamt hat die Blockchain-Forschung der letzten Jahre eine Vielzahl von erfolgreichen Möglichkeiten aufgezeigt, die einen dezentralen Konsens ermöglichen. Nicht immer erfolgt die klassische Bündelung von Transaktionen in abzugleichende Datenblöcke. Projekte wie IOTA [1] mit grundlegend anderer Transaktionsverarbeitung beschreiten neue Wege abseits der klassischen Blockchain. Sie fallen jedoch alle in die Oberkategorie der "Distributed Ledger Technology" (DLT).
Abgesehen von den inhärenten Sicherheitsmerkmalen, die einen fehlerfreien Betrieb garantieren, liegen die greifbaren Vorteile des Einsatzes von Blockchain/DLT im Aufbrechen zentralisierter oder stark hierarchischer Strukturen (und damit auch in der Eliminierung des "Single Point of Failure"). Das disruptive Potenzial der Blockchain könnte zur deutlichen Umgestaltung oder Definition neuer zahlreicher Geschäftsfelder führen.
Neben dem oft ins Feld geführten Paradigmenwechseln im Finanzsystem, in der Musikindustrie oder im Energiesektor ermöglicht die Demokratisierung von Daten durch die Blockchain auch nachhaltige Lösungen im Bereich der digitalen Identität.
Digitale Identität in der Krise
Dabei versteht man den Identitätsbegriff im digitalen Bereich ähnlich wie im Alltag als Summe von Merkmalen und Eigenschaften, die ein Individuum auszuweisen vermag. Genügen uns gewöhnlich ein Personalausweis, ein Führerschein oder je nach Kontext sogar weniger, wird es online sehr schnell unübersichtlich. Die Inanspruchnahme von Diensten setzt dort aktuell für gewöhnlich eine Registrierung mit Benutzernamen und Passwort voraus. In der heterogenen Online-Landschaft wird das Verwalten dutzender Accounts schnell zur leidigen und fehleranfälligen Aufgabe. Eine Vereinfachung ermöglichen Passwortmanager und Social Logins.
Letztere erlauben auf Basis des OAuth-Protokolls die Authentifizierung mittels der eigenen Social Media-Präsenz in Form von Facebook, Twitter, Google+ und anderen Diensten. Der Dienst bezieht hier die für ihn relevanten Daten aus zentraler Quelle und der Nutzer beschränkt sich lediglich auf die Verwaltung seines Social Media-Accounts. Nicht nur im Hinblick auf die Datenmissbrauchsskandale in jüngster Vergangenheit ist diese Konzentration von Daten in den Händen weniger kommerzieller Anbieter kritisch zu sehen. Neben der Gefahr einer Kompromittierung solcher zentraler Konten bleibt der Nutzer ein bloßer Zuschauer bei der Weitergabe seiner Daten. Für eine Vielzahl von Anwendungen stellt ein Social Login außerdem keine akzeptable Lösung für eine Authentifizierung (z. B. als deutscher Staatsbürger) dar.
Zwar ist solch eine bequeme und sichere Art des Single-Sign-Ons erstrebenswert, der Weg aus dieser Identitätskrise sollte allerdings eine selbstverwaltete digitale Identität – eine Self-Sovereign Identity – sein, in deren Mittelpunkt der Nutzer steht, der selbst im Besitz seiner persönlichen Daten ist und über den Fremdzugriff auf diese entscheidet. "Bring Your Own Identity" (BYOI) bezeichnet hierbei die Idee und das Ziel, diese eigene Identität bei Bedarf in beliebigem Umfeld, sei es privat oder geschäftlich, zum Online-Shopping oder in behördlichem Kontext, nutzen zu können.
Reformbedarf bei PKI
Auf unterster technischer Ebene bezeugen digitale Signaturen eine Identität. Ein nur im Besitz des Nutzers befindlicher privater Schlüssel (Private Key) ermöglicht das Signieren von Inhalten und Dokumenten. Der öffentliche Schlüssel (Public Key) erlaubt jedem das Nachvollziehen der Signatur. Problematisch beim Einsatz von asymmetrischer Verschlüsselung bleibt allerdings die zweifelsfreie Zuordnung von Public Key und zugehöriger Identität.
Die Vermeidung potenzieller Fälschungen und Fehladressierungen ist Ziel der "Public Key Infrastructure" (PKI). Korrekte Zuordnungen werden dabei von Certificate Authorities (CAs) in Form von Zertifikaten (nach X.509 Standard) beglaubigt. Revocation Lists geben eine Übersicht über zurückgerufene und damit ungültig gemachte Zertifikate. Die CAs selbst benötigen ebenfalls eine Zertifizierung durch eine "höher"gestellte CA mit eigenen Revocation Lists. Die dadurch entstehende Baumstruktur endet in der Wurzel durch eine selbstzertifizierte Root CA, der alle Teilnehmer vertrauen müssen.
So steht und fällt das Vertrauen in dieses stark hierarchische Modell mit der Vertrauenswürdigkeit der Root CA. Die weitreichenden Auswirkungen dieses klassischen Single Point of Failure sind durch diverse Vorfälle bei der Zertifizierung von Webseiten (TLS/SSL) bekannt. Die Vorstellung eines Internet of Things mit einem Wurzelzertifikat für Abermillionen von Devices entlarvt das klassische PKI-Modell im Rahmen digitaler Identitäten als überholt, da im Falle eines kompromittierten Root CAs alle Zertifikate neu ausgestellt und auf alle Geräte verteilt werden müssen.
Bestrebungen, das bestehende System nicht zu verwerfen, sondern den sich abzeichnenden Herausforderungen anzupassen, werden bei der Erarbeitung einer "Decentralized PKI" (DPKI) deutlich. Ein Leitgedanke ist die bereits (z. B. bei PGP) in der Vergangenheit praktizierte Idee eines hierarchielosen Web of Trust, in dem sich die Nutzer gegenseitig zertifizieren und sich das Vertrauen in einen richtig zugeordneten Public Key vom Vertrauen in die ihn beglaubigenden Zertifikate (bzw. Zertifizierer) ableitet, der Nutzer also frei in der Wahl seiner "Root of Trust" ist. An die Stelle von Key-Servern, die der Speicherung und dem Abruf von Public Keys dienen, tritt hier eine Blockchain.
Identity mit Blockchain
Als transparente und dezentralisierte Plattform mit bereits fest integrierter Public-Key-Kryptographie vereint die Blockchain viele wünschenswerte Eigenschaften zur Verwirklichung von DPKI. Auf zentrale Instanzen kann komplett verzichtet werden, da der Nutzer, der selbst seinen privaten Schlüssel kontrolliert, seine Zertifikate selbst ausstellt und die Blockchain als hochverfügbare Revocation List fungiert. Ferner können komplexe Entlohnungssysteme, Wiederherstellungsmechanismen für verlorene Private Keys oder andere Errungenschaften der Blockchain in der Identity-Lösung umgesetzt werden.
Obwohl also nach wie vor eine glaubhafte Zuordnung von Identitäten und Public Keys hergestellt werden soll, ist auch die Blockchain-basierte DPKI unvoreingenommen gegenüber dem eigentlich verwendeten Identifikator. Viele Formen sind hier denkbar und auch die in Frage kommenden Blockchains sind zahlreich.
Als beliebte Anlaufstelle für verschiedenste Blockchain-Anwendungen hat sich Ethereum etabliert. Oft beschrieben als "World Computer", bietet Ethereums Public Permissionless Blockchain eine dezentrale Plattform für Smart Contracts. Diese automatisierten Verträge in Programmform dienen der Umsetzung logisch formulierbarer Vereinbarungen zwischen (menschlichen oder nichtmenschlichen) Netzteilnehmern. Die so nach klaren Regeln operierenden Smart Contracts sind einsehbar und unabänderlich auf der Blockchain abgelegt und adressierbar wie jeder andere Nutzer auch. Unter den zahlreichen Ideen, die auf der Allzweckplattform Ethereum Wirklichkeit werden, finden sich auch auf Smart Contracts basierende Entwürfe für Self-Sovereign Identity und DPKI. Das bekannteste Projekt, welches in diesem Umfeld tätig ist und auf Ethereum baut, kommt von Consensys (u. a. Entwickler für das am weitesten verbreitete Solidity Framework Truffle). Das Projekt uPort nutzt verschiedene Smart Contracts um eine digitale Identität in Ethereum zu ermöglichen und indirekt klassische und ungewollte Blockchain-Eigenschaften zu umgehen, wie z. B. das Wiederherstellen von verlorenen Identitäten [2].
Ein anderer Ansatz besteht in der Wahl einer auf digitale Identität maßgeschneiderten Ausgangsumgebung. Sovrin, ein Projekt der gleichnamigen gemeinnützigen Stiftung, setzt beim Aufbau einer weltweit verfügbaren Infrastruktur für Self-Sovereign Identity auf eine eigens dafür ausgerichtete Public Permissioned Blockchain [3]. Neben der Erfüllung technischer Voraussetzungen ist für den Betrieb eines Sovrin Nodes die Zustimmung zum "Sovrin Trust Framework", das die rechtlichen Grundlagen und Zielvorstellungen definiert, nötig. Eine größtmögliche Diversität bei den Stewards, den Betreibern von Nodes, hinsichtlich Branche, geographischem Standort und Aufbau des Nodes soll die Robustheit des Netzes garantieren.
Dabei ist Sovrin mit seinem Ansatz eines Konsortiums, das sich zur Wahrung eines Regelsatzes verpflichtet, nur eine Instanz von Hyperledger-Indy. Daraus folgt als Teilprojekt der Linux-Foundation, dass der Code frei einsehbar ist und offen zur Verfügung steht. Sovrins Anspruch der einfachen Adaption und Interoperabilität wird im Vorantreiben und Nutzen von identitätsspezifischen Standards deutlich.
Eines dieser Standardisierungsverfahren sind die sogenannten DIDs (Decentralized Identifiers). Dieser Standard wird für eine Plattform unabhängige Umsetzung von digitalen Identitäten benötigt.
"Decentralized Identifiers (DIDs) are a new type of identifier for verifiable, ‘self-sovereign’ digital identity. DIDs are fully under the control of the DID subject, independent from any centralized registry, identity provider, or certificate authority." [4]
Man kann diese DIDs als eine Form der Identifizierung für selbstverwaltete digitale Identität ansehen. DIDs stehen vollständig unter der Kontrolle des Eigentümers der Identität. DIDs (Beispiel in Abb. 1) verweisen wiederum auf DID Documents (Beispiel in Abb. 2), die die Informationen enthalten, wie ein spezieller DID zu benutzen ist.
Um weiterhin die Privatsphäre zu erhöhen und eine Korrelation von Daten zu vermeiden, besteht eine digitale Identität aus sehr vielen DIDs:
"Following the dictums of Privacy by Design, each entity may have as many DIDs as necessary, to respect the entity’s desired separation of identities, personas, and contexts." [4]
Was DIDs so mächtig und einzigartig macht, ist die Möglichkeit, vom User selbst erstellt werden zu können – vergleichbar mit einer Bitcoin Wallet. Es bedarf somit keiner höheren Instanzen, die ein DID erst generieren und daraufhin einem Benutzer zuweisen muss. Mit dieser Eigenschaft geht einher, dass der Root of Trust selbstbestimmt ist. Bei einer Passnummer ist der Root of Trust der Staat, bei einer Personalnummer der Arbeitgeber, etc. Mit DIDs existiert ein interoperables System, das ähnlich den URLs im Internet agiert und eine Identitätsschnittstelle im Web bildet, mit dem Ziel, zentrale Punkte zu eliminieren und kritische zentrale Infrastruktur abzuschaffen.
Ein DID löst sich in die oben beschriebenen DID Documents auf. Dort enthalten sind alle Metadaten um den Besitz und die Kontrolle des dazugehörigen DID zu beweisen: Dazu gehören die kryptographischen Schlüssel (Public Keys), verschiedene Metadaten bezüglich der Erstellung des DID und ein Pointer auf eine Referenz (Endpoint). Ein Endpoint kann beispielsweise eine IP-Adresse sein, über die jede weitere Kommunikation zwischen zwei Parteien stattfindet. Sie ist somit Off-Ledger.
In den meisten Fällen wird dieser Endpoint zu einem Agent führen. Agents sind Programme, welche dem Benutzer eine Schnittstelle bieten, um mit dem Sovrin Ledger zu interagieren. Auf den ersten Blick wirken Agents wie eine zentrale Instanz, die vermieden werden soll, allerdings gilt diese Vorgehensweise primär der Usability. Für den User wird der Agent in den meisten Fällen die zentrale Anlaufstelle sein. Der Anwender jedoch kann selbst entscheiden, welcher Agent, zum Beispiel von einem bestimmten Unternehmen, verwendet wird. Für den versierten Nutzer besteht aber auch die Möglichkeit, direkt über das CLI, also die Kommandozeile, auf die Blockchain zuzugreifen oder sich einen eigenen Agent zu bauen.
Blockchains sind ideal geeignet, um die Existenz bestimmter Sachverhalte unanfechtbar zu beweisen. Der auch von Sovrin verwendete Ansatz ist weder private Daten noch Hashwerte von konkreten einzelnen Attributen und Informationen im Ledger zu speichern. Die Daten innerhalb der Blockchain sind als für immer unumkehrbar anzusehen. Für Hashwerte bedeutet dies ein ewiger Proof-of-Existence, was bei sensiblen Daten nicht erwünscht ist. Stattdessen werden nur signierte Statements aus einer vertrauenswürdigen Quelle und die für einen sogenannten "Zero-Knowlege Proof" (ZKP) benötigten Daten im Ledger abgelegt. Problemlos können beispielsweise Public Keys oder Skripte gelagert werden, die kaum persönliche (bzw. irrelevante) Daten enthalten. Man bezeichnet dies als eine "Transactional Version" der Blockchain, in der die möglichst geringste Menge an Daten auf dem Ledger abgelegt wird. Eine DID-basierte Architektur fokussiert sich darauf, die minimale Menge an Attributen, die für eine sichere Kommunikation zwischen zwei Parteien notwendig ist, zu teilen. Die folgenden Voraussetzungen sind für diese Verfahrensweise zu erfüllen:
Eine DID-Registrierungsfunktion, welche die erfolgreiche und sichere Speicherung eines vollständigen DID-Satzes (Identität mit Metadaten) in die Blockchain garantiert. Dabei gilt:
- Die Hauptperson (kann auch eine Gruppe oder Organisation sein) besitzt vollständig die Kontrolle über den DID und ist nicht von einem Mittelsmann abhängig.
- Die Registrierung ist dauerhaft gültig (solange die Blockchain besteht).
- Im DID sind die kryptografischen Schlüssel für die Kontrolle und Authentifizierung des DID durch die Hauptperson enthalten.
- Das aus dem DID resultierende DID Document besitzt alle Informationen zur Verwendung des DID, die notwendigen Keys, Metadaten und ein oder mehrere Endpoints (Pointer auf Referenzen).
Eine Suchfunktion, die die Suche nach einem registrierten DID in der Blockchain effizient ermöglicht und die Integrität dieser bestätigt (valide Schlüssel).
Eine Schlüssel-Revocation-Funktion, die im Falle des Verlustes der Schlüssel von der Hauptperson die Kontrolle über den DID wiederherstellen kann.
Blockchain in der Bewährung
Der bedeutende Perspektivwechsel, weg vom Vertrauen in zentrale Instanzen und Mittelsmänner und hin zum Vertrauen in den dezentralen Konsens, kann erst verwirklicht werden, wenn letzteres gefestigt ist. Noch bestehende Vorbehalte resultieren oft durch die noch immer starke Assoziation oder gar Gleichsetzung von Blockchain und Bitcoin. Dabei sind auf die oft zitierten Kinderkrankheiten der weltersten Blockchain schon verschiedenste Antworten gefunden worden.
So verursacht der Proof-of-Work als Dinosaurier unter den Konsensverfahren tatsächlich einen hohen Energieverbrauch, ist aber austauschbar. Selbst bei einigen Kryptowährungen, wo in der Regel der Fund eines neuen Blocks entsprechend vergütet wird und so den Einsatz von Ressourcen zum Weitersuchen motiviert, ist mit Proof-of-Stake ein stromsparender Mechanismus in Erprobung (z. B. bei Ethereum). Anders als bei den Public Permissionless Blockchains der Kryptowährungen kann in Permissioned Blockchains der Konsens auch effizienter im kleineren Kreis der schreibberechtigten Nodes gebildet werden, sofern das Vertrauen in diese gegeben ist.
Genau diese Konsortium-Lösung, bei der die Instanzen die Hauptverantwortung für die Netzressourcen tragen, die ein berechtigtes Interesse an einem fehlerfreien Betrieb haben, wirkt für den beschriebenen Einsatz von Blockchain-Technologie für digitale Identitäten am sinnvollsten und wird so auch bei Sovrin praktiziert (mit den Sovrin Stewards). Auch wichtige Protokolländerungen lassen sich über ein Konsortium einfacher verwirklichen und beugen so anhaltenden Problemzuständen (vgl. Bitcoins Skalierungsdebatte) vor.
Aus technischer Sicht bestehen für die Verwirklichung der Self-Sovereign Identity also keine unüberwindbaren Hindernisse. Rückblickend hatten auch Technologien wie die heute etablierte PKI mit Anfangswiderständen wie Adaptionsgeschwindigkeit und nötiger Standardisierung zu kämpfen. Bevorstehende datenschutzrechtliche Anforderungen, die dem Nutzer mehr Kontrolle über seine Daten zusichern, bestätigen jedoch die Notwendigkeit der Self-Sovereign Identity. Der Ausblick auf ein in den Alltag reichendes Internet of Things, das seinen Mehrwert überhaupt erst nach Integration digitaler Identitäten entfalten kann, motiviert zur weiteren Auseinandersetzung mit Blockchain-Technologie. Hier gilt es, den Anschluss nicht zu verpassen.