Homorfische encryptie definitie
Wat doe je als je berekeningen moet uitvoeren op grote datasets en tegelijkertijd de vertrouwelijkheid ervan moet bewaren? Met andere woorden, u wilt analyses uitvoeren, bijvoorbeeld op gebruikersgegevens, zonder de inhoud te onthullen aan de rekenmachine die de analyses gaat berekenen. Of u bent een cloud-dienstverlener die versleutelde opslag van documenten ondersteunt, maar uw gebruikers in staat wil stellen hun documenten te bewerken zonder ze eerst te ontsleutelen.
Dit is waar homomorfe encryptie u te hulp zou kunnen schieten. Homomorfe encryptie biedt de mogelijkheid om de opslag en berekening van gegevens “uit te besteden” aan cloud-omgevingen door de gegevens eerst in een versleutelde vorm om te zetten.
Wat opmerkelijk is aan deze techniek, is dat u dezelfde resultaten bereikt (in versleutelde vorm) door de gewenste bewerkingen en berekeningen op de versleutelde gegevens uit te voeren als u zou hebben gedaan door dezelfde bewerkingen op de niet-versleutelde vorm ervan uit te voeren.
“Homomorfe versleuteling verschilt van typische versleutelingsmethoden in die zin dat hiermee rechtstreeks berekeningen kunnen worden uitgevoerd op versleutelde gegevens zonder dat daarvoor toegang tot een geheime sleutel nodig is. Het resultaat van een dergelijke berekening blijft in versleutelde vorm, en kan op een later tijdstip worden onthuld door de eigenaar van de geheime sleutel,” aldus Homomorphic Encryption Standardization, het consortium van industrienormen dat de “officiële” normen, richtsnoeren en informatie over ontwikkelingen op dit gebied bijhoudt. Hierdoor kunnen dezelfde oplossingen voor rekenkundige analyse worden gebruikt zonder dat de vertrouwelijkheid van de gegevens in enig stadium in gevaar komt.
Het idee om dergelijke cipher suites te ontwerpen was grotendeels experimenteel en werd aan het eind van de jaren zeventig voorgesteld. Het duurde drie decennia voordat een eerste praktisch concept werd bedacht in 2009, door Craig Gentry.
Wat is er anders aan homomorfe encryptie
Wanneer je denkt aan cryptografie in een industriestandaardcontext, zoals HTTPS (mogelijk gemaakt door SSL/TLS) of end-to-end chatberichten, ga je ervan uit dat alle cryptografie inherent veilig is en vertrouwelijkheid en integriteit garandeert. Dit is een groot verschil dat homomorfe encryptie onderscheidt van typische cryptosystemen.
Om homomorfe encryptie te laten werken, zijn de cipher suites ontworpen om kneedbaar te zijn, wat betekent dat ze de integriteit van gegevens niet kunnen garanderen. Dit is geen fout, maar een bedoelde eigenschap die het gemakkelijker maakt om gecodeerde gegevens te bewerken.
Malleerbaarheid is een eigenschap van cryptografische algoritmen die het mogelijk maken een gecodeerde tekst om te zetten in een andere geldige gecodeerde tekst die de betekenis van de oorspronkelijke tekst verandert. Bovendien zou de gebruiker die de gegevens transformeert niet eens hoeven te weten of af te leiden wat de oorspronkelijke onversleutelde gegevens waren.
Simpel gezegd, als ik een versleutelde e-mail naar de redacteur van CSO zou sturen met de tekst: “CSO is geweldig,” zou een man-in-the-middle (MitM) aanvaller die deze versleutelde tekst kan stelen maar niet weet wat deze betekent, deze mogelijk kunnen transformeren in een andere versleutelde string, die wanneer de redacteur deze ontcijfert, luidt: “Ik haat CSO!”
Natuurlijk hebben praktische e-mailencryptosystemen tegenmaatregelen om de integriteit van de gegevens te beschermen en dit scenario vrijwel onmogelijk te maken, mits er geen kwetsbaarheden in de algoritmen of hun implementatie zitten.
Het RSA-cryptosysteem, dat gedeeltelijk homomorf is, gebruikt bijvoorbeeld een zogenaamde “padding”-functie om de impact van manipuleerbaarheid te minimaliseren. Verder helpen checksums voor de authenticatie van berichten (b.v. MD5 of SHA hashes) de integriteit van gegevens te valideren.
Dit is niet zozeer een reden tot zorg, omdat de vertrouwelijkheid van gegevens niet wordt beïnvloed door manipuleerbaarheid. De bezorgdheid ontstaat wanneer, bijvoorbeeld, de rekenmachine die met gecodeerde gegevens werkt, een fout in de gegevens of het gecodeerde resultaat aanbrengt als gevolg van een gebrekkig algoritme. De aard van homomorfe encryptie zou het bijzonder moeilijk kunnen maken deze fouten te ontdekken.
Types van homomorfe encryptie
Alle gegevens zijn getallen (computers werken binair). Cryptografie, een wiskundige tak, werkt direct met getallen. Dit betekent dat encryptie en decryptie niets anders zijn dan een complex spel van bewerkingen op getallen.
Er zijn drie soorten homomorfe encryptie:
- Gedeeltelijk homomorfe encryptie (PHE) maakt slechts één type wiskundige bewerking (zoals vermenigvuldiging) op een gegeven gegevensverzameling voor een onbeperkt aantal keren mogelijk.
- Enigszins homomorfe versleuteling (SHE) is meer toegeeflijk, maar nog steeds restrictief, en staat zowel optellen als vermenigvuldigen slechts een paar keer toe op een gegeven gegevensverzameling.
- Volledig homomorfe encryptie (FHE) is het beste van alle werelden en staat onbeperkt verschillende soorten bewerkingen op gegevens toe, maar gaat wel ten koste van de prestaties.
Elke benadering is gericht op prestaties, nut of bescherming, waarbij FHE zeer intensief en momenteel inefficiënt is (en dus in de praktijk slecht presteert).
De huidige ontwikkelingen op het gebied van homomorfische encryptie zijn een voortdurende afweging tussen de drie om tot een optimale oplossing te komen. Eenmaal ontsloten zal het potentieel van FHE baanbrekende mogelijkheden bieden, zoals de mogelijkheid voor een cloudoperator om verschillende wiskundige bewerkingen uit te voeren op versleutelde gegevens.
Homorfe encryptie use cases
Gereguleerde en privacy-centrische sectoren
Het opslaan van gegevens en persoonlijk identificeerbare informatie (PII) in sterk gereguleerde sectoren zoals gezondheidszorg, financiën, recht en bankwezen is een uitdaging. Versleutelde opslag is een beveiligingsmaatregel die dergelijke sectoren implementeren, maar een verdere uitdaging ontstaat wanneer ze de gebruikersgegevens eerst moeten ontsleutelen om er inzichten uit af te leiden.
Zo kan het afleiden van voorspellende analyses, waarbij machine-leren wordt gebruikt, uit patiëntendossiers artsen helpen bij het identificeren van genezingen voor ziekten. Met homomorfe encryptie zou de noodzaak om patiëntendossiers eerst te ontsleutelen wegvallen. De analytische algoritmen zouden op maat kunnen worden gemaakt om op gecodeerde patiëntgegevens te werken en ook in gecodeerde vorm resultaten opleveren. De ontsleutelde resultaten zouden dezelfde inzichten opleveren als de niet-ontsleutelde patiëntendossiers.
Dit toepassingsgebied strekt zich ook uit tot online reclame. Nu wetgeving als GDPR steeds meer beperkingen oplegt, is het een uitdaging om gepersonaliseerde advertenties aan te bieden en tegelijkertijd de privacy van gebruikers te beschermen. Met homomorfe versleuteling kunt u analyses en inzichten uit versleutelde gebruikersgegevens afleiden zonder de vertrouwelijkheid van gebruikersgegevens in gevaar te brengen.
Outsourced cloud storage
Outsourcing van gegevensopslag kan een kosteneffectieve strategie zijn als het gaat om het verlagen van personeelskosten en het elimineren van hoofdpijn die gepaard gaat met het onderhoud van een volwaardig beveiligd datacenter. Bovendien moeten projecten soms databases over de grens outsourcen omdat in hun eigen rechtsgebied niet voldoende wettelijke bescherming voorhanden is. Een voorbeeld uit de praktijk is WikiLeaks, een non-profit activistische organisatie die haar primaire servers in Zweden onderbrengt.
Encryptie lost het probleem van gegevensopslag op, maar het toevoegen of wijzigen van versleutelde gegevens in hun versleutelde vorm is een probleem dat homomorfe encryptie kan aanpakken. Om inhoud toe te voegen, kan dit de mogelijkheid van incidenten verpletteren, zoals toen een voormalige Google-ingenieur privileges had misbruikt om enkele gebruikers van het platform te stalken.
Met homomorfe encryptie worden gegevens veilig in de cloud opgeslagen, terwijl de mogelijkheid wordt geboden om versleutelde informatie te berekenen en te doorzoeken. In een ideale omgeving zou alleen de gebruiker die eigenaar is van de gegevens in de cloud de mogelijkheid hebben om de gegevens en de resultaten van homomorfe encryptie te ontsleutelen.
Als u wilt experimenteren met de technologie, biedt de Homomorphic Encryption Standardization-website veel open-source implementaties van homomorfe encryptie. Microsoft SEAL biedt “encryptiebibliotheken waarmee berekeningen direct op versleutelde gegevens kunnen worden uitgevoerd” om ontwikkelaars te helpen bij het bouwen van end-to-end versleutelde gegevensopslag en berekeningsdiensten.