Lisää johdantomateriaalia homomorfisesta salauksesta löytyy Homomorphic Encryption Wikipedia-sivulta.
Homomorfisen salauksen perusteet
Täysin homomorfinen salaus tai yksinkertaisesti homomorfinen salaus tarkoittaa Rivestin, Adlemanin ja Dertouzosin jo vuonna 1978 visioimaa salausmenetelmien luokkaa, jonka Craig Gentry rakensi ensimmäisen kerran vuonna 2009. Homomorfinen salaus eroaa tyypillisistä salausmenetelmistä siinä, että sen avulla voidaan suorittaa laskutoimituksia suoraan salatulle tiedolle ilman, että tarvitaan salaista avainta. Tällaisen laskutoimituksen tulos pysyy salatussa muodossa, ja salaisen avaimen omistaja voi myöhemmin paljastaa sen.
sovellukset
Pilvilaskenta ja pilvitallennus ovat muuttaneet perusteellisesti yritysten ja yksityishenkilöiden tapaa käyttää ja hallita tietojaan. Perinteiset salausmenetelmät, kuten AES, ovat erittäin nopeita, ja niiden avulla tiedot voidaan tallentaa kätevästi salatussa muodossa. Jotta salatusta datasta voitaisiin tehdä yksinkertaisia analyysejä, pilvipalvelimen on kuitenkin joko saatava salainen avain käyttöönsä, mikä aiheuttaa tietoturvaongelmia, tai datan omistajan on ladattava, purettava salaus ja käsiteltävä dataa paikallisesti, mikä voi olla kallista ja aiheuttaa logistisia haasteita. Homomorfista salausta voidaan käyttää yksinkertaistamaan tätä skenaariota huomattavasti, sillä pilvipalvelin voi toimia suoraan salattujen tietojen kanssa ja palauttaa vain salatun tuloksen tietojen omistajalle. Monimutkaisemmissa sovellusskenaarioissa voi olla useita osapuolia, joilla on yksityistä dataa, jota kolmas osapuoli voi operoida ja palauttaa tuloksen yhdelle tai useammalle osallistujalle purettavaksi.
Vuosittain järjestettävä iDASH-kilpailu haastaa tutkijayhteisön kokeilemaan rajoja ja laajentamaan homomorfista salausta uusiin käyttötarkoituksiin genomin yksityisyyden suojan alalla.
Turvallisuus
Käytännöllisimpien homomorfisten salausjärjestelmien turvallisuus perustuu RLWE-ongelmaan (Ring-Learning With Errors), joka on vaikea matemaattinen ongelma, joka liittyy korkea-ulotteisiin ristikoihin. Näiden salausjärjestelmien turvallisuusolettamus on, että jos järjestelmä voidaan murtaa tehokkaasti, RLWE-ongelma voidaan ratkaista tehokkaasti. Pitkät vertaisarvioidut tutkimukset, jotka vahvistavat RLWE-ongelman kovuuden, antavat meille varmuuden siitä, että nämä järjestelmät ovat todellakin vähintään yhtä turvallisia kuin mitkä tahansa standardoidut salausjärjestelmät.
Kuten edellä mainittiin, RLWE-ongelma liittyy läheisesti kuuluisiin koviin ristikko-ongelmiin, joita pidetään tällä hetkellä turvallisina kvanttitietokoneita vastaan. Vastaavasti RLWE:tä ja sittemmin useimpia homomorfisia salausjärjestelmiä pidetään turvallisina kvanttitietokoneita vastaan, mikä tekee niistä itse asiassa turvallisempia kuin faktorointiin ja diskreetteihin logaritmeihin perustuvat järjestelmät, kuten RSA ja monet elliptisten käyrien kryptografian muodot. Itse asiassa NIST:n järjestämässä kvanttikryptografian jälkeisessä standardointihankkeessa oli useita esityksiä, jotka perustuivat koviin ristikko-ongelmiin, jotka ovat samanlaisia kuin mitä nykyaikaisessa homomorfisessa salauksessa käytetään.
standardisointi
On useita syitä, joiden vuoksi uskomme, että nyt on oikea hetki standardisoida homomorfinen salaus.
- Helposti saatavilla olevalle turvalliselle laskentatekniikalle on jo nyt huutava tarve, ja tämä tarve vahvistuu sitä mukaa, kun yhä useammat yhtiöt ja yksityishenkilöt siirtyvät käyttämään pilvipohjaista tallennusta ja laskentaa. Homomorfinen salaus on jo kypsä valtavirtakäyttöön, mutta nykyinen standardoinnin puute vaikeuttaa sen käytön aloittamista.
- Etenkin nykyiset toteutukset eivät ole riittävän helppokäyttöisiä muille kuin asiantuntijoille. Standardi pyrkii yhtenäistämään ja yksinkertaistamaan niiden API:ta ja kouluttamaan sovelluskehittäjiä niiden käytöstä.
- RLWE-pohjaisten homomorfisten salausjärjestelmien turvallisuusominaisuuksia voi olla vaikea ymmärtää. Standardi esittää standardoitujen järjestelmien turvallisuusominaisuudet selkeässä ja ymmärrettävässä muodossa.
saatavuus
Homomorfisten salausjärjestelmien avoimen lähdekoodin toteutuksia on nykyään useita. Alla on epätäydellinen luettelo. Jos haluat, että toteutuksesi lisätään, ota yhteyttä osoitteeseen [email protected].
- Microsoft SEAL: Microsoftin laajasti käytetty avoimen lähdekoodin kirjasto, joka tukee BFV- ja CKKS-järjestelmiä.
- PALISADE: DARPA-rahoitteisten puolustusalan urakoitsijoiden yhteenliittymän laajasti käytetty avoimen lähdekoodin kirjasto, joka tukee useita homomorfisia salausjärjestelmiä, kuten BGV, BFV, CKKS, TFHE ja FHEW, muun muassa usean osapuolen tuella.
- HELib: IBM:n varhainen ja laajalti käytetty kirjasto, joka tukee CKKS- ja BGV-järjestelmää ja bootstrappingia.
- FHEW / TFHE: Tukee TFHE-järjestelmää. TFHE on suunniteltu FHEW:stä, jota ei enää aktiivisesti kehitetä.
- HeaAn: Tämä kirjasto toteuttaa CKKS-järjestelmän natiivilla tuella kiinteän pisteen likimääräiselle aritmetiikalle.
- Λ ○ λ (lausutaan ”L O L”): Tämä on Haskell-kirjasto rengaspohjaiselle lattice-kryptografialle, joka tukee FHE:tä.
- NFLlib: Tämä kirjasto on seurausta eurooppalaisesta HEAT-projektista, jossa tutkitaan suorituskykyistä homomorfista salausta käyttäen matalan tason prosessoriprimitiivejä.
- HEAT: Tämä kirjasto keskittyy API:han, joka yhdistää FV-NFLibin ja HeLIBin.
- HEAT: HW-kiihdytintoteutus FV-NFLlibille.
- cuHE: Tämä kirjasto tutkii GPGPU:n käyttöä homomorfisen salauksen nopeuttamiseen.
- Lattigo: Tämä on Go-kielellä kirjoitettu lattice-pohjainen kryptografiakirjasto.
- Concrete: Tämä kirjasto tukee mukautettua muunnelmaa TFHE-skeemasta.