faster homomorphic linear transformations in helib
play

Faster Homomorphic Linear Transformations in HElib Shai Halevi - PowerPoint PPT Presentation

Faster Homomorphic Linear Transformations in HElib Shai Halevi (IBM) Victor Shoup (IBM & NYU) Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more


  1. Faster Homomorphic Linear Transformations in HElib Shai Halevi (IBM) Victor Shoup (IBM & NYU)

  2. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  3. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  4. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  5. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  6. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  7. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  8. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  9. Fully Homomorphic Encryption allows for arbitrary computation on encrypted data In this talk, the focus is on linear transformations . . . more specifically, applying a fixed, public linear transformation to a vector encrypted in the BGV (Brakerski-Gentry-Vaikuntanathan) cryptosystem We present new algorithms and their implementation in HElib We get speed ups of up to ≈ 75 × One important application: bootstrapping ➪ in Chen and Han’s new bootstrapping algorithm (Eurocrypt 2018), most of the time is spent performing a change of basis ➪ speed up of up to ≈ 6 × for bootstrapping as a whole

  10. BGV encryption R = Z [ X ] / (  n ( X )) Plaintext space: R p : = R/pR ( p = small prime) Ciphertext space: R q : = R/qR ( n, p, q pairwise coprime) c ∈ R 2 × 1 Ciphertext: ¯ q s = ( 1 , s 1 ) ∈ R 2 × 1 Secret key: ¯ , where s 1 has small norm q Decryption: 〈 ¯ s, ¯ c 〉 = pε + m ���� “noise”

  11. BGV encryption R = Z [ X ] / (  n ( X )) Plaintext space: R p : = R/pR ( p = small prime) Ciphertext space: R q : = R/qR ( n, p, q pairwise coprime) c ∈ R 2 × 1 Ciphertext: ¯ q s = ( 1 , s 1 ) ∈ R 2 × 1 Secret key: ¯ , where s 1 has small norm q Decryption: 〈 ¯ s, ¯ c 〉 = pε + m ���� “noise”

  12. BGV encryption R = Z [ X ] / (  n ( X )) Plaintext space: R p : = R/pR ( p = small prime) Ciphertext space: R q : = R/qR ( n, p, q pairwise coprime) c ∈ R 2 × 1 Ciphertext: ¯ q s = ( 1 , s 1 ) ∈ R 2 × 1 Secret key: ¯ , where s 1 has small norm q Decryption: 〈 ¯ s, ¯ c 〉 = pε + m ���� “noise”

  13. BGV encryption R = Z [ X ] / (  n ( X )) Plaintext space: R p : = R/pR ( p = small prime) Ciphertext space: R q : = R/qR ( n, p, q pairwise coprime) c ∈ R 2 × 1 Ciphertext: ¯ q s = ( 1 , s 1 ) ∈ R 2 × 1 Secret key: ¯ , where s 1 has small norm q Decryption: 〈 ¯ s, ¯ c 〉 = pε + m ���� “noise”

  14. BGV encryption R = Z [ X ] / (  n ( X )) Plaintext space: R p : = R/pR ( p = small prime) Ciphertext space: R q : = R/qR ( n, p, q pairwise coprime) c ∈ R 2 × 1 Ciphertext: ¯ q s = ( 1 , s 1 ) ∈ R 2 × 1 Secret key: ¯ , where s 1 has small norm q Decryption: 〈 ¯ s, ¯ c 〉 = pε + m ���� “noise”

  15. BGV encryption R = Z [ X ] / (  n ( X )) Plaintext space: R p : = R/pR ( p = small prime) Ciphertext space: R q : = R/qR ( n, p, q pairwise coprime) c ∈ R 2 × 1 Ciphertext: ¯ q s = ( 1 , s 1 ) ∈ R 2 × 1 Secret key: ¯ , where s 1 has small norm q Decryption: 〈 ¯ s, ¯ c 〉 = pε + m ���� “noise”

  16. Representation of ciphertext space R q Coefficient representation DoubleCRT representation • q = q 1 · · · q ℓ , where each q  is a small prime such that Z q  contains n th roots of unity • A polynomial in R q is reduced modulo each q  , and then evaluated at the primitive n th roots of unity in Z q  Addition of ciphertexts in DoubleCRT representation takes linear time . . . so does multiplication by a constant Switching between DoubleCRT and coefficient representations: somewhat expensive (requires CRT and FFT)

  17. Representation of ciphertext space R q Coefficient representation DoubleCRT representation • q = q 1 · · · q ℓ , where each q  is a small prime such that Z q  contains n th roots of unity • A polynomial in R q is reduced modulo each q  , and then evaluated at the primitive n th roots of unity in Z q  Addition of ciphertexts in DoubleCRT representation takes linear time . . . so does multiplication by a constant Switching between DoubleCRT and coefficient representations: somewhat expensive (requires CRT and FFT)

  18. Representation of ciphertext space R q Coefficient representation DoubleCRT representation • q = q 1 · · · q ℓ , where each q  is a small prime such that Z q  contains n th roots of unity • A polynomial in R q is reduced modulo each q  , and then evaluated at the primitive n th roots of unity in Z q  Addition of ciphertexts in DoubleCRT representation takes linear time . . . so does multiplication by a constant Switching between DoubleCRT and coefficient representations: somewhat expensive (requires CRT and FFT)

  19. Representation of ciphertext space R q Coefficient representation DoubleCRT representation • q = q 1 · · · q ℓ , where each q  is a small prime such that Z q  contains n th roots of unity • A polynomial in R q is reduced modulo each q  , and then evaluated at the primitive n th roots of unity in Z q  Addition of ciphertexts in DoubleCRT representation takes linear time . . . so does multiplication by a constant Switching between DoubleCRT and coefficient representations: somewhat expensive (requires CRT and FFT)

  20. Representation of ciphertext space R q Coefficient representation DoubleCRT representation • q = q 1 · · · q ℓ , where each q  is a small prime such that Z q  contains n th roots of unity • A polynomial in R q is reduced modulo each q  , and then evaluated at the primitive n th roots of unity in Z q  Addition of ciphertexts in DoubleCRT representation takes linear time . . . so does multiplication by a constant Switching between DoubleCRT and coefficient representations: somewhat expensive (requires CRT and FFT)

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