Definice homomorfního šifrování
Co dělat, když potřebujete provádět výpočty na velkých souborech dat a zároveň zachovat jejich důvěrnost? Jinými slovy, chtěli byste shromažďovat analytické údaje například o uživatelských datech, aniž byste jejich obsah prozradili výpočetnímu stroji, který je bude počítat. Nebo jste poskytovatelem cloudových služeb, které podporují šifrované ukládání dokumentů, ale chcete uživatelům umožnit upravovat jejich dokumenty, aniž by je museli nejprve dešifrovat.
Tady by vám mohlo přijít na pomoc homomorfní šifrování. Homomorfní šifrování poskytuje možnost „outsourcovat“ ukládání a výpočty dat do cloudového prostředí tím, že data nejprve převedete do šifrované podoby.
Na této technice je pozoruhodné to, že provedením požadovaných operací a výpočtů na šifrovaných datech dosáhnete stejných výsledků (v šifrované podobě) jako provedením stejných operací na jejich nešifrované podobě.
„Homomorfní šifrování se od typických metod šifrování liší tím, že umožňuje provádět výpočty přímo nad zašifrovanými daty, aniž by byl nutný přístup k tajnému klíči. Výsledek takového výpočtu zůstává v zašifrované podobě a může být v pozdějším okamžiku odhalen vlastníkem tajného klíče,“ uvádí konsorcium Homomorphic Encryption Standardization, které udržuje „oficiální“ standardy, pokyny a informace o vývoji v této oblasti. To umožňuje používat stejná řešení výpočetní analýzy, aniž by byla v jakékoli fázi ohrožena důvěrnost dat.
Myšlenka navrhnout takové sady šifer byla z velké části experimentální a byla navržena koncem 70. let 20. století. Trvalo tři desetiletí, než byl v roce 2009 Craigem Gentrym navržen první praktický koncept.
Co je na homomorfním šifrování jiného
Když přemýšlíte o kryptografii v kontextu průmyslových standardů, jako je HTTPS (umožněný protokolem SSL/TLS) nebo koncové zprávy v chatu, předpokládáte, že veškerá kryptografie je ze své podstaty bezpečná a zaručuje důvěrnost a integritu. To je jeden z výrazných rozdílů, který homomorfní šifrování odlišuje od typických kryptosystémů.
Aby homomorfní šifrování fungovalo, jsou jeho sady šifer navrženy tak, aby byly tvárné, což znamená, že nemohou zaručit integritu dat. Nejedná se o chybu, ale o zamýšlenou vlastnost, která usnadňuje práci se zašifrovanými daty.
Malovatelnost je vlastnost kryptografických algoritmů, která umožňuje transformaci zašifrovaného textu na jiný platný zašifrovaný text, který mění význam původního textu. Uživatel, který data transformuje, by navíc ani nemusel vědět nebo odvodit, jaká byla původní nešifrovaná data.
Jednoduše řečeno, pokud bych redaktorovi CSO poslal zašifrovaný e-mail, ve kterém by stálo: „CSO je super,“ útočník typu man-in-the-middle (MitM), který dokáže tento zašifrovaný text ukrást, ale neví, co znamená, by ho mohl potenciálně transformovat do jiného zašifrovaného řetězce, který by po dešifrování redaktorem zněl: „Nenávidím CSO!“.“
Praktické systémy šifrování e-mailů samozřejmě obsahují protiopatření na ochranu integrity dat a tento scénář prakticky znemožňují za předpokladu, že v algoritmech nebo jejich implementaci nejsou žádné zranitelnosti.
Například kryptosystém RSA, který je částečně homomorfní, používá takzvanou „padding“ funkci, která minimalizuje dopad zfalšování. Dále kontrolní součty pro ověřování zpráv (např. hashe MD5 nebo SHA) pomáhají ověřovat integritu dat.
To není takový důvod k obavám, protože důvěrnost dat by nebyla ovlivněna zfalšovatelností. Obavy vznikají, když například výpočetní stroj pracující se zašifrovanými daty vnese chybu do dat nebo do zašifrovaného výsledku v důsledku chybného algoritmu. Vzhledem k povaze homomorfního šifrování by mohlo být obzvláště obtížné tyto chyby odhalit.
Typy homomorfního šifrování
Všechna data jsou čísla (počítače pracují ve dvojkové soustavě). Kryptografie jako matematický obor pracuje přímo s čísly. To znamená, že šifrování a dešifrování není nic jiného než složitá hra operací s čísly.
Existují tři typy homomorfního šifrování:
- Částečně homomorfní šifrování (PHE) umožňuje pouze jeden typ matematické operace (například násobení) na daném souboru dat neomezený početkrát.
- Poněkud homomorfní šifrování (SHE) je přípustnější, ale stále omezující, protože umožňuje sčítání i násobení na dané množině dat pouze několikrát.
- Plně homomorfní šifrování (FHE) je nejlepší ze všech světů, umožňuje různé typy operací nad daty neomezeněkrát, ale s výrazným kompromisem ve výkonu.
Každý přístup se přiklání k tomu, že nabízí buď výkon, užitečnost, nebo ochranu, přičemž FHE je vysoce náročné a v současné době neefektivní (a proto nabízí nízký výkon v reálném scénáři).
Současný vývoj homomorfního šifrování je neustálým balancováním mezi těmito třemi přístupy s cílem dosáhnout optimálního řešení. Jakmile bude potenciál FHE uvolněn, přinese převratné možnosti, například možnost provozovatele cloudu provádět různé matematické operace se zašifrovanými daty.
Případy použití homomorfního šifrování
Regulovaná odvětví a odvětví zaměřená na ochranu soukromí
Ukládání dat a informací umožňujících osobní identifikaci (PII) ve vysoce regulovaných odvětvích, jako je zdravotnictví, finančnictví, právo a bankovnictví, představuje výzvu. Šifrované ukládání je bezpečnostním opatřením, které taková odvětví zavádějí, ale další výzva vzniká, když musí uživatelská data nejprve dešifrovat, aby z nich mohli získat poznatky.
Například odvození prediktivní analýzy, která využívá strojové učení, ze souborů případů pacientů může lékařům pomoci identifikovat léky na nemoci. Díky homomorfnímu šifrování by odpadla nutnost soubory pacientů nejprve dešifrovat. Analytické algoritmy by mohly být přizpůsobeny tak, aby pracovaly se zašifrovanými daty pacientů a poskytovaly výsledky i v zašifrované podobě. Tento výsledek by po dešifrování poskytl stejné poznatky, které by pocházely z nešifrovaných souborů pacientů.
Tento případ použití se rozšiřuje i na online reklamu. S rostoucími omezeními, která zavádí legislativa, jako je GDPR, je nabízení personalizovaných reklam a zároveň ochrana soukromí uživatelů výzvou. Homomorfní šifrování umožňuje získávat analýzy a poznatky ze zašifrovaných uživatelských dat, aniž by přitom byla ohrožena důvěrnost uživatelských informací.
Outsourcované cloudové úložiště
Outsourcované ukládání dat může být nákladově efektivní strategií, pokud jde o snížení personálních nákladů a odstranění bolestí hlavy spojených s údržbou plnohodnotného zabezpečeného datového centra. Kromě toho může být někdy u projektů nutné outsourcovat databáze přes hranice, protože ve vlastní jurisdikci není k dispozici dostatečná právní ochrana. Jako příklad z reálného světa uveďme neziskovou aktivistickou organizaci WikiLeaks, která své primární servery hostuje ve Švédsku.
Šifrování řeší problém ukládání dat, ale přidávání nebo úprava zašifrovaných dat v zašifrované podobě je problém, který může řešit homomorfní šifrování. Pro doplnění podstaty to může zmařit možnost incidentů, jako když bývalý inženýr společnosti Google zneužil oprávnění ke sledování některých uživatelů platformy.
Díky homomorfnímu šifrování jsou data bezpečně uložena v cloudu a zároveň umožňují výpočet a vyhledávání zašifrovaných informací. V ideálním prostředí by měl možnost dešifrovat data a výsledky homomorfního šifrování pouze uživatel, který data v cloudu vlastní.
Pokud chcete s touto technologií experimentovat, na webu Homomorphic Encryption Standardization najdete mnoho implementací homomorfního šifrování s otevřeným zdrojovým kódem. Microsoft SEAL poskytuje „šifrovací knihovny, které umožňují provádět výpočty přímo na zašifrovaných datech“ pro pomoc vývojářům při vytváření end-to-end šifrovaných datových úložišť a výpočetních služeb.