Google heeft een open set bibliotheken en tools gepubliceerd met de implementatie van een systeem voor volledige homomorfe encryptie, waarmee gegevens in versleutelde vorm kunnen worden verwerkt, zonder dat deze op enig moment in een open vorm verschijnen tijdens de berekeningen. De toolkit maakt het mogelijk om programma's te creƫren voor vertrouwelijke berekeningen die met gegevens kunnen werken zonder deze te ontsleutelen, inclusief het uitvoeren van wiskundige en eenvoudige stringbewerkingen op versleutelde gegevens. De code van het project is geschreven in C++ en wordt verspreid onder de Apache 2.0-licentie.
In tegenstelling tot end-to-end encryptie, biedt homomorfe encryptie naast de bescherming van gegevensoverdracht ook de mogelijkheid om gegevens te verwerken zonder deze te ontsleutelen. Volledige homomorfie houdt in dat bewerkingen van optelling en vermenigvuldiging op versleutelde gegevens kunnen worden uitgevoerd, op basis waarvan willekeurige berekeningen kunnen worden gerealiseerd. Het resultaat is een versleuteld antwoord dat vergelijkbaar zou zijn met de encryptie van het resultaat van soortgelijke bewerkingen op de oorspronkelijke gegevens.
Bij het werken met gegevens in homomorfe encryptie is het zo dat de gebruiker de gegevens versleutelt en deze voor verwerking naar een externe service stuurt zonder de sleutels prijs te geven. Deze service voert de opgegeven berekeningen uit en genereert een versleuteld resultaat, zonder in staat te zijn te bepalen met welke gegevens hij precies werkt. De gebruiker ontsleutelt de verstrekte gegevens met zijn sleutels en ontvangt het resultaat in open vorm.

Toepassingsgebieden van homomorfe encryptie omvatten het creƫren van cloudservices voor vertrouwelijke berekeningen, de implementatie van systemen voor elektronische stemprocedures, het maken van geanonimiseerde routeringsprotocollen, het verwerken van verzoeken op versleutelde gegevens in databases, en het vertrouwelijk trainen van machine learning-systemen.
Bijvoorbeeld, homomorfe encryptie kan nuttig zijn in medische toepassingen, waarbij vertrouwelijke informatie van patiƫnten in versleutelde vorm kan worden verkregen en zorgverleners in staat stelt om analytics uit te voeren en afwijkingen te identificeren zonder decryptie. Homomorfe encryptie kan ook helpen bij het uitvoeren van onderzoeken die de relatie tussen ziektes en specifieke genetische mutaties bestuderen, waarbij analyse van duizenden monsters genetische informatie nodig is.
Een kenmerk van de gepubliceerde toolkit is de mogelijkheid om programma's te maken voor de verwerking van versleutelde gegevens, waarbij gebruik wordt gemaakt van gangbare ontwikkelingsmethoden in de programmeertaal C++. Met de meegeleverde transpiler wordt een C++-programma omgezet in een speciale dialect FHE-C++, dat kan werken met versleutelde gegevens.

Bron: opennet.ru
