Homomorfe encryptie

Homomorfe encryptie is een vorm van encryptie die het mogelijk maakt (bepaalde) berekeningen te maken op versleutelde tekst. Het resultaat van deze berekening is ook versleuteld, maar komt na ontsleuteling overeen met het resultaat als dezelfde berekening was uitgevoerd op de oorspronkelijke klare tekst. Om de berekening uit te voeren, hoeft de versleutelde data niet eerst ontsleuteld te worden. Hierdoor kan de versleutelde data ook door een mogelijk onbetrouwbare derde partij beheerd worden.

Daar waar andere vormen van encryptie tot doel hebben voor iedereen zonder de juiste sleutel gegevens verborgen te houden, kan bij homomorfe encryptie voorkomen worden dat zelfs met de juiste sleutel iemand de klare tekst in kan zien. Vooral voor gegevens waarbij privacy of geheimhouding een rol speelt, kan zo voorkomen worden dat verkregen informatie bij decryptie terug te herleiden is naar een enkele individu of entiteit. Voorbeelden hiervan zijn beveiliging van patiëntgegevens (onderzoekers kunnen bijvoorbeeld wel het aantal patiënten of het aantal beddagen per ziekte uit de data herleiden, maar niet wie deze patiënten zijn), financiële data, en verkiezingen (het is niet te herleiden wat iemand heeft gestemd, maar de kiezer kan wel nagaan dat zijn of haar stem is meegenomen in het uiteindelijke resultaat).

Gedeeltelijke homomorfe encryptiesystemen

bewerken

In onderstaande voorbeelden is de notatie   gebruikt als zijnde het coderen van bericht x.

Ongepade RSA

bewerken

Wanneer de publieke RSA-sleutel modulo   en exponent   is, wordt de encryptie van bericht   verkregen door  . De homomorfe eigenschap is dan

 

ElGamal

bewerken

In het ElGamal encryptiesysteem, in een cyclische groep   van volgorde   met generator  , als de publieke sleutel   is, met  , en   als geheime sleutel, is het coderen van bericht   gedaan door  , met een willekeurige  . The homomorfe eigenschap is dan

 

Andere gedeeltelijk homomorfe encryptiesystemen

bewerken

Gedeeltelijke homomorfe encryptiesystemen

bewerken

Een encryptie die op een compacte wijze alle circuits evalueert.[1]