fully homomorphic encryption
play

Fully Homomorphic Encryption Zvika Brakerski Weizmann Institute of - PowerPoint PPT Presentation

Fully Homomorphic Encryption Zvika Brakerski Weizmann Institute of Science ASCrypto, October 2013 Outsourcing Computation () Email, web- search, navigation, social networking Search query, location, business


  1. Fully Homomorphic Encryption Zvika Brakerski Weizmann Institute of Science ASCrypto, October 2013

  2. Outsourcing Computation 𝑦 𝑦 𝑔 𝑔(𝑦) Email, web- search, navigation, social networking… Search query, location, business information, medical information… What if 𝑦 is private?

  3. The Situation Today We promise we wont look at your data. Honest! We want real protection.

  4. Outsourcing Computation – Privately Learns nothing on 𝑦 . πΉπ‘œπ‘‘(𝑦) 𝑦 𝑔 𝑧 𝐸𝑓𝑑 𝑧 = 𝑔(𝑦) WANT NTED ED Homomorphic Evaluation function: πΉπ‘€π‘π‘š: 𝑔, πΉπ‘œπ‘‘ 𝑦 β†’ πΉπ‘œπ‘‘(𝑔 𝑦 )

  5. Fully Homomorphic Encryption (FHE) 𝑑𝑙 , π‘žπ‘™ 𝑓𝑀𝑙 πΉπ‘œπ‘‘ π‘žπ‘™ (𝑦) πΉπ‘œπ‘‘(𝑦) 𝑦 𝑔 𝑧 = πΉπ‘€π‘π‘š 𝑓𝑀𝑙 (𝑔, πΉπ‘œπ‘‘ 𝑦 ) 𝑧 Correctness: 𝐸𝑓𝑑 𝑧 = 𝑔(𝑦) 𝐸𝑓𝑑 𝑑𝑙 𝑧 = 𝑔(𝑦) Input privacy: πΉπ‘œπ‘‘(𝑦) β‰… πΉπ‘œπ‘‘(0) Fully Homomorphic = Correctness for any efficient 𝑔 = Correctness for universal set β€’ NAND. (+,Γ—) over β„€ 2 (= binary π‘Œπ‘ƒπ‘†, 𝐡𝑂𝐸 ) β€’

  6. Trivial FHE? NOT what we were looking for… PKE β‡’ β€œFHE”: All work is relayed to receiver. - πΏπ‘“π‘§π‘•π‘“π‘œ and πΉπ‘œπ‘‘ : Same as PKE. - πΉπ‘€π‘π‘š 𝐺𝐼𝐹 𝑔, 𝑑 β‰œ (𝑔, 𝑑) 𝐺𝐼𝐹 (𝑔, 𝑑) β‰œ 𝑔(𝐸𝑓𝑑 𝑑𝑙 (𝑑)) - 𝐸𝑓𝑑 𝑑𝑙 = 𝑔 𝐸𝑓𝑑 𝑑𝑙 πΉπ‘œπ‘‘ 𝑦 = 𝑔(𝑦) πΉπ‘œπ‘‘ (𝑦) Compact FHE: 𝐸𝑓𝑑 time does not depend on ciphertext. β‡’ ciphertext length is globally bounded. In this talk (and in literature) FHE β‰œ Compact-FHE

  7. Trivial FHE? PKE β‡’ β€œFHE”: This β€œscheme” also completely reveals 𝑔 to the receiver. - πΏπ‘“π‘§π‘•π‘“π‘œ and πΉπ‘œπ‘‘ : Same as PKE. Can be a problem. - πΉπ‘€π‘π‘š 𝐺𝐼𝐹 𝑔, 𝑑 β‰œ (𝑔, 𝑑) 𝐺𝐼𝐹 (𝑔, 𝑑) β‰œ 𝑔(𝐸𝑓𝑑 𝑑𝑙 (𝑑)) - 𝐸𝑓𝑑 𝑑𝑙 Circuit Privacy: Receiver learns nothing about 𝑔 (except output). Compactness β‡’ Circuit Privacy (by complicated reduction) [GHV10] Circuit private FHE is not trivial to achieve – even non-compact. In this talk: Only care about compactness, no more circuit privacy.

  8. Applications In the cloud: β€’ Private outsourcing of computation. β€’ Near-optimal private outsourcing of storage (single-server PIR). [G09,BV11b] β€’ Verifiable outsourcing (delegation). [GGP11,CKV11] β€’ Private machine learning in the cloud. [GLN12,HW13] Secure multiparty computation: β€’ Low-communication multiparty computation. [AJLTVW12,LTV12] β€’ More efficient MPC. [BDOZ11,DPSZ12,DKLPSS12] Primitives: β€’ Succinct argument systems . [GLR11,DFH11,BCCT11,BC12,BCCT12,BCGT13,…] β€’ General functional encryption. [GKPVZ12] β€’ Indistinguishability obfuscation for all circuits. [GGHRSW13]

  9. Verifiable Outsourcing (Delegation) 𝑦 𝑦 𝑔 𝑔(𝑦) , 𝜌 What if the server is cheating? Can send wrong value of 𝑔(𝑦) . Need proof!

  10. FHE β‡’ Verifiable Outsourcing FHE β‡’ Verifiability and Privacy. 1. Verifiability with preprocessing under β€œstandard” assumptions: [GGP10, CKV10] . 2. Less standard assumptions but without preprocessing via SNARGs/SNARKs [DCL08,BCCT11,…] (uses FHE or PIR). Pre-FHE solutions: multiple rounds [K92] or random oracles [M94].

  11. FHE β‡’ Verifiable Outsourcing [CKV10] But preprocessing is as hard as computation! Preprocessing: 𝑑𝑙 , π‘žπ‘™ 𝑓𝑀𝑙 𝑑 0 = πΉπ‘œπ‘‘(0) 𝑨 0 = πΉπ‘€π‘π‘š(𝑔, 𝑑 0 ) 𝑑 𝑦 = πΉπ‘œπ‘‘ 𝑦 , 𝑑 0 𝑦 𝑔 𝑧 𝑦 , 𝑧 0 Verification: Check 𝑧 0 = 𝑨 0 ? Server executes Yes β‡’ output 𝐸𝑓𝑑(𝑧 𝑦 ) 𝑧 = πΉπ‘€π‘π‘š(𝑔, 𝑑) No β‡’ output βŠ₯ Idea: β€œCut and choose” 𝑑 𝑦 , 𝑑 0 look the same β‡’ cheating server will be caught w.p. Β½ (easily amplifiable)

  12. FHE β‡’ Verifiable Outsourcing [CKV10] Preprocessing: 𝑑𝑙 , π‘žπ‘™ 𝑓𝑀𝑙 𝑑 0 = πΉπ‘œπ‘‘(0) 𝑨 0 = πΉπ‘€π‘π‘š(𝑔, 𝑑 0 ) (𝑓𝑀𝑙 β€²β€² , πΉπ‘œπ‘‘ β€²β€² 𝑑 𝑦 ), (𝑓𝑀𝑙 β€² , πΉπ‘œπ‘‘ β€² 𝑑 0 ) 𝑦 𝑔 𝑧′′ 𝑦 , 𝑧′ 0 Verification: Check 𝐸𝑓𝑑′(𝑧′ 0 ) = 𝑨 0 ? Server executes 𝑧′ = πΉπ‘€π‘π‘šβ€²(πΉπ‘€π‘π‘š 𝑔,β‹… , 𝑑 β€² ) Yes β‡’ output 𝐸𝑓𝑑′′(𝐸𝑓𝑑 𝑧 𝑦 ) 𝑧′′ = πΉπ‘€π‘π‘šβ€²β€²(πΉπ‘€π‘π‘š 𝑔,β‹… , 𝑑 β€²β€² ) No β‡’ output βŠ₯ Server is not allowed to Idea: Outer layer keeps server β€œoblivious” of 𝑨 0 . know if we accept/reject! β‡’ Can recycle 𝑨 0 for future computations.

  13. FHE Timeline Basic scheme: Ideal cosets in polynomial rings. β‡’ Bounded-depth homomorphism. - Assumption: hardness of (quantum) apx. short 30 years of hardly scratching vector in ideal lattice. the surface: Bootstrapping: bounded-depth HE β‡’ full HE. β€’ Only-addition [RSA78, R79, GM82, But bootstrapping doesn’t apply to basic scheme... G84, P99, R05] . β€’ Addition + 1 multiplication - Need additional assumption: hardness of sparse [BGN05, GHV10] . subset-sum. β€’ Other variants [SYY99, IP07, MGH10] . … is it even possible?

  14. The FHE Challenge Make it simpler. Simplified basic scheme [vDGHV10,BV11a] - Under similar assumptions. Make it more secure. ? Make it practical. Optimizations [SV10,SS10,GH10]

  15. FHE without Ideals [BV11b] Linear algebra instead of polynomial rings Assumption: Apx. short vector in arbitrary lattices (via LWE). Shortest-vector Problem (SVP): Fundamental algorithmic problem – extensively studied. [LLL82,K86,A97,M98,AKS03,MR04,MV10]

  16. FHE without Ideals [BV11b] Linear algebra instead of polynomial rings Assumption: Apx. short vector in arbitrary lattices (via LWE). β€’ Basic scheme: noisy linear equations over β„€ π‘Ÿ . – Ciphertext is a linear function 𝑑(𝑦) s.t. 𝑑 𝑑𝑙 β‰ˆ 𝑛 . – Add/multiply functions for homomorphism. – Multiplication raises degree β‡’ use relinearization . β€’ Bootstrapping: Use dimension-modulus reduction to shrink ciphertexts. β€’ Concurrently [GH11]: Ideal Simpler: straightforward presentation. lattice based scheme without β€’ More secure: based on a standard assumption. squashing. β€’ Efficiency improvements.

  17. FHE without Ideals Follow-ups: β€’ [BGV12] : Improved parameters. – Even better security. – Improved efficiency in ring setting using β€œbatching”. – Batching without ideals in [BGH13]. β€’ [B12] : Improved security. – Security based on classical lattice assumptions. – Explained in blog post [BB12]. Various optimizations, applications and implementations: [LNV11, GHS12a, GHS12b, GHS12c, GHPS12, AJLTVW12, LTV12, DSPZ12, FV12, GLN12, BGHWW12,HW13 …]

  18. The β€œApproximate Eigenvector” Method [GSW13] Ciphertexts = Matrix Same assumption and keys as before – ciphertexts are different β€’ Basic scheme: Approximate eigenvector over β„€ π‘Ÿ . – Ciphertext is a matrix 𝐷 s.t. 𝐷 β‹… 𝑑𝑙 β‰ˆ 𝑛 β‹… 𝑑𝑙 . – Add/multiply matrices for homomorphism*. β€’ Bootstrapping: Same as previous schemes. β€’ Simpler: straightforward presentation. β€’ New and exciting applications β€œfor free”! IB -FHE, AB-FHE. β€’ Same security as [BGV12, B12]. β€’ Unclear about efficiency: some advantages, some drawbacks.

  19. Sequentialization [BV13] What is the best way to evaluate a product of 𝑙 numbers? Sequential Parallel X X c 1 X vs. X X c 2 X c 1 c 2 c 3 c 4 c 3 c 4 Conventional wisdom Actually better (if done right)

  20. Sequentialization [BV13] Barrington’s Theorem [B86]: Every depth 𝑒 computation can be transformed into a width-5 depth 4 𝑒 branching program . A sequential model of computation β€’ Better security – breaks barrier of [BGV12, B12,GSW13]. β€’ Using dimension-modulus reduction (from [BV11b]) β‡’ same hardness assumption as non homomorphic encryption. β€’ Short ciphertexts.

  21. Efficiency See also HElib Standard benchmark: AES128 circuit https://github.com/shaih/HElib β‰ˆ 5 min/input Implementations of [BGV12] by [GHS12c,CCKLLTY13] 2-years ago it was Limiting factors: 3 min/ gate [GH10] β€’ Circuit representation. β€’ Bootstrapping. β€’ Key size. New works [GSW13,BV13] address some of these issues, but have other drawbacks β‡’ To be practical, we need to improve the theory.

  22. Hybrid FHE 𝑑𝑙 , π‘žπ‘™ 𝑓𝑀𝑙 πΉπ‘œπ‘‘ π‘žπ‘™ (𝑦) 𝑦 𝑔 𝑧 = πΉπ‘€π‘π‘š 𝑓𝑀𝑙 (𝑔, πΉπ‘œπ‘‘ 𝑦 ) 𝐸𝑓𝑑 𝑑𝑙 𝑧 = 𝑔(𝑦) β€’ In known FHE encryption is slow and ciphertexts are long. β€’ In symmetric encryption (e.g. AES) these are better. Best of both worlds?

  23. Hybrid FHE πΉπ‘œπ‘‘ π‘žπ‘™ (𝑑𝑧𝑛) 𝑑𝑧𝑛 𝑑𝑙 , π‘žπ‘™ 𝑓𝑀𝑙 c= πΉπ‘œπ‘‘ 𝑑𝑧𝑛 (𝑦) 𝑦 𝑔 𝑧 = πΉπ‘€π‘π‘š 𝑓𝑀𝑙 (𝑔, 𝑧′) 𝐸𝑓𝑑 𝑑𝑙 𝑧 = 𝑔(𝑦) Easy to encrypt, ciphertext is short… But how to do Eval? Define: 𝑖 𝑨 = 𝑇𝑍𝑁_𝐸𝑓𝑑 𝑨 (𝑑 ) Server Computes: 𝑧 β€² = πΉπ‘€π‘π‘š 𝑓𝑀𝑙 (𝑖, πΉπ‘œπ‘‘ π‘žπ‘™ (𝑑𝑧𝑛)) β‡’ 𝑧 β€² = πΉπ‘œπ‘‘ 𝑖 𝑑𝑧𝑛 = πΉπ‘œπ‘‘ 𝑇𝑍𝑁_𝐸𝑓𝑑 𝑑𝑧𝑛 𝑑 = πΉπ‘œπ‘‘ π‘žπ‘™ (𝑦)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend