Besuchen Sie Keyfactor auf der RSA Conference™ 2024 | 6. bis 9. Mai | Erfahren Sie mehr

Was ist homomorphe Verschlüsselung, und warum ist sie nicht weit verbreitet?

Trends in der Industrie

Homomorphe Verschlüsselungsalgorithmen sind eine Art von Verschlüsselungsalgorithmus, der die Durchführung mathematischer Operationen an verschlüsselten Daten ermöglicht. Dies ist eine äußerst nützliche Eigenschaft mit einer Reihe von Anwendungen.

Einführung in die homomorphe Verschlüsselung

Daten können sich in einem von drei Zuständen befinden: im Ruhezustand, bei der Übertragung und bei der Verwendung. Die meisten Verschlüsselungen beziehen sich auf die ersten beiden Zustände. Der Grund dafür ist, dass sich Daten im Ruhezustand oder bei der Übertragung nicht aktiv verändern. Wenn sie entschlüsselt werden, haben sie denselben Wert wie zum Zeitpunkt ihrer Verschlüsselung.

Verwendete Daten hingegen haben diese Eigenschaft nicht. Fast alle mathematischen Operationen an Chiffretexten würden den Wert des entsprechenden Klartextes ändern. Es ist schwierig sicherzustellen, dass sich der Klartext in der "richtigen Weise" ändert.

Verschlüsselungsalgorithmen sind so konzipiert, dass sie alle Beziehungen zwischen dem Klartext und dem entsprechenden Chiffretext zerstören. Ein guter Verschlüsselungsalgorithmus erzeugt einen Chiffretext, der von einer Zufallszahl nicht zu unterscheiden ist. Die einzige Möglichkeit, herauszufinden, welcher Klartext einem bestimmten Chiffretext entspricht, besteht darin, ihn mit dem richtigen Schlüssel zu entschlüsseln.

Die Möglichkeit, mathematische Operationen mit verschlüsselten Daten durchzuführen, bedeutet, dass es eine Beziehung zwischen Klartexten und Geheimtexten geben muss. Es muss möglich sein, zwei Chiffretexte zu addieren oder zu multiplizieren, und das Ergebnis muss dasselbe sein wie die Durchführung der gleichen Operation an den beiden Klartexten und deren anschließende Verschlüsselung.

Gleichzeitig muss diese Beziehung so implementiert werden, dass sie für einen Beobachter unsichtbar ist. Wenn die Beobachtung mathematischer Operationen an Chiffretexten Informationen über die entsprechenden Klartexte offenbart, ist die Verschlüsselung gebrochen.

Es ist wirklich schwierig, diese beiden Ziele - starke Verschlüsselung und die Möglichkeit, mathematische Operationen an Chiffretexten durchzuführen und die richtige Antwort zu erhalten - zu erreichen. Homomorphe Verschlüsselungsalgorithmen sind diejenigen, die dieses Ziel erreicht haben.

Anwendungen der homomorphen Verschlüsselung

Die homomorphe Verschlüsselung ist von großer Bedeutung, weil sie es ermöglicht, Berechnungen mit verschlüsselten Daten durchzuführen. Das bedeutet, dass die Datenverarbeitung an einen Dritten ausgelagert werden kann, ohne dass dieser darauf vertrauen muss, dass die Daten ordnungsgemäß gesichert sind. Ohne den richtigen Entschlüsselungsschlüssel kann auf die Originaldaten nicht zugegriffen werden.

Diese Fähigkeit, verschlüsselte Daten zu verarbeiten, hat das Potenzial, viele große geschäftliche Herausforderungen zu lösen, mit denen Unternehmen in allen Branchen konfrontiert sind.

Sicherheit der Lieferkette

Die meisten Unternehmen haben vertrauenswürdige Drittparteien, auf die sie sich im Rahmen ihrer Geschäftstätigkeit verlassen. Diese Auftragnehmer, Lieferanten usw. benötigen oft Zugang zu den sensiblen und geschützten Daten des Unternehmens, um ihre Arbeit zu erledigen.

Die jüngsten Ereignisse haben gezeigt, welche Risiken unsichere Lieferketten bergen und wie Cyberkriminelle das schwächste Glied in der Kette ins Visier nehmen, um ihre Ziele zu erreichen. Das bedeutet, dass ein Unternehmen, das sensible Daten einem Partner anvertraut, möglicherweise einer teuren und schädlichen Datenpanne ausgesetzt ist.

Homomorphe Verschlüsselung kann einem Unternehmen helfen, sich gegen diese Risiken in der Lieferkette zu schützen. Wenn alle Daten, die an vertrauenswürdige Dritte zur Verarbeitung weitergegeben werden, verschlüsselt sind, stellt eine Verletzung dieser Daten kein Risiko für das Unternehmen dar. Auf diese Weise kann ein Unternehmen die Verarbeitung kritischer Daten mit minimalem Risiko auslagern.

Einhaltung von Vorschriften

In den letzten Jahren ist das Regelungsumfeld für den Datenschutz immer komplexer geworden. Neue Vorschriften wie die EU-Datenschutzverordnung(GDPR) haben den betroffenen Personen neue Rechte eingeräumt und den Unternehmen zusätzliche Pflichten und Einschränkungen auferlegt.

Eine GDPR-Vorschrift, mit der viele Unternehmen zu kämpfen haben, ist die Anforderung, dass die Daten von EU-Bürgern in der EU oder in Ländern oder Unternehmen mit gleichwertigen Datensicherheitsstandards verbleiben. Mit der Schrems-II-Entscheidung im Jahr 2020 wurde eine der wichtigsten Begründungen für den Datenverkehr zwischen der EU und den USA im Rahmen der DSGVO für ungültig erklärt, was für viele US-Unternehmen mit EU-Bürgern zu Problemen führte.

In Gesetzen wie der Datenschutz-Grundverordnung ist eindeutig festgelegt, dass ihre Anforderungen nicht für verschlüsselte Daten gelten. Mit homomorpher Verschlüsselung könnte ein Unternehmen möglicherweise Daten auf Systemen außerhalb der EU speichern und verarbeiten und sie dann nur auf Servern an Standorten entschlüsseln, die die Anforderungen der DSGVO erfüllen.

Private Datenanalyse

Mit der Datenanalyse verdienen viele Unternehmen ihr Geld. Unternehmen wie Facebook sind in der Lage, "kostenlose" Dienste anzubieten, indem sie Informationen über ihre Nutzer sammeln, sie verarbeiten und diese Informationen an Dritte für gezielte Werbung verkaufen.

Diese Monetarisierung persönlicher Daten ist jedoch umstritten. Viele Menschen sind unzufrieden damit, dass Unternehmen ausführliche Profile über sie erstellen, ohne dass sie Einblick in die gesammelten Daten und deren Verwendung haben.

Die homomorphe Verschlüsselung bietet eine mögliche Lösung für dieses Problem. Mit homomorpher Verschlüsselung könnte ein Unternehmen wie Facebook die von ihm benötigten Datenanalysen durchführen, ohne die Originaldaten einsehen oder darauf zugreifen zu können. Wenn die Verschlüsselungsschlüssel von den Nutzern kontrolliert werden, bietet dies das Potenzial für private, gezielte Werbung.

Arten der homomorphen Verschlüsselung

Das Ziel der homomorphen Verschlüsselung ist es, einen Verschlüsselungsalgorithmus zu schaffen, der eine unendliche Anzahl von Additionen oder Multiplikationen verschlüsselter Daten erlaubt. Am Ende des Prozesses sollte das Ergebnis der Chiffretext sein, der entstehen würde, wenn die gleichen Operationen mit den entsprechenden Klartexten durchgeführt und das Ergebnis verschlüsselt würde.

Das Problem ist, dass die Entwicklung eines solchen Verschlüsselungsalgorithmus sehr schwierig ist. Daher gibt es einige verschiedene "Typen" homomorpher Verschlüsselung, die beschreiben, wie nahe ein bestimmter Algorithmus diesem Ziel ist.

Teilweise homomorphe Verschlüsselung

Bei teilweise homomorphen Verschlüsselungsalgorithmen kann eine bestimmte Operation unendlich oft durchgeführt werden. So kann ein bestimmter Algorithmus beispielsweise additiv homomorph sein, was bedeutet, dass die Addition zweier Chiffretexte das gleiche Ergebnis liefert wie die Verschlüsselung der Summe der beiden Klartexte.

Teilweise homomorphe Verschlüsselungsalgorithmen sind relativ einfach zu entwerfen. Tatsächlich sind einige gängige Verschlüsselungsalgorithmen zufällig teilweise homomorph.

Der RSA-Algorithmus ist zum Beispiel multiplikativ homomorph. Der Grund dafür ist, dass die Verschlüsselung bei RSA auf der Potenzierung beruht: C = (m^x) (mod n), wobei m für die Nachricht und x für den geheimen Schlüssel steht.

Die Regeln der Exponenten besagen, dass (a^n)(b^n)=(ab)^n. Das bedeutet, dass die Multiplikation zweier mit demselben Schlüssel verschlüsselter Chiffretexte gleichbedeutend ist mit der Erhöhung des Produkts der Klartexte zur Potenz des geheimen Schlüssels. Daher ist RSA multiplikativ homomorph.

Gewöhnlich homomorphe Verschlüsselung

Die nächste Stufe nach der teilweise homomorphen Verschlüsselung ist die etwas homomorphe Verschlüsselung. Ein einigermaßen homomorpher Verschlüsselungsalgorithmus erlaubt eine endliche Anzahl beliebiger Operationen und nicht eine unendliche Anzahl einer bestimmten Operation.

Ein einigermaßen homomorpher Verschlüsselungsalgorithmus kann zum Beispiel jede Kombination von bis zu fünf Additionen oder Multiplikationen unterstützen. Eine sechste Operation eines der beiden Typen würde jedoch ein ungültiges Ergebnis erzeugen.

Einigermaßen homomorphe Verschlüsselungsalgorithmen sind ein wichtiges Sprungbrett auf dem Weg zur vollständig homomorphen Verschlüsselung. Es ist schwieriger, einen Algorithmus zu entwickeln, der sowohl die Addition als auch die Multiplikation unterstützt (selbst für eine bestimmte Anzahl von Operationen), als einen Algorithmus zu schaffen, der eine unendliche Addition oder Multiplikation von Chiffretexten ermöglicht.

Vollständig homomorphe Verschlüsselung

Vollständig homomorphe Verschlüsselung ist der heilige Gral der homomorphen Verschlüsselung. Ein vollständig homomorpher Verschlüsselungsalgorithmus erlaubt eine unendliche Anzahl von Additionen oder Multiplikationen von Chiffretexten und liefert dennoch ein gültiges Ergebnis.

Heute gibt es vollständig homomorphe Verschlüsselungsalgorithmen. Tatsächlich wurde der erste vollständig homomorphe Verschlüsselungsalgorithmus wurde im Jahr 2009 von Craig Gentry erfunden. Seitdem sind weitere Algorithmen entwickelt worden, die diesen ursprünglichen Algorithmus verbessern.

Was hindert die homomorphe Verschlüsselung?

Die vollständig homomorphe Verschlüsselung kann eine Reihe von wichtigen geschäftlichen Herausforderungen lösen. Die Tatsache, dass es sie gibt, bedeutet, dass sie theoretisch von allen genutzt werden sollte. 

Warum sind sie es dann nicht?

Das Problem bei der heutigen vollständig homomorphen Verschlüsselung ist, dass sie nicht effizient ist. Die Erfüllung der Anforderungen der vollständigen Homomorphie (d. h. die Möglichkeit, Chiffretexte unendlich oft zu addieren oder zu multiplizieren, ohne das Ergebnis zu verfälschen) bedeutet, dass diese Algorithmen langsam sind und einen sehr hohen Speicherbedarf haben können.

IBM hat zum Beispiel 2018 eine verbesserte Version seiner HElib C++-Bibliothek für homomorphe Verschlüsselung veröffentlicht. Diese Version ist 25-75 Mal schneller als die Vorgängerversiondie 2 Millionen Mal schneller war als die ursprüngliche Version, die drei Jahre zuvor veröffentlicht wurde.

Das Problem besteht darin, dass die ursprüngliche Version mathematische Operationen etwa 100 Billionen Mal langsamer durchführte als dieselben Operationen mit den entsprechenden Klartexten. Das bedeutet, dass die neue und verbesserte Version im Durchschnitt immer noch etwa eine Million Mal langsamer ist als Klartextoperationen.

Eine Verlangsamung um den Faktor 1 Million ist ziemlich signifikant. Eine Berechnung, die mit Klartext eine Sekunde dauern würde, würde mit der 2018er Version von HElib durchschnittlich 11,5 Tage in Anspruch nehmen.

Natürlich ist diese Art der Verlangsamung ein inakzeptabler Kompromiss für Unternehmen, die ansonsten an homomorpher Verschlüsselung interessiert wären. Eine Beschleunigung um das 100-Millionenfache in 3 Jahren ist jedoch ziemlich beeindruckend. Auch wenn die homomorphe Verschlüsselung heute noch keine praktikable Option ist, könnte sich das in naher Zukunft ändern.