Google avaldas avatud teekide ja utiliitide komplekti, mis sisaldab täieliku homomorfse krüptimise süsteemi teostust ning võimaldab töödelda andmeid krüptitud kujul nii, et need ei esine üheski arvutusetapis avalikul kujul. See tööriistakomplekt võimaldab luua konfidentsiaalseks andmetöötluseks mõeldud programme, mis suudavad töötada andmetega neid dekrüpteerimata, sealhulgas teha krüptitud andmetega matemaatilisi ja lihtsamaid tekstitoiminguid. Projekti kood on kirjutatud C++ keeles ja seda levitatakse Apache 2.0 litsentsi alusel.
Erinevalt otspunktkrüptimisest võimaldab homomorfne krüptimine lisaks andmeedastuse kaitsmisele töödelda andmeid ka ilma neid dekrüpteerimata. Täielik homomorfsus tähendab võimalust teha krüptitud andmetega liitmis- ja korrutamistehteid, mille põhjal saab teostada mis tahes suvalisi arvutusi. Väljundina saadakse krüptitud tulemus, mis vastab tulemusele, mis saadaks samade tehete tegemisel algandmetega ja seejärel selle tulemuse krüptimisel.
Homomorfse krüptimise korral toimub andmetöötlus nii, et kasutaja krüptib andmed ja edastab need võtmeid avaldamata töötlemiseks kolmanda osapoole teenusele. See teenus teeb etteantud arvutused ja moodustab krüptitud tulemuse, ilma et tal oleks võimalik kindlaks teha, milliste andmetega ta täpselt töötab. Kasutaja dekrüpteerib saadud andmed oma võtmete abil ja saab tulemuse avatud kujul kätte.

Homomorfse krüptimise kasutusvaldkondadena tuuakse esile pilveteenuste loomine konfidentsiaalsete arvutuste jaoks, elektroonilise hääletamise süsteemide rakendamine, anonüümitud marsruutimisprotokollide loomine, päringute töötlemine krüptitud andmete üle andmebaasihaldussüsteemides ning masinõppesüsteemide konfidentsiaalne treenimine.
Näiteks osutub homomorfne krüpteerimine kasulikuks meditsiinirakendustes, mis saavad patsientidelt vastu võtta konfidentsiaalset teavet krüpteeritud kujul ning võimaldavad meditsiinitöötajatel teha analüüsi ja tuvastada kõrvalekaldeid ilma andmeid dekrüpteerimata. Homomorfne krüpteerimine võib aidata ka uuringutes, mis käsitlevad haiguste seost teatud geneetiliste mutatsioonidega ja mille puhul on vaja analüüsida tuhandeid geneetilise teabe proove.
Avaldatud tööriistakomplekti eripära on võimalus luua krüpteeritud andmete töötlemiseks programme, kasutades C++ keele tavapäraseid arendusvõtteid. Pakutava transpilaatori abil teisendatakse C++ programm spetsiaalseks FHE-C++ dialektiks, mis suudab töötada krüpteeritud andmetega.

Allikas: opennet.ru
