homomorphic encryption for arithmetic of approximate
play

Homomorphic Encryption for Arithmetic of Approximate Numbers Jung - PowerPoint PPT Presentation

Homomorphic Encryption for Arithmetic of Approximate Numbers Homomorphic Encryption for Arithmetic of Approximate Numbers Jung Hee Cheon , Andrey Kim , Miran Kim , Yongsoo Song Seoul National University University of


  1. Homomorphic Encryption for Arithmetic of Approximate Numbers Homomorphic Encryption for Arithmetic of Approximate Numbers Jung Hee Cheon ⋆ , Andrey Kim ⋆ , Miran Kim † , Yongsoo Song ⋆ ⋆ Seoul National University † University of California - SD 2017. 12. 04. ASIACRYPT 2017 1 / 19

  2. Homomorphic Encryption for Arithmetic of Approximate Numbers Background Homomorphic Encryption ct 1 ← Enc ( m 1 ) , . . . , ct k ← Enc ( m k ). ct ∗ ← Eval ( f , ct 1 , . . . , ct k ) Dec ( ct ∗ ) = f ( m 1 , . . . , m k ). = ⇒ 2 / 19

  3. Homomorphic Encryption for Arithmetic of Approximate Numbers Background Can we compute the significant digits of four 32-bit integers in a second? How long does it take to multiply 1024 floating-point numbers? Homomorphic Rounding on Encrypted Plaintexts? 3 / 19

  4. Homomorphic Encryption for Arithmetic of Approximate Numbers Background Can we compute the significant digits of four 32-bit integers in a second? How long does it take to multiply 1024 floating-point numbers? Homomorphic Rounding on Encrypted Plaintexts? 3 / 19

  5. Homomorphic Encryption for Arithmetic of Approximate Numbers Background Bit-wise Encryption Input values have η -bit of precision. The depth of a circuit grows linearly on input precision: L = Ω( η ). e.g. A single mult with η = 64 requires a bootstrapping. Fast Bootstrapping [DM15]: (Boot-time) × (# gate) > 1min. 4 / 19

  6. Homomorphic Encryption for Arithmetic of Approximate Numbers Background Word Encryption Bitsize of plaintext grows exponentially on the depth. Base Encoding [DGL+15,CSVW16] High-Precision [CLPX17] 5 / 19

  7. Homomorphic Encryption for Arithmetic of Approximate Numbers Background Our Contributions Support approximate addition, multiplication & rounding-off. Enable batching techinque with complex plaintexts. Evaluate analytic functions (e.g. sigmoid function) 6 / 19

  8. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea A New Decryption Structure Embracing Noise ct = Enc sk ( m ) satisfies [ � ct , sk � ] Q = m + e for some small error e . Inserted noise is considered to be a part of the computational error from approximate arithmetic. The decrypted value m + e is an approximate to the original message. The precision of a plaintext is almost preserved. e.g. m = 1 . 23 ∗ 10 4 , e = − 17. m + e = 12283 ≈ m . 7 / 19

  9. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea A New Decryption Structure Homomorphic Operations and Precision [ � ct i , sk � ] Q ≈ m i & | m i | ≪ Q m 1 · (1 ± r 1 ) + m 2 · (1 ± r 2 ) = ( m 1 + m 2 ) · (1 ± max i r i ). m 1 · (1 ± r 1 ) ∗ m 2 · (1 ± r 2 ) + e mult ≈ m 1 m 2 · (1 ± ( r 1 + r 2 )). Optimal in the sense of precision loss. 8 / 19

  10. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Rounding Rescaling Process for Plaintext Rounding Divide the ciphertext modulus & encrypted plaintext by the base p . ct (mod Q ℓ = p ℓ ) �→ RS ( ct ) = ⌊ p − 1 · ct ⌉ (mod Q ℓ − 1 = p ℓ − 1 ). [ � RS ( ct ) , sk � ] Q ℓ − 1 ≈ p − 1 · [ � ct , sk � ] Q ℓ The relative error is almost preserved. 9 / 19

  11. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Rounding Leveled Structure Evaluation of degree d circuit requires L = log d levels. Precision loss < ( L + 1) bits. log Q = O ( L · log p ) : Linear on depth & precision bits 10 / 19

  12. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Packing Method Batching Technique Cyclotomic ring structure R = Z [ X ] / (Φ M ( X )) with N = φ ( M ). Previous Method: ◮ Φ M ( X ) = � i F i ( X ) (mod t ) & CRT : R t → � i Z [ X ] / ( F i ( X )). A plaintext is a small polynomial in R . ◮ Evaluate the roots of Φ M ( X ) in algebraic extension C ◮ Φ M ( X ) = � M ( X − ζ j ) over C for ζ = exp( − 2 π i / M ). j ∈ Z ∗ Decoding Map: ◮ { ζ 0 , . . . , ζ N / 2 } : Non-conjugate primitive roots of unity. ◮ m ( X ) �→ ( m ( ζ j )) 0 ≤ j < N / 2 . 11 / 19

  13. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Packing Method Example Decoding map: m ( X ) �→ ( m ( ζ j )) 0 ≤ j < N / 2 ∈ C N / 2 . Z ∗ M = � 5 , − 1 � when M is a power-of-two. Set ζ j = ζ 5 j for ζ = exp( − 2 π i / M ) and 0 ≤ j < N / 2. Example: M = 8 (Φ M ( X ) = X 4 + 1) and ∆ = 128. √ √ invDFT 2 X + 22 X 2 − 17 1 2 X 3 ) � z = (1 . 2 − 3 . 4 i , 5 . 6 + 7 . 8 i ) �− − − − → 10 (34 − 39 ⌊ ( · ) × ∆ ⌉ m ( X ) = 435 − 706 X + 282 X 2 − 308 X 3 . �− − − − − → m ( ζ ) = 128(1 . 1998 .. + i ∗ 3 . 3984 .. ) , m ( ζ 5 ) = 128(5 . 5970 .. + i ∗ 7 . 8047 .. ). 12 / 19

  14. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Funcionality Rotation Let m ( X ) = � ct , sk � = b ( X ) + a ( X ) · s ( X ) (mod Q ) for ct = ( b ( X ) , a ( X )) and sk = (1 , s ( X )). Decoding map: m ( X ) �→ ( m ( ζ j )) 0 ≤ j < N / 2 ∈ C N / 2 for ζ j = ζ 5 j . Slot Rotation ◮ ct ′ = ( b ( X 5 ) , a ( X 5 )) encrypts m ( X 5 ) w.r.t. sk ′ = (1 , s ( X 5 )). ◮ m ( X 5 ) �→ ( m ( ζ j +1 )) 0 ≤ j < N / 2 . Slotwise Conjugtation ◮ ct ′′ = ( b ( X − 1 ) , a ( X − 1 )) encrypts m ( X − 1 ) w.r.t. sk ′′ = (1 , s ( X − 1 )). ◮ m ( X − 1 ) �→ ( m ( ζ j )) 0 ≤ j < N / 2 . 13 / 19

  15. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Funcionality Functionalities Packing multiple complex numbers (max. N / 2) in a single ciphertext. a 0 a 1 a ℓ · · · a i − 1 a 0 · · · a i · · · · · · a ℓ ⊗ · · · b 0 b 1 b ℓ a i a ℓ a 0 a i − 1 · · · · · · · · · · · · a ℓ ∗ b ℓ a 0 ∗ b 0 a 1 ∗ b 1 14 / 19

  16. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Funcionality Functionalities Packing multiple complex numbers (max. N / 2) in a single ciphertext. Addition, multiplication, and rounding in a SIMD manner. a 0 a 1 a ℓ · · · a i − 1 a 0 · · · a i · · · · · · a ℓ ⊗ · · · b 0 b 1 b ℓ a i a ℓ a 0 a i − 1 · · · · · · · · · · · · a ℓ ∗ b ℓ a 0 ∗ b 0 a 1 ∗ b 1 14 / 19

  17. Homomorphic Encryption for Arithmetic of Approximate Numbers Main Idea Funcionality Functionalities Packing multiple complex numbers (max. N / 2) in a single ciphertext. Addition, multiplication, and rounding in a SIMD manner. Rotation & Conjugation a 0 a 1 a ℓ · · · a i − 1 a 0 · · · a i · · · · · · a ℓ ⊗ · · · b 0 b 1 b ℓ a i a ℓ a 0 a i − 1 · · · · · · · · · · · · a ℓ ∗ b ℓ a 0 ∗ b 0 a 1 ∗ b 1 14 / 19

  18. Homomorphic Encryption for Arithmetic of Approximate Numbers Experimental Results Implementation Sigmoid Function 1 Sigmoid g 7 ( x ) 0 . 5 0 − 8 − 6 − 4 − 2 0 2 4 6 8 Globol Approximation on [-8,8]. 1 Compute y = g 7 ( x ) homomorphically. | y − 1+exp( − x ) | ≤ 0 . 03. Input Total Amortized Depth Precision time time 16 bits 3 0.43s 0.10ms 15 / 19

  19. Homomorphic Encryption for Arithmetic of Approximate Numbers Experimental Results Implementation Multiplicative Inverse Exponential function: exp x . Trigonometric functions: cos x , sin x , . . . Multiplicative inverse. ◮ Let y = 1 − x with | y | ≤ 1 / 2. ◮ x − 1 ≈ (1 + y )(1 + y 2 ) · · · (1 + y 2 L − 1 ) = x − 1 · (1 ± 2 − 2 L ). Input Total Amortized Depth Precision time time 16 bits 4 0.45s 0.11ms 16 / 19

  20. Homomorphic Encryption for Arithmetic of Approximate Numbers Experimental Results Library iDASH Genomic S&P Protection Competition Task3: HE based Logistic Regression Model Learning Binary Classification based on 18 features of 1579 records. Dataset: 1422 for training & 157 for prediction. Learning: 10 min, with 2% of AUC loss (On a machine with Xeon CPUs). 17 / 19

  21. Homomorphic Encryption for Arithmetic of Approximate Numbers Conclusion HE Standardization Activity http://homomorphicencryption.org White papers about APIs, Security, and Applications. 2nd: MIT in Mar. 2018 (1st workshop in Jul. 2017). Homomorphic Encryption for Arithmetic of Approximate Numbers HEAAN ( 慧 眼 ). Available at http://github.com/kimandrik/HEAAN . 18 / 19

  22. Homomorphic Encryption for Arithmetic of Approximate Numbers Conclusion Protecting REAL Data with HE Comming Soon! 19 / 19

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