
IBM hat den Quellcode für das FHE-Toolkit für Linux auf GitHub veröffentlicht . Die Dienstprogramme laufen auf IBM Z- und x86-Plattformen und werden von Ubuntu, Fedora und CentOS unterstützt.
Die vollständig homomorphe Verschlüsselung (FHE) gilt seit langem als heiliger Gral in der Kryptographie. Die Aufgabe schien wirklich unrealistisch. Der FHE-Verschlüsselungstyp umfasst die Manipulation verschlüsselter Daten durch einen Dritten, ohne die Möglichkeit, die Daten selbst oder das Ergebnis der Manipulation zu entschlüsseln .
Wie ist das möglich?
Stellen Sie sich als einfaches Beispiel vor, Sie haben eine Reihe von E-Mails und möchten mithilfe eines Spamfilters eines Drittanbieters prüfen, ob es sich um Spam handelt. Der Spamfilter funktioniert auf dem Server, weil der Entwickler versucht, seinen Algorithmus vertraulich zu behandeln: Entweder verbirgt er den Quellcode, oder der Spamfilter hängt von einer sehr großen Datenbank ab, die er nicht öffentlich bekannt geben möchte, da dies den Angriff erleichtert oder beides andere. Es spielt keine Rolle, Hauptsache, der Spam-Filter funktioniert sowieso auf dem Server - und Sie können ihn nicht alleine ausführen. Was tun in einer solchen Situation? Sie achten auch auf die Vertraulichkeit Ihrer Daten und möchten den Inhalt von E-Mails nicht in offener, unverschlüsselter Form an Dritte übertragen. Hier kommt die vollständig homomorphe Verschlüsselung zum Einsatz:

Somit hält der Dienst den Algorithmus geheim und Sie halten Ihre Daten geheim. Mit FHE können Sie den Algorithmus jedoch erfolgreich auf diese Daten anwenden, sodass keine Seite die Geheimnisse der anderen Seite lernt.
Die vollständig homomorphe Verschlüsselung hat viele Verwendungszwecke, einschließlich in der Blockchain, in der der Server verschlüsselte Clientdaten manipulieren kann, ohne den Inhalt der Informationen preiszugeben. Das heißt, der Server kann die Anforderungen des Clients erfüllen, ohne zu wissen, was er angefordert hat .
Andere Anwendungen für die homomorphe Verschlüsselung:
- Bessere Protokolle für versteckte Adressen und allgemeinere Skalierbarkeitslösungen für Datenschutzprotokolle, bei denen heute jeder Benutzer die gesamte Blockchain persönlich nach eingehenden Transaktionen durchsuchen muss.
- , , .
- , ( , , , ).
Im Allgemeinen gibt es verschiedene Arten der homomorphen Verschlüsselung, von denen einige leistungsfähiger sind als andere. Sie unterscheiden sich darin, welche Vorgänge mit verschlüsselten Daten ausgeführt werden können.
Teilweise homomorphe Verschlüsselung ermöglicht es Ihnen, nur eine Operation mit verschlüsselten Daten durchzuführen. Entweder Addition oder Multiplikation.
Teilweise homomorphe Verschlüsselung (etwas homomorph) funktioniert nur bei einem begrenzten Datensatz.
Schließlich ermöglicht die vollständig homomorphe Verschlüsselung unbegrenzte Additions- und Multiplikationsoperationen für jeden Datensatz.
Das Implementieren einer partiellen homomorphen Verschlüsselung ist ziemlich einfach: Beispielsweise wird die Multiplikation in RSA implementiert:
, , damit
Elliptische Kurven bieten eine ähnliche Faltoption. Es ist jedoch viel schwieriger, sowohl Addition als auch Multiplikation gleichzeitig zu implementieren . Die Suche nach einem solchen Schema wurde seit 1978 fortgesetzt, als Rivest, Adleman und Dertuzos das Problem formulierten und den Begriff "homomorphe Verschlüsselung" prägten. Seit 30 Jahren ist die Existenz vollständig homomorpher Systeme nicht mehr nachgewiesen worden, und Rivest selbst entschied, dass die Idee nicht umgesetzt werden musste.
Ein großer Durchbruch gelang erst 2009 nach der Veröffentlichung der Doktorarbeit des Stanford-Doktoranden Craig Gentry. Er beschrieb einen möglichen Aufbau eines vollständig homomorphen Kryptosystems auf idealen Gittern . In seiner Dissertation schlug er auch eine innovative Bootstrapping- Idee vor.... Dieser Trick verwandelt das partielle FHE-Schema in ein vollständig homomorphes Verschlüsselungsschema. Die Bootstrapping-Methode ist in der folgenden Abbildung dargestellt. Kurz gesagt, hier werden die Bits des privaten Schlüssels mit dem öffentlichen Schlüssel in einem homomorphen Schema verschlüsselt und als "Booster-Schlüssel" veröffentlicht, der die Durchführung einer homomorphen Verschlüsselung des neu verschlüsselten Chiffretextes ermöglicht, bei dem das Rauschen auf die ursprüngliche Größe reduziert wird. Das heißt, wir "aktualisieren" den Chiffretext, als ob der Fehler des alten Schlüssels gelöscht würde.

Einfach ausgedrückt ist die Entschlüsselungsprozedur selbst eine Berechnung, daher kann sie als homomorphes Schema implementiert werden, das Chiffretextbits und Bits eines geheimen Schlüssels als Eingabe akzeptiert.
Das kryptografische Schema von Gentry war ein großer Durchbruch, führte jedoch einen neuen Fehler ein, der unabhängig von der Fehlermenge in der ursprünglichen Verschlüsselung war. Der Autor selbst beschrieb eine komplexe Lösung des Problems, aber das 2011 vorgeschlagene verbesserte Schema von Brakerski und Vaikuntanatan (das Schema hieß BGV (Brakerski-Gentry-Vaikuntanatan)) wurde erfolgreicher . 2013 veröffentlichte IBM eine kostenlose kryptografische Bibliothek HELib mit Unterstützung für homomorphe Verschlüsselungs- und BGV-Schemata Im Januar 2020 wurde die HELib- Version 1.0.0 veröffentlicht .
2013 gab sich Gentry erneut bekannt. Mit den Co-Autoren Sahai und Waters wurde ein vollständig homomorphes Verschlüsselungsschema der dritten Generation vorgestellt - das GSW-Schema (Gentry, Sahai, Waters), das wiederum Gitterkryptographie und Boostrapping verwendet.
Im Laufe der Jahre der Entwicklung wurde auf der Grundlage von HELib ein vollwertiger Satz von Tools mit integrierten Beispielen für IDEs erstellt, die sofort einsatzbereit sind.
IBM hat zuvor vollständige homomorphe Verschlüsselungstools für MacOS und iOS veröffentlicht . In Zukunft verspricht er, den Quellcode der Version für Android zu veröffentlichen.
Die Linux-Version wurde eher zu Demonstrationszwecken veröffentlicht und arbeitet mit einer Datenbank mit europäischen Ländern und ihren Hauptstädten (das zweite Beispiel für die Finanzindustrie ist die Betrugserkennung durch ein neuronales Netzwerk, das auf einer verschlüsselten Basis anonymer Transaktionen basiert). Bisher ist es nicht zur praktischen Anwendung der homomorphen Verschlüsselung gekommen. Nach demGentry selbst im Jahr 2009 würde beispielsweise die Verarbeitung einer Suchanfrage in Google für den Fall, dass der Text verschlüsselt ist, etwa eine Billion Mal mehr Berechnungen erfordern. Trotzdem haben Optimierungen von IBM die Leistung der Bibliothek erheblich verbessert, so dass sie in einigen Jahren oder Jahrzehnten möglicherweise in Webanwendungen weit verbreitet ist. Laut IBM kann die Bibliothek jetzt auf IBM Z-Mainframes ausgeführt werden.