Maschinenidentitäten: Von PKI bis zur Self-Sovereign Identity auf Basis der Blockchain-Technologie

Beitrag von Prof. Dr. Christoph Reich
Hochschule Furtwangen

Unternehmen verbinden immer mehr intelligente Geräte, Sensoren und Maschinen zu intelligenten Fabriken (bekannt als Smart Factories der Industry 4.0), die in der Lage sind, sowohl große als auch Einzel-Stückzahlen rentabel zu fertigen und sich schnell an neue Gegebenheiten anzupassen. Smart Factories und deren intelligente Maschinen/Geräte können autonom agieren und unternehmensübergreifende Geschäftsmodelle realisieren. Maschinen signieren wichtige Log-Daten, um sie vor Manipulation zu schützen, kommunizieren verschlüsselt mit Services im Internet, bestellen selbständig Verschleißteile, die sie durch intelligente Vorhersage-Algorithmen ermittelt haben oder beauftragen einen Wartungsdienstleister, der eine Komponente einer Maschine austauschen soll. Werkzeugmaschinen werden nicht mehr gekauft, sondern werden stattdessen per Leasing vom Maschinenhersteller zur Verfügung gestellt und anhand der realen Nutzung abgerechnet. Diese hochautomatisierten, dezentralisierten Fabriken versprechen eine größere Effizienz und Flexibilität bei den Produktionsprozessen.

Um unternehmensübergreifende Geschäftsmodelle realisieren zu können, muss man für Rechtssicherheit der Prozesse sorgen. Es muss gewährleistet werden, dass Daten rechtskonform erfasst, verarbeitet und gespeichert werden, damit die Unternehmen vertrauensvoll und vertragssicher zusammenarbeiten können. Das bedeutet aus Sicht der IT-Sicherheit, dass die Schutzziele, Daten-Integrität, -Vertraulichkeit und -Verfügbarkeit gesichert sind und dass das Vertrauen in die am Geschäftsprozess beteiligten Maschinen-/Gerätekomponenten und Unternehmen gewährleistet ist.

Die Blockchain-Technologie kann dieses Vertrauen schaffen, indem Verträge als “Smart Contracts” automatisiert und alle vertragsrelevanten Informationen darin unveränderlich (tamper-proof) gespeichert werden. Sind die Daten in der Blockchain gespeichert, dann ist die Integrität der Daten gewährleistet. Die Gefahren für die Verletzung der Schutzziele von Daten lauern auf dem Weg in die Blockchain. Denn es ist an der Tagesordnung, dass Cyber-Physical-Systeme (CPS) Ziel von Angriffen sind. Malware, Manipulation, Sabotage, fehlerhafte Firmware-Updates und gefälschte Komponenten sind Beispiele für digitale Bedrohungen, welche ganze Produktionslinien zum Stillstand bringen und zu erheblichen Kosten und Imageverlust führen können. Die kleinste Sicherheitslücke in der Infrastruktur eines Unternehmens kann zum Verfälschen oder zum Diebstahl von unternehmenskritischen Daten, geistigem Eigentum (IP) und Prozess-Know-how führen.

Sichere digitale Identitäten haben einen hohen Stellenwert

Unternehmen brauchen Sicherheitstechnologien, um die Kommunikation zwischen Geräten und Maschinen innerhalb stark vernetzter Infrastrukturen zu schützen. In diesem Zusammenhang bilden gesicherte digitale Identitäten für Personen und für Maschinen eine besondere Rolle. Sie bilden den Anker für die Umsetzung aller Maßnahmen zur Authentifizierung und Autorisierung der Geräte, zum Schutz des elektronischen Austauschs und der sicheren Speicherung von Daten.

In der Regel werden digitale Zertifikate – z.B. X.509, die in Hardware Security Modules (HSMs) oder in TPMs abgelegt werden – zur Bestätigung der Echtheit einer Maschinenidentität genutzt, damit sich jede Maschine eindeutig gegenüber anderen Maschinen und Systemen ausweisen kann.
Wenn Unternehmen Zertifikate mit eigenen Public-Key-Infrastrukturen (PKIs) selbst ausstellen und verwalten, sind vor allem bei kleinen und mittleren Unternehmen (KMU) Kosten und Aufwand nicht zu unterschätzen. Eine zentrale Schwäche bei selbst ausgestellten Zertifikaten ist, dass diesen eine vertrauenswürdige Instanz fehlt, welche die Echtheit einer solchen Identität nachweisen könnte. Dadurch ist die Kommunikation mit anderen Unternehmen, wie beispielsweise Wartungsdienstleistern, Zuliefererunternehmen oder anderen externen Organisationen schwer nutzbar. Typischerweise sind die folgenden Aufgaben von einem Identitäts-Management-System (IMS) zu leisten:

Erstellung: Die erstmalige Erstellung einer Identität, z.B. der Werkzeugmaschinenhersteller erzeugt ein Zertifikat mit gehashten Attributen (z.B. Maschinentyp, Baujahr, Hersteller, verbaute Komponenten, Baupläne, etc.).
Verifizierung: Die Bestätigung (mindestens) eines Attributes der erstellten Identität, um die Existenz des Identitätsdatensatzes zu bestätigen.
Authentifizierung: Überprüfung der Identität (Personen, Geräte) durch Verifizierung der Identitätsmerkmale (Benutzername/Passwort, Maschinen-Zertifikat). Ist die Identität vom System bestätigt, übernimmt die Autorisierung die eigentliche Zuteilung der Zugriffsberechtigungen.
Autorisierung: Was kann die Identität im System tun, welche Berechtigungen hat sie? Die Berechtigungen bestimmen, auf welche Ressourcen sie zugreifen kann, ihre Fähigkeit, Änderungen vorzunehmen und andere Zugangskontrollparameter.

Prinzipiell würde eine lokale PKI dies Funktionen gewährleisten. Interessant wird es bei der Zusammenarbeit von Unternehmen, die alle eine eigene PKI betreiben. Die Problematik soll an einem kleinen Beispiel verdeutlicht werden: Ein Wartungsdienstleister soll sich Remote auf eine Werkzeugmaschine eines Metallverarbeitungsunternehmens einloggen und den Fehlercode auslesen, um effizient eine Wartung (Austausch von Verschleißteilen) vor Ort durchführen zu können. Um den Fehlercode richtig interpretieren zu können, braucht er die Handbücher/Reparaturanweisungen, für den entsprechenden Maschinentyp, vom Maschinenhersteller. Damit der Zugriff auf diese gegeben werden kann, braucht der Servicetechniker ein Konto beim Metallverarbeitungsunternehmen und beim Maschinenhersteller. D.h. beide Unternehmen brauchen die Identität mit „credentials“ (Berechtigungsnachweise) des Servicetechnikers in deren PKIs (siehe Abbildung 1a).

Abbildung 1: a) jede Organisation hat ein eigenes IDM b) IDM-Föderation

Föderative Blockchain-basierte IDMs beschleunigen die Zusammenarbeit zwischen Unternehmen

Eine Verbesserung wäre eine Föderation, die das gemeinsame Nutzen von Identitäten klärt (siehe Abbildung 1b). Das Metallverarbeitungsunternehmen und der Maschinenhersteller könnten dem Identitätsmanagementsystems des Wartungsdienstleisters vertrauen und die Authentifizierung auslagern. Aus technischer Sicht kann der initiale Vorgang einer solchen Föderation nur schwer automatisiert werden, weshalb beteiligte Unternehmen diesen Schritt meist gemeinsam und manuell ausführen müssen. Bereits existierende Identitäten können in das föderierte Identitätsmanagementwerkzeug (z.B. Keycloak) mit aufgenommen und mit den jeweiligen Rechten anhand globaler Gruppenzugehörigkeiten ausgestattet werden. Da die Verwendung von Diensten, welche auf unterschiedlichen Infrastrukturen betrieben und durch verschiedene Unternehmen gepflegt werden, aus Kundensicht möglichst transparent zu gestalten ist, sind Industriestandards zur Autorisierung wie OAuth2 in einem solchen Szenario sinnvoll.

Die traditionellen Identitätsmanagementsysteme von heute sind fragmentiert, unternehmensspezifisch und proprietär. Blockchain hat eine einzigartige Kombination von Eigenschaften, die es für IDMs eignet: Es ist dezentralisiert (es wird durch den Konsens der Mehrheit der Mitglieder bzw. Unternehmen kontrolliert), und die Transaktionsaufzeichnung ist zuverlässig und unveränderlich (Append-Only). Die in der Vergangenheit aufgezeichneten Ereignisse können nicht ohne den Konsens einer Mehrheit der Blockchain-Knotenbesitzer des Netzwerks geändert werden. Zusätzlich kann man durch Smart Contracts Prozesse zwischen den Unternehmen automatisieren. Theoretisch bietet Blockchain wünschenswerte Sicherheitseigenschaften für PKIs: Transparenz und Widerruf von Zertifikaten, Eliminierung zentraler Ausfallpunkte und eine zuverlässige Transaktionsaufzeichnung. Blockchain ermöglicht es, eine einheitliche, interoperable und manipulationssichere Infrastruktur bereitzustellen, die Unternehmen, Benutzern und IoT-Verwaltungssystemen entscheidende Vorteile bietet. 

Durch den Aufbau Föderation mit einer dezentraler PKI mit Blockchain über Unternehmensgrenzen hinweg werden die durch den üblichen Einsatz von CAs geschaffenen potenziellen Ausfallpunkte beseitigt, die, wenn sie unterlaufen werden, ganze Zertifikatsketten gefährden können. Darüber hinaus bietet die Blockchain-basierte PKI als öffentliches „Append-only“-Protokoll eine Zertifikatstransparenz, um die Sicherheit der CA-basierten PKI durch öffentliche Protokollierung und Überwachung von Zertifikaten zu verbessern.

Self-Sovereign Identity gibt Identitätsdatenkontrolle an die Personen/Maschinen zurück

Wenn man bereits eine Blockchain-basierte PKI betreibt, kann man noch einen Schritt weitergehen und Self-Sovereign Identity (SSI) einführen. Mit SSI tritt an deren Stelle ein flexibles und dynamisches Ökosystem des Identitätsmanagements, das verschiedenste Anwendungsgebiete abdeckt. SSI ist das Konzept, mit dem Personen und Unternehmen ihre eigenen Identitätsdaten auf ihren eigenen Geräten speichern können; sie können wählen, welche Informationen sie an Validatoren weitergeben, ohne sich auf einen zentralen Speicher für Identitätsdaten verlassen zu müssen. Diese Identitäten könnten unabhängig von Nationalstaaten, Unternehmen oder globalen Organisationen geschaffen werden und bieten eine hohes Maß an Identitätsschutz. Basis von SSI ist die Blockchain, um Verifikationen von Identitäten (Schlüssel) und Attribute (Claims) zu verifizieren, die in sogenannten SSI-Wallets bei der jeweiligen Entität (Unternehmen, Person, Maschine, Sensor, Geräte, etc.) gespeichert werden (siehe Abbildung 2).

Abbildung 2: Self-Sovereign-Identity für Organisationen, Menschen und Geräte

Weitere Vorteile von SSI auf Basis der Blockchain sind:

  • Jeder Teilnehmer kann ein eigenes Zertifikatsschemata definieren
  • „Verifiable Credentials“ flexibel definier- und ausgestaltbar
  • Jeder kann Aussteller und Verifizierer von Attributen (Claims) sein
  • selbstverwaltetes Netzwerk: Niemand besitzt es, jeder hat Zugang
  • Decentralized Identifiers (DIDs) als World Wide Web Consortium (W3C) Standard für eindeutige Identifikatoren.

Folgendes Szenario soll die Funktionsweise von SSI verdeutlichen:

Ein Metallverarbeitungsunternehmen besitzt eine CNC-Maschine (Typ: BA 222) eines Werkzeugmaschinenherstellers. Ein Wartungsservicedienstleister wechselt üblicherweise mit Hilfe von gesammelten Maschinendaten (z.B. Spindelparameter) und Wartungshandbüchern des Herstellers Verschleißteile aus. Ein Wartungsvorhersagemodul, das der Hersteller durch den Maschinenmodellanbieter zur Verfügung stellt, signalisiert einen Wartungsbedarf.

Das SSI Management (siehe Abbildung 3) ermöglicht, dass die Maschine den Zugriff für solch einen Fall automatisch durch einen Smart Contract abbildet und automatisiert. D.h. der Servicemitarbeiter bekommt automatisch Zugriff auf die relevanten Maschinendaten, Handbücher, etc., um die richtige Wartung zu planen und durchzuführen. Jegliche Information ist durch das jeweilige Unternehmen attestierbar und kann automatisch auf Korrektheit verifiziert werden. Möglich ist auch, wie beim KI-basierten „Predictive Maintenance“ Modell, dass der Werkzeugmaschinenhersteller die Korrektheit des Modells für  die spezielle CNC-Fräsmaschine bestätigt und die Korrektheit des Modells vom Maschinenmodell-Anbieter attestiert bekommt.

Abbildung 3: SSI-Management Maschinen fokussiert

Das Managen von Personenidentitäten mit SSI hat große Vorzüge, weil jede Person den Zugriff auf seine jeweiligen Attribute selbst steuern kann. Dafür gibt es bereits eine ganze Reihe von Systemen: Sovrin, Jolocom, uPort, ShoCard, Blockstack, Name-coin, die alle ausgiebig in der Arbeit von Julian Roos diskutiert werden.

Bei den Maschinenidentitäten kann eine Föderation einer Distributed PKI ausreichen. Im Bereich der Cyber-Physical-Systems sind PKIs sehr robust und ausgereift. Bei völliger Wahlfreiheit ist es ratsam, komplett auf Blockchain-basiertes IDM zu setzen, um die Technologie und Systemvielfalt zu minimieren. Aus praktischer Sicht macht eine hybride Lösung aus bestehendem IDM und Blockchain-basiertem IDM durchaus Sinn.

Weiterführende Literatur:

  1. Julian Roos: “Identity Management on the Blockchain”;  https://www.net.in.tum.de/fileadmin/TUM/NET/NET-2018-11-1/NET-2018-11-1_14.pdf
  2. Sovrin: https://sovrin.org
  3. Jolocom: https://jolocom.com/2018-where-weve-been-so-far/
  4. uPort: https://www.uport.me/
  5. ShoCard: https://shocard.com/
  6. Blockstack: https://blockstack.org/posts/blockchain-identity
  7. Name-coin: https://namecoin.org
  8. Decentralized Identifiers (DIDs): https://www.w3.org/TR/did-core/
  9. Anwendungsfälle für SSI von bitkom: https://www.bitkom.org/sites/default/files/2020-07/200703_lf_self-sovereign-identity-use-cases.pdf
  10. Keycloak: www.keycloak.org
  11. OAuth2: https://oauth.net/2/

Prof. Dr. Christoph Reich
Hochschule Furtwangen

Leiter des Institutes für Data Science, Cloud Computing und IT-Sicherheit (IDACUS; idacus.hs-furtwangen.de)

Der Beitrag entstand im Rahmen des BMBF-Projektes KOSMoS des Forschungsprogramms „Innovationen für die Produktion, Dienstleistung und Arbeit von morgen“ in der Fördermaßnahme “Industrie 4.0 – Kollaborationen in dynamischen Wertschöpfungsnetzwerken” (lnKoWe) gefördert, FKZ 02P17D022.