Enc(a) + Enc(b)= Enc(a + b)compute without decrypting

Homomorfní šifrování

11 min přečtenoKryptografie

Homomorfní šifrování je šifrovací technika, která vám umožňuje provádět výpočty se šifrovanými daty, aniž byste je museli nejprve dešifrovat. Matematika existuje od roku 1978, praktická plně homomorfní verze od roku 2009 a technický výkon se za poslední desetiletí zlepšil 10 000×. Zda je připraven k výrobě, se za posledních pár let změnil z „ne“ na „někdy ano“.

Celé tělo článku je uvedeno níže v angličtině.

Homomorfní šifrování (HE) je třída šifrovacích schémat, která umožňují výpočet přímo na šifrované texty. Výsledek se po dešifrování rovná výsledku provedení stejné operace s otevřeným textem. Důvěryhodný klient drží klíče; nedůvěryhodný server může spouštět analýzy, strojové učení nebo libovolné funkce na šifrovaných datech, aniž by je vůbec viděl.

Základní myšlenka

Jednoduchý příklad: představte si šifru, kde Encrypt(a) + Encrypt(b) = Encrypt(a + b). Pokud na server odešlete Encrypt(5) a Encrypt(7), vypočítá součet a získá Encrypt(12). Dešifrujete a uvidíte 12. Server se o vašich číslech nic nedozvěděl, ale vytvořil správný součet.

Reálná homomorfní schémata jsou složitější, ale princip je stejný: šifrové texty mají algebraickou strukturu, která odráží základní prosté texty. Encryption (PHE). Podporuje jeden typ operace – buď sčítání, nebo násobení, ne obojí. RSA je multiplikativně homomorfní; Paillier je aditivně homomorfní. Mají praktické aplikace (elektronické hlasování, soukromá agregace) a přiměřený výkon.

  • Somewhat Homomorphic Encryption (SHE). Podporuje sčítání i násobení, ale pouze omezený počet operací, než bude šifrovaný text příliš hlučný na to, aby jej bylo možné správně dešifrovat. (FHE). Podporuje libovolné výpočty. Průlom Craiga Gentryho v roce 2009 představil první schéma FHE; následující generace (BGV, BFV, CKKS, TFHE) to postupně zrychlily.
  • Hlavní překážkou výkonu byl

    FHE. Gentryho původní schéma bylo ~ 100 bilionkrát pomalejší než počítání na prostém textu. Současný stav techniky (CKKS pro přibližnou aritmetiku, TFHE pro booleovské obvody) je v závislosti na operaci 100× až 100 000× pomalejší než prostý text. To je stále pomalé, ale umožňuje skutečné aplikace pro případy použití, kde záleží na citlivosti dat více než na rychlosti.

    • CKKS — přibližná aritmetika na reálných číslech; dobré pro odvození strojového učení, kde jsou přijatelné malé chyby.
    • BGV, BFV — přesná aritmetika celého čísla; dobré pro databázové operace.
    • TFHE — booleovské obvody s rychlým bootstrapem; dobré pro tok kontroly.

    Reálné nasazení

    • Soukromé návrhy Microsoft Edge používá HE k šifrování adresy URL, kterou se prohlížeč chystá navštívit, umožňuje společnosti Microsoft vypočítat související návrhy na zašifrovaném vstupu, vrací výsledky.
    • Apple Private Cloud Compute a Private Federated Learning využívají techniky související s HE k agregaci aktualizací uživatelských modelů, aniž by se zobrazovaly jednotlivé příspěvky.
    • Poskytovatelé cloudu (AWS, Azure) začínají nabízet služby FHE pro specifické pacienty s šifrováním, jako je např. data.
    • Banks používají HE pro meziinstitucionální analýzu rizik bez sdílení zákaznických dat.
    • Volební systémy používají aditivně homomorfní schémata pro agregaci hlasů a zároveň chrání jednotlivé hlasovací lístky.XPLZ3Z6PLJ knihovny
      • Microsoft SEAL — open source, vyspělá, široká podpora schématu
      • OpenFHE — komunitou spravovaný nástupce PALISADE
      • XXPLZ48Concrete X50 Rámec zaměřený na TFHE s vysokoúrovňovými rozhraními API
      • HElib — výzkumná knihovna IBM
      • tfhe-rs — Rust implementace TFHE

      Limitations gotchas

      • Velikost šifrovaného textu. Šifrovaný bit může mít desítky kilobajtů. Šifrovaná malá datová sada může mít gigabajty.
      • Omezený rozpočet na hluk. Každá operace přidává šum; nakonec dešifrování selže. Bootstrapping obnovuje hluk, ale je drahý.
      • Hloubka funkce. Hloubkové výpočty vyžadují mnoho multiplikativních úrovní, zvyšující se velikosti parametrů.
      • Ne na všechno. Operace jako větvení nebo třídění nejsou složité. hodnoty.
      • Správa klíčů. Dešifrovací klíč je vysoce citlivý – jeho ztráta znamená ztrátu přístupu k vašim datům; prosakování poráží celý bod.

      HE vs MPC vs ZK

      Tři související technologie na ochranu soukromí, které jsou často zaměňovány:

      • Homomorfní šifrování, šifrovací text první strany dešifruje.
      • Secure Multi-Party Computation (MPC) — více stran společně vypočítává funkci, aniž by odhalily své vstupy. Různé protokoly, různé kompromisy.
      • Důkazy o nulových znalostech (ZK) — prokázání pravdivosti výroku bez odhalení dalších informací. Jiný cíl: důkaz, ne výpočet.

      Ty tři se doplňují; moderní systémy ochrany soukromí je často kombinují.

      Výkon budoucnosti

      FHE se neustále zlepšuje. Hardwarová akcelerace (podpora CUDA od NVIDIA pro HE, vlastní FPGA a ASIC od Optalysys a další, primitiva Intel HE) zmenšuje mezeru ve výpočtech s prostým textem o další řád. V příštích 5–10 letech se FHE pravděpodobně posune od „zajímavého výzkumu“ k „hlavnímu proudu pro případy použití s ​​vysokou hodnotou soukromí“. Nenahradí konvenční šifrování – doplňuje jej.

    Často kladené otázky

    Je homomorfní šifrování bezpečné?
    Vyspělá schémata (CKKS, BGV, BFV, TFHE) jsou založena na problému Learning With Errors, který je považován za bezpečný i proti kvantovým počítačům. Chyby v implementaci a útoky na postranní kanály zůstávají problémem; kryptografická teorie je správná.
    Mohu ukládat svá data s HE v cloudu?
    V konkrétních případech ano – někteří poskytovatelé cloudu nabízejí HE-as-a-service pro analýzu šifrovaných dat. Pro obecné úložiště je HE přehnané ve srovnání se šifrováním v klidu plus šifrování na straně klienta. Na něm záleží, když cloud potřebuje vypočítat data, aniž by je dešifroval.
    Jaký je rozdíl mezi PHE a FHE?
    PHE podporuje jeden typ operace (sčítání NEBO násobení); FHE podporuje libovolné výpočty včetně obou. PHE je rychlý a praktický; FHE je pomalý, ale zcela obecný. Použijte PHE, když operace, které potřebujete, vyhovují; použijte FHE, když potřebujete flexibilitu.
    Používá se HE ve skutečných produktech?
    stále více. Soukromé návrhy Microsoft Edge, federované učení společnosti Apple, některé analýzy bankovních rizik a rostoucí počet aplikací pro ML ve zdravotnictví využívají HE. S tím, jak se výkon zlepšuje a nástroje zrají, dochází k širšímu přijetí.
    Rozbijí kvantové počítače HE?
    Moderní schémata HE založená na mřížce (CKKS, BGV, BFV, TFHE) jsou považována za kvantově odolná. Jejich bezpečnost se opírá o stejné těžké problémy, jaké se používají v postkvantové kryptografii. Kryptografická komunita považuje HE za jeden z post-kvantově bezpečných směrů šifrování.
    Vysvětlení homomorfního šifrování: Počítání s daty, která nemůžete přečíst