Det finns ytterligare introduktionsmaterial om homomorf kryptering på Wikipediasidan om homomorf kryptering.
Grundläggande principer för homomorf kryptering
Fullt homomorf kryptering, eller helt enkelt homomorf kryptering, avser en klass av krypteringsmetoder som Rivest, Adleman och Dertouzos tänkte sig redan 1978 och som först konstruerades av Craig Gentry 2009. Homomorf kryptering skiljer sig från typiska krypteringsmetoder genom att den gör det möjligt att utföra beräkningar direkt på krypterade data utan att behöva ha tillgång till en hemlig nyckel. Resultatet av en sådan beräkning förblir i krypterad form och kan vid ett senare tillfälle avslöjas av ägaren av den hemliga nyckeln.
tillämpningar
Billig molntjänster och molnlagring har i grunden förändrat hur företag och privatpersoner använder och hanterar sina data. Traditionella krypteringsmetoder, t.ex. AES, är extremt snabba och gör det möjligt att lagra data bekvämt i krypterad form. För att kunna utföra ens enkla analyser på de krypterade uppgifterna måste dock antingen molnservern ha tillgång till den hemliga nyckeln, vilket leder till säkerhetsproblem, eller så måste ägaren av uppgifterna ladda ner, dekryptera och bearbeta uppgifterna lokalt, vilket kan vara kostsamt och skapa en logistisk utmaning. Homomorfisk kryptering kan användas för att förenkla detta scenario avsevärt, eftersom molnet direkt kan bearbeta de krypterade uppgifterna och endast returnera det krypterade resultatet till ägaren av uppgifterna. Mer komplexa tillämpningsscenarier kan inbegripa flera parter med privata uppgifter som en tredje part kan bearbeta och returnera resultatet till en eller flera av deltagarna för att dekrypteras.
Den årliga iDASH-tävlingen utmanar forskarsamhället att tänja på gränserna och utvidga homomorf kryptering till nya användningsområden inom området för integritetsskydd för genomdata.
Säkerhet
Säkerheten hos de mest praktiska homomorfa krypteringssystemen bygger på problemet Ring-Learning With Errors (RLWE), som är ett svårt matematiskt problem relaterat till högdimensionella gitter. Säkerhetsantagandet för dessa krypteringssystem säger nämligen att om systemet kan brytas effektivt kan RLWE-problemet lösas effektivt. En lång rad av peer-reviewed forskning som bekräftar RLWE-problemets hårdhet ger oss förtroende för att dessa system verkligen är minst lika säkra som alla standardiserade krypteringssystem.
Som nämndes ovan är RLWE-problemet nära besläktat med berömda hårda lattice-problem som för närvarande anses vara säkra mot kvantdatorer. På samma sätt anses RLWE och därefter de flesta homomorfa krypteringssystem vara säkra mot kvantdatorer, vilket gör dem i själva verket säkrare än faktorisering och diskreta logaritmbaserade system som RSA och många former av kryptering med elliptisk kurva. Faktum är att det standardiseringsprojekt för postkvantkryptografi som organiserades av NIST hade flera inlämningar baserade på hårda gitterproblem som liknar det som modern homomorf kryptering använder sig av.
standardisering
Det finns flera anledningar till varför vi anser att detta är rätt tidpunkt för att standardisera homomorf kryptering.
- Det finns redan ett skriande behov av lättillgänglig säker beräkningsteknik och detta behov kommer att bli ännu större i takt med att fler företag och privatpersoner övergår till molnlagring och molnberäkning. Homomorf kryptering är redan mogen att användas i allmänhet, men den nuvarande bristen på standardisering gör det svårt att börja använda den.
- Särskilt är de nuvarande implementeringarna inte tillräckligt enkla att använda för icke-experter. Standarden kommer att driva på för att standardisera och förenkla deras API, och utbilda applikationsutvecklare om hur man använder dem.
- Säkerhetsegenskaperna hos RLWE-baserade homomorfa krypteringssystem kan vara svåra att förstå. Standarden kommer att presentera säkerhetsegenskaperna hos de standardiserade systemen i en tydlig och begriplig form.
tillgänglighet
Det finns idag flera implementeringar med öppen källkod av homomorfa krypteringssystem. Nedan följer en ofullständig förteckning. Om du vill att ditt genomförande ska läggas till kan du kontakta oss på [email protected].
- Microsoft SEAL: Ett allmänt använt bibliotek med öppen källkod från Microsoft som stöder BFV- och CKKS-systemen.
- PALISADE: Ett allmänt använt bibliotek med öppen källkod från ett konsortium av DARPA-finansierade försvarsföretag som stöder flera homomorfa krypteringsscheman, t.ex. BGV, BFV, CKKS, TFHE och FHEW, med stöd för flera parter.
- HELib: Ett tidigt och allmänt använt bibliotek från IBM som stöder CKKS- och BGV-systemet och bootstrapping.
- FHEW / TFHE: Stödjer TFHE-systemet. TFHE har utformats utifrån FHEW, som inte längre utvecklas aktivt.
- HeaAn: Det här biblioteket implementerar CKKS-systemet med inhemskt stöd för approximativ aritmetik med fast punkt.
- Λ ○ λ (uttalas ”L O L”): Detta är ett Haskell-bibliotek för ringbaserad lattice-kryptografi med stöd för FHE.
- NFLlib: Detta är ett Haskell-bibliotek för ringbaserad lattice-kryptografi med stöd för FHE: Det här biblioteket är ett resultat av det europeiska HEAT-projektet för att utforska högpresterande homomorf kryptering med hjälp av processorprimitiver på låg nivå.
- HEAT: Det här biblioteket fokuserar på ett API som överbryggar FV-NFLib och HeLIB.
- HEAT: En HW-acceleratorimplementering för FV-NFLlib.
- cuHE: Det här biblioteket utforskar användningen av GPGPU:er för att påskynda homomorf kryptering.
- Lattigo: Det här är ett lattice-baserat kryptografibibliotek som är skrivet i Go.
- Concrete: Det här biblioteket har stöd för en anpassad variant av TFHE-systemet.