“Unser Datenschutzbeauftragter sagt, wir können nicht in die Cloud.” - "Es ist zu riskant", sagt er, während er besorgt auf den Berg von Papierakten auf seinem Schreibtisch blickt. “Unsere sensiblen Daten überall anders als in unseren sicheren, physischen Räumen zu speichern, scheint undenkbar.” Doch die Konkurrenz schreitet voran, nutzt Cloud-Technologie sowie datengetriebene Analysen und erhält damit einen Vorsprung. Wir stehen vor einem Dilemma.
Aber es gibt Hoffnung am Horizont. Ein leitender Techniker bringt einen neuen, fortschrittlichen Ansatz auf den Tisch: Confidential Computing. "Stellt euch vor", beginnt er, "wir können unsere Daten in der Cloud haben, sie dort verarbeiten und all das, ohne Sicherheitsbedenken". Skeptische Blicke treffen ihn, doch er fährt zuversichtlich fort.
Der Techniker erklärt, dass mit Hilfe von Confidential Computing die Daten während der gesamten Verarbeitung geschützt werden können. Er erzählt von den Trusted Execution Environments (TEEs) und wie sie unsere wertvollsten Daten innerhalb der Prozessoren abschotten und sichern, fernab neugieriger Blicke. Der Datenschutzbeauftragte lehnt sich neugierig vor, seine Skepsis weicht langsam.
Was ist Confidential Computing?
Confidential Computing ist ein relativ junger Ansatz, um Daten während der gesamten Verarbeitung zu schützen. Während traditionelle Sicherheitslösungen sich darauf konzentrieren, Daten beim Speichern (“data at rest”) und beim Übertragen (“in transit”) zu schützen, geht Confidential Computing einen Schritt weiter, indem es auch Daten während der Verarbeitung (“in use”) schützt.
Es ermöglicht die Verschlüsselung von Daten, während sie in Verwendung sind, und stellt sicher, dass sie auch dann sicher sind, wenn sie aktiv verarbeitet werden. Dadurch wird es möglich, selbst in nicht vertrauenswürdigen Umgebungen wie öffentlichen Cloud-Plattformen zu arbeiten, ohne Datenschutz oder Compliance aufs Spiel zu setzen.
Wie funktioniert Confidential Computing?
Wie von unserem Techniker bereits angeschnitten wurde, arbeitet der Ansatz des Confidential Computings mit sogenannten Trusted Execution Environments (TEEs). Hierbei handelt es sich um spezielle Hard- oder Softwareumgebungen, die in modernen Prozessoren oder separaten Sicherheitsmodulen implementiert sind und die Ausführung von Anwendungen in einem vertrauenswürdigen und abgeschotteten Bereich ermöglichen. Dabei nutzen die TEEs verschiedene Mechanismen und Technologien:
Isolation: TEEs bieten eine sichere Umgebung zur Ausführung bestimmter Anwendungen oder Prozesse und stellen sicher, dass diese nicht von anderen Prozessen beeinflusst werden.
Vertrauenswürdige Ausführung: Innerhalb der TEEs ist sichergestellt, dass sowohl die Integrität, als auch die Vertraulichkeit der zu verarbeiteten Daten oder des ausgeführten Codes zu jeder Zeit gewährleistet sind.
Vertrauenswürdige Authentifizierung: Damit eine sichere Authentifizierung gewährleistet werden kann, werden alle Schlüssel und Zertifikate, die hierfür von den jeweiligen Nutzern, Geräten oder Anwendungen benötigt werden, innerhalb des gesicherten Bereichs gespeichert und verwaltet.
Verschlüsselung und Sicherheit: Um Informationen innerhalb des vertrauenswürdigen Bereichs zu schützen, werden verschiedene Verschlüsselungs- und Sicherheitsmechanismen angewandt.
So viel zu den theoretischen Grundlagen, doch wie wird das Technisch umgesetzt?
Die führenden Chip-Hersteller bieten verschiedene Technologien an, beispielsweise Intels Software Guard Extensions (SGX) oder ARMs Secure Memory Encryption (SME). Um es grob zusammenzufassen, wird bei besagten Technologien eine sogenannte Enklave angelegt. Sie stellt einen separaten Bereich des Arbeitsspeichers und der CPU dar, der mittels Verschlüsselung von der restlichen CPU isoliert ist und für die Verarbeitung sensibler Informationen zur Verfügung gestellt wird. Da zum einen die Ressourcen, die der Enklave zur Verfügung gestellt werden, und zum anderen die Komplexität der Entwicklung von Software innerhalb der Enklave zunehmen, wurden weitere Ansätze entwickelt. Ein Beispiel hierfür ist Intels Trust Domain Extension (TDX). Hierbei wird nicht nur ein Teil der Ressourcen separiert, sondern mittels Virtualisierung eine komplette vertrauensvolle Umgebung geschaffen, die zum einen besser skalierbar ist und zum anderen eine geringere Komplexität in der Entwicklung aufweist. Wie diese Technologie in Relation zur Confidential VM steht und in der Cloud Verwendung findet, werden wir nochmal ein wenig genauer betrachten, wenn wir auf das Thema Confidential Computing in der Cloud zu sprechen kommen.
Wie sicher kann ich sein, dass meine Daten sicher sind?
Wenn ein TEE eingerichtet wird, werden Messungen durchgeführt, um einen Hashwert zu generieren, der den derzeitigen Zustand der Umgebung widerspiegelt. Diese Messungen umfassen Informationen über den ausgeführten Code, die Konfiguration und möglicherweise weitere Hardware-Konfiguration. Danach kann das TEE ein Zertifikat vom Prozessor anfordern, das sowohl den Hash als auch den öffentlichen Schlüssel des TEE enthält. Bei der Ausstellung dieses Zertifikats verwendet der Prozessor seinen eigenen, unverwechselbaren kryptographischen Schlüssel. Um die Vertrauenswürdigkeit des Prozessors zu gewährleisten, auf dem das TEE läuft, verfügt auch dieser über ein Zertifikat, ausgestellt vom Prozessorhersteller. Der Hersteller fungiert in dieser Rolle als Zertifizierungsstelle, ähnlich wie bekannte Certificate Authorities (CAs) im Web. Mit dem ausgestellten Zertifikat kann das TEE dann bestätigen, dass nur die vorgesehene Konfiguration und Software in der sicheren Umgebung läuft und diese nicht verfälscht oder mit Malware verseucht ist. Diesen Vorgang nennt man "Remote Attestation". Basierend auf dem Zertifikat und dem eingebetteten öffentlichen Schlüssel kann anschließend eine sichere Verbindung zum TEE etabliert werden.
Confidential Computing in der Cloud?
Doch prompt meldete sich unser Datenschutzbeauftragte wieder zu Wort: "Das sind doch alte Kamellen” schimpft er - und das stimmt zum Teil auch. Seit der ersten Vorstellung um das Jahr 2014 hat sich das Konzept des Confidential Computing weiterentwickelt und ist mittlerweile in der Cloud angekommen. Statt nur bestimmte Teile einer Anwendung abzusichern, erlauben uns Confidential VMs (CVMs) nun, komplette Anwendungen oder Services in einer geschützten Umgebung zu betreiben, ohne zwischen vertraulichen und nicht-vertraulichen Bereichen unterscheiden zu müssen. Wir entwickeln unsere Anwendung also genau so, wie wir es ohne den Einsatz von Confidential Computing tun würden.
Die großen Cloud-Anbieter wie Azure, Google Cloud und AWS bieten Dienste an, die eine sichere Umgebung für die Verarbeitung sensibler Daten schaffen und diese sogar vor Zugriffen des Cloud-Anbieters selbst schützen. In der realen Welt besteht unsere Anwendung aber nicht nur aus einer Komponente oder einem Container. Unsere Anwendung kommuniziert mit der Datenbank, oder besteht aus unterschiedlichen Komponenten für das Backend und Frontend. Um also unsere gesamte Anwendungslandschaft abzusichern und zu isolieren, benötigen wir mehrere TEEs, welche mittels Remote Attestation untereinander sicherstellen müssen, dass sie sich gegenseitig vertrauen können. Je mehr Services, desto höher ist der Aufwand der Verifizierung.
Eine mögliche Lösung, die gesamte Anwendungslandschaft abzusichern, ist Constellation von der Firma Edgeless Systems. Mit Constellation können komplette Kubernetes-Cluster sicher eingerichtet werden. Die Knoten des Clusters laufen in CVMs und sind durch Verschlüsselung des Datenverkehrs und der Speicherung abgesichert. Darüber hinaus vereinfacht Constellation die Remote Attestation des gesamten Clusters durch ein einziges Zertifikat und vereinfacht so die Verifizierung.
Und was ist mit KI?
Auch bei den Bedenken vieler Unternehmen, Künstliche Intelligenz (KI) einzusetzen, geht es vor allem darum, dass sie um die Sicherheit und den Schutz sensibler Daten besorgt sind. Die Angst vor Datenlecks, unautorisierten Zugriffen und der Möglichkeit, dass die KI-Technologie missbraucht werden könnte, sind Hauptgründe für dieses Zögern. Darüber hinaus befürchten sie die rechtlichen Konsequenzen, die entstehen könnten, wenn sie nicht in der Lage sind, die strengen Datenschutzgesetze wie die DSGVO einzuhalten. Diese Faktoren tragen dazu bei, dass Unternehmen vorsichtig sind, wenn es um die Integration von KI-Systemen geht.
NVIDIAs neueste H100 GPU-Technologie greift diese Bedenken auf und bringt die uns bekannte Remote Attestation als Sicherheitsfunktion ins Spiel. Ähnlich wie bei der CPU verfügt diese GPU über einen eigenen privaten Schlüssel, der für die Erstellung eines Zertifikats für ein TEE verwendet wird. Zudem kann beim Hersteller ein Zertifikat für die GPU angefordert werden, um deren Integrität zu bestätigen und einen geschützten Kommunikationsweg zu etablieren. Dies ermöglicht das sichere Laden und Ausführen von KI-Modellen, Daten und Funktionen auf der Grafikkarte, welche dadurch zu einer geschützten Umgebung wird.
Fazit
Das Zeitalter des digitalen Wandels bringt unvermeidlich neue Risiken mit sich, insbesondere im Bereich der Datensicherheit. Der Weg in die Cloud wird oft skeptisch betrachtet, schließlich sind Bedenken rund um Datenschutz und Sicherheit nicht unbegründet. Doch es wäre ein Trugschluss, sich aus Angst vor Neuerungen gegen den technologischen Fortschritt zu entscheiden. Die vorgestellten Technologien hinter Confidential Computing und die Anwendung von Trusted Execution Environments in Verbindung mit dem Potenzial sicherer KI-Lösungen durch NVIDIAs H100 GPU zeigen, dass Lösungen existieren, um sensibles Daten wirksam zu schützen – auch in der Cloud.
Die Gewissheit, dass Daten während des gesamten Verarbeitungsprozesses durchgängig verschlüsselt und abgesichert werden können, öffnet eine Tür zu neuen Möglichkeiten. Es ermöglicht Firmen, den nächsten Schritt zu wagen, ohne dabei Kompromisse bei der Datensicherheit einzugehen. Dabei sind Initiativen wie die Entwicklung von Constellation oder die Integration von Confidential VMs Beispiele dafür, wie Innovation und Datenschutz Hand in Hand gehen können.
Dein Job bei codecentric?
Jobs
Agile Developer und Consultant (w/d/m)
Alle Standorte
Weitere Artikel in diesem Themenbereich
Entdecke spannende weiterführende Themen und lass dich von der codecentric Welt inspirieren.
Gemeinsam bessere Projekte umsetzen.
Wir helfen deinem Unternehmen.
Du stehst vor einer großen IT-Herausforderung? Wir sorgen für eine maßgeschneiderte Unterstützung. Informiere dich jetzt.
Hilf uns, noch besser zu werden.
Wir sind immer auf der Suche nach neuen Talenten. Auch für dich ist die passende Stelle dabei.
Blog-Autor*innen
Stefanie Schwilski
IT Consultant & Developer
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.
Philip Herzog
IT Consultant
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.