Blockchain und Cybersicherheit
Seit Einführung des Bitcoins vor über zehn Jahren haben sich inzwischen zahlreiche blockchain-basierte Anwendungsfälle entwickelt. So lassen sich durch die Integration von Smart Contracts automatisch gesteuerte Transaktionen auf der Blockchain abbilden, beispielsweise sehr interessant für Versicherungen, da die Abwicklung von Schadensfällen durch intelligente Scripte komplett automatisiert erfolgen kann. Auch können Lieferketten vom Ursprungsort bis zum Ziel transparent zurückverfolgt werden und es ist inzwischen möglich, digitale Objekte in Form eines nicht fungiblen Tokens (NFT) einem Besitzer eindeutig zuzuordnen, öffentlich nachvollziehbar auf der Blockchain. Die Blockchain-Technologie eröffnet viele Möglichkeiten. Eignen sich die elementaren technischen Eigenschaften einer Blockchain jedoch auch dazu, IT-Infrastrukturen widerstandsfähiger gegenüber Hackerangriffen zu machen?
Cybergeführte Angriffe erlangen eine höher werdende Relevanz. Die Angriffe werden immer raffinierter und komplexer, so dass es sowohl für private, als auch für staatliche Organisationen unausweichlich ist, mit den ständig wachsenden Bedrohungen Schritt zu halten.
Die Informationssicherheit setzt sich aus drei grundlegenden Schutzzielen zusammen – Vertraulichkeit, Integrität und Verfügbarkeit. Werden die Schutzziele erfüllt, lassen sich Aussagen über den Reifegrad einer IT-Infrastruktur treffen. Im Folgenden wird erläutert, ob die technischen Prinzipien einer Blockchain einen Beitrag leisten können, um die drei Schutzziele sicherzustellen.
Schutzziel: Vertraulichkeit
Blockchain-Anwenderkonten sind nicht durch einen Benutzernamen und ein Passwort, sondern mittels asymmetrischer Kryptografie gesichert. Der private Schlüssel dient hierbei als Grundlage zur Identifikation von Anwendern und zum Schutz des Eigentums. Der öffentliche Schlüssel fungiert hierbei als Zieladresse, welche für eine Transaktion angegeben werden muss. Nach derzeitigem Stand der Technik gelten aktuelle Public Key-Verschlüsselungsverfahren als sicher und es ist nicht möglich, aus einem öffentlichen Schlüssel den zugehörigen privaten Schlüssel abzuleiten. Ein hohes Sicherheitsrisiko stellt jedoch der private Schlüssel insofern dar, als das sich bei einer unbefugten Kenntnisnahme des Schlüssels ein Nutzerkonto komplett kompromittieren lässt.
Je nach Anwendungszweck ist für eine adäquate Gewährleistung der Vertraulichkeit jedoch noch ein gesonderter Schutz des Blockchain-Netzwerks mittels etablierter Sicherheitsmaßnahmen (Firewalls, Intrusion Detection und Prevention Systeme, Authentifizierungs- und Autorisierungskontrollen etc.) unerlässlich und von grundlegender Bedeutung. Eine Verschlüsselung der Blockdaten mittels sicherer Verfahren trägt mitunter zu einem weiteren Schutz bei.
Bei richtiger Handhabung ist der Accountzugriff durch den private Key gut gesichert. Ein adäquater Schutz des privaten Schlüssels ist jedoch eine unabdingbare Voraussetzung. Das Blockchain-Netzwerk sollte jedoch des Weiteren mittels adäquater Maßnahmen abgesichert werden. Eine Zusatzverschlüsselung der Blockdaten kann sinnvoll sein.
Schutzziel: Integrität
Eine Blockchain ist ein Transaktionsregister. Transaktionen werden in Blöcken unveränderbar gespeichert. Ist das Speicherlimit eines Blocks erreicht, wird ein neuer Block erzeugt und mit dem bevorstehenden Block verknüpft. Es lassen sich nur Datensätze hinzufügen, jedoch nicht rückwirkend ändern oder löschen. Entsprechende Validierungsverfahren stellen sicher, dass nur zulässige Datensätze akzeptiert werden.
Durch die technische Beschaffenheit einer Blockchain ist die Integrität der Daten sichergestellt. Das Verändern eines Datensatzes hätte sofort zur Folge, dass die komplette verkettete Datenstruktur inkonsistent wird.
Schutzziel: Verfügbarkeit
Bei einem Denial of Service (DoS) – Angriff wird ein Server mit einer Vielzahl von Anfragen überlastet, was mitunter zu einem Ausfall des kompletten Systems führt. Verstärkt werden kann die Anfragelast durch Distributed Denial of Service (DDoS) – Angriffe. Hier erfolgt der Angriff konzentrierter von mehreren Rechnern, die zu sog. Bot-Netzten zusammengeschlossen sind.
Datensätze einer Blockchain werden nicht zentral auf einem Server, sondern dezentral auf verschiedenen Rechnern (Nodes) vorgehalten. Alles Nodes sind miteinander synchronisiert. Der Ausfall eines Nodes hat keine Konsequenzen, da die Daten redundant auf mehreren Knotenpunkten gespeichert werden.
Fazit:
Die Vertraulichkeit der Nutzeraccounts einer Blockchain ist mittels Public Key Kryptografie sichergestellt. Jeder Anwender ist jedoch eigenständig dafür verantwortlich, den privaten Schlüssel an einem sicheren Ort aufzubewahren. Ein Verlust hat mitunter verheerende Konsequenzen.
Durch die technische Beschaffenheit einer Blockchain ist gewährleistet, dass die Datensätze in einer Transaktionshistorie unwiderruflich gespeichert werden. Je nach Anwendungszweck kann des Weiteren eine vollständige Blockverschlüsselung sinnvoll sein.
Da die Datensätze auf mehreren Knotenpunkten dezentral gespeichert werden, gibt es keinen Single Point of Failure. Der Ausfall eines Rechners kann durch die Verfügbarkeit weiterer Nodes kompensiert werden.
Die beschriebenen Grundkonzepte der Blockchain-Technologie lassen sich sicherlich gut aufgreifen, um eine IT-Infrastruktur widerstandsfähiger vor Angriffen zu machen, jedoch lediglich im Zusammenspiel mit etablierten Mechanismen und Verfahren der IT-Sicherheit. Des Weiteren ist es mitunter eine Herausforderung, eine Blockchain in eine bestehende IT-Infrastruktur zu integrieren, insbesondere bei komplexen IT-Landschaften oder Legacy-Systemen. Zudem ist die Kapazität der Blöcke je nach verwendeter Blockchain begrenzt und die Transaktionsraten langsam. Durch die Integration von Smart Contracts entstehen des Weiteren möglicherweise weitere Angriffsvektoren.