Homomorfikus titkosítás definíciója
Mi a teendő, ha nagy adathalmazokon kell számításokat végezni, miközben meg kell őrizni azok titkosságát? Más szóval, analitikát szeretne gyűjteni például felhasználói adatokról, anélkül, hogy felfedné a tartalmukat az analitikát kiszámító számítási motor előtt. Vagy Ön egy felhőszolgáltató, amely támogatja a dokumentumok titkosított tárolását, de lehetővé szeretné tenni a felhasználók számára, hogy anélkül szerkesszék a dokumentumaikat, hogy előbb visszafejtenék azokat.
Ez az a pont, ahol a homomorfikus titkosítás a segítségére lehet. A homomorfikus titkosítás lehetővé teszi az adatok tárolásának és számításának “kiszervezését” felhőkörnyezetekbe úgy, hogy az adatokat először titkosított formába alakítja át.
Az ebben a technikában az a figyelemre méltó, hogy a titkosított adatokon a kívánt műveletek és számítások elvégzésével ugyanazokat az eredményeket érheti el (titkosított formában), mintha ugyanazokat a műveleteket a titkosítatlan formán végezné el.
“A homomorfikus titkosítás abban különbözik a tipikus titkosítási módszerektől, hogy lehetővé teszi a számítások közvetlen elvégzését a titkosított adatokon anélkül, hogy titkos kulcshoz kellene hozzáférni. Az ilyen számítás eredménye titkosított formában marad, és egy későbbi időpontban a titkos kulcs tulajdonosa felfedheti” – olvasható a Homomorphic Encryption Standardization, a “hivatalos” szabványokat, útmutatókat és a terület fejlődéséről szóló információkat fenntartó ipari szabványügyi konzorcium közleményében. Ez lehetővé teszi ugyanazon számításos elemzési megoldások használatát anélkül, hogy az adatok titkossága bármelyik szakaszban veszélybe kerülne.
Az ilyen rejtjelkészletek kialakításának ötlete nagyrészt kísérleti jellegű volt, és az 1970-es évek végén javasolták. Három évtizedbe telt, mire 2009-ben Craig Gentry kidolgozta az első gyakorlati koncepciót.
Mi a különbség a homomorf titkosításban
Ha a kriptográfiára egy ipari szabványos kontextusban gondolunk, például a HTTPS (amelyet az SSL/TLS tesz lehetővé) vagy a végponttól végpontig terjedő csevegőüzenetek esetében, feltételezzük, hogy minden kriptográfia eredendően biztonságos és garantálja a titkosságot és az integritást. Ez az egyik éles különbség, amely megkülönbözteti a homomorf titkosítást a tipikus kriptorendszerektől.
A homomorf titkosítás működéséhez a rejtjelkészleteket úgy tervezték, hogy alakíthatók legyenek, ami azt jelenti, hogy nem tudják garantálni az adatok integritását. Ez nem hiba, hanem egy szándékolt tulajdonság, amely megkönnyíti a titkosított adatokkal való operációt.
A képlékenység a kriptográfiai algoritmusok olyan tulajdonsága, amely lehetővé teszi egy titkosított szöveg átalakítását egy másik érvényes titkosított szöveggé, amely megváltoztatja az eredeti szöveg jelentését. Sőt, az adatot átalakító felhasználónak nem is kell tudnia vagy kikövetkeztetnie, hogy mi volt az eredeti, titkosítatlan adat.
Egyszerűen fogalmazva, ha elküldenék egy titkosított e-mailt a CSO szerkesztőjének, amelyben ez áll: “A CSO fantasztikus”, akkor egy ember a középen (MitM) támadó, aki el tudja lopni ezt a titkosított szöveget, de nem tudja, hogy mit jelent, potenciálisan átalakíthatja azt egy másik titkosított karakterlánccá, amelyet a szerkesztő visszafejtve ez áll: “Utálom a CSO-t!”.”
A praktikus e-mail titkosítási rendszerek természetesen rendelkeznek olyan ellenintézkedésekkel, amelyek védik az adatok integritását, és gyakorlatilag lehetetlenné teszik ezt a forgatókönyvet, feltéve, hogy az algoritmusokban vagy azok megvalósításában nincsenek sebezhetőségek.
A részben homomorf RSA kriptorendszer például úgynevezett “padding” funkciót használ, hogy minimalizálja a manipulálhatóság hatását. Továbbá az üzenethitelesítési ellenőrző összegek (pl. MD5 vagy SHA hashek) segítenek az adatok integritásának érvényesítésében.
Ez nem annyira ad okot aggodalomra, mivel az adatok titkosságát nem befolyásolná az alakíthatóság. Az aggodalom akkor merül fel, ha mondjuk a titkosított adatokon dolgozó számítási motor hibát vezet be az adatokba vagy a titkosított eredménybe egy hibás algoritmus miatt. A homomorf titkosítás természete különösen megnehezítheti az ilyen hibák felfedezését.
A homomorfikus titkosítás típusai
Minden adat számokból áll (a számítógépek binárisan dolgoznak). A kriptográfia, mint matematikai ág, közvetlenül számokkal dolgozik. Ez azt jelenti, hogy a titkosítás és a visszafejtés nem más, mint a számokkal végzett műveletek bonyolult játéka.
A homomorf titkosításnak három típusa van:
- A részlegesen homomorf titkosítás (PHE) csak egyféle matematikai műveletet (például szorzást) tesz lehetővé egy adott adathalmazon korlátlan számú alkalommal.
- A részben homomorfikus titkosítás (SHE) megengedőbb, de még mindig korlátozó, és csak néhány alkalommal teszi lehetővé mind az összeadást, mind a szorzást egy adott adathalmazon.
- A teljesen homomorfikus titkosítás (FHE) a legjobb minden világból, korlátlan alkalommal engedélyezi a különböző típusú műveleteket az adatokon, de jelentős teljesítménybeli kompromisszummal.
Minden megközelítés a teljesítmény, a hasznosság vagy a védelem nyújtása felé hajlik, az FHE rendkívül intenzív és jelenleg nem hatékony (és ezért rossz teljesítményt nyújt egy valós forgatókönyvben).
A jelenlegi homomorfikus titkosítási fejlesztések folyamatos egyensúlyozást jelentenek a három lehetőség között az optimális megoldás elérése érdekében. Az FHE-ben rejlő lehetőségek kiaknázása után olyan úttörő lehetőségek nyílnak majd meg, mint például az, hogy a felhőszolgáltató különböző matematikai műveleteket végezhet a titkosított adatokon.
Homomorfikus titkosítás felhasználási esetei
Szabályozott és adatvédelmi központú iparágak
Az adatok és a személyazonosításra alkalmas információk (PII) tárolása nagy kihívást jelent az olyan szigorúan szabályozott iparágakban, mint az egészségügy, a pénzügy, a jog és a bankszektor. A titkosított tárolás az ilyen iparágak egyik biztonsági intézkedése, de további kihívást jelent, ha először dekódolniuk kell a felhasználói adatokat ahhoz, hogy betekintést nyerjenek belőlük.
A gépi tanulást alkalmazó prediktív analitika levezetése például a betegaktákból segíthet az orvosoknak a betegségek gyógymódjainak azonosításában. A homomorfikus titkosítással megszűnne annak szükségessége, hogy először a betegfájlokat kelljen visszafejteni. Az analitikus algoritmusokat úgy lehetne alakítani, hogy a titkosított betegadatokon dolgozzanak, és titkosított formában is eredményt adjanak. Ez az eredmény visszafejtés után ugyanazokat a felismeréseket nyújtaná, mint amelyek a titkosítatlan betegfájlokból származnának.
Ez a felhasználási lehetőség kiterjed az online hirdetésekre is. A GDPR-hoz hasonló jogszabályok által bevezetett növekvő korlátozások miatt a személyre szabott hirdetések kínálása a felhasználók magánéletének védelme mellett kihívást jelent. A homomorfikus titkosítás lehetővé teszi, hogy a titkosított felhasználói adatokból analitikát és betekintést nyerjen anélkül, hogy eközben veszélyeztetné a felhasználói információk bizalmas jellegét.
Kiszervezett felhőalapú tárolás
Az adattárolás kiszervezése költséghatékony stratégia lehet, ha a személyi költségek csökkentéséről és a teljes értékű biztonságos adatközpont fenntartásával járó fejfájás kiküszöböléséről van szó. Továbbá néha a projekteknek szükségük lehet az adatbázisok határokon átnyúló kiszervezésére, mivel a saját joghatóságukban nem áll rendelkezésre elegendő jogi védelem. Valós példaként gondoljunk a WikiLeaksre, egy non-profit aktivista szervezetre, amely Svédországban tárolja elsődleges szervereit.
A titkosítás megoldja az adattárolási problémát, de a titkosított adatok titkosított formában történő hozzáadása vagy módosítása olyan probléma, amelyet a homomorf titkosítás képes megoldani. A tartalom hozzáadásához ez elnyomhatja az olyan incidensek lehetőségét, mint például amikor a Google egy korábbi mérnöke visszaélt a jogosultságokkal, hogy becserkéssze a platform egyes felhasználóit.
A homomorfikus titkosítással az adatok biztonságosan tárolódnak a felhőben, miközben lehetővé teszi a titkosított információk kiszámítását és keresését. Egy ideális környezetben csak az a felhasználó, aki a felhőben lévő adatok tulajdonosa, képes lenne visszafejteni az adatokat és a homomorfikus titkosítás eredményeit.
Ha kísérletezni szeretne a technológiával, a Homomorphic Encryption Standardization webhely számos nyílt forráskódú homomorfikus titkosítási implementációt kínál. A Microsoft SEAL “titkosítási könyvtárakat biztosít, amelyek lehetővé teszik a számítások közvetlen végrehajtását titkosított adatokon” a fejlesztők segítésére a végponttól végpontig titkosított adattárolási és számítási szolgáltatások létrehozásában.