Submitted by : Vipin Tejwani
6CSE-5 (CU)
12BCS1324
Introduction
 Homomorphic Encryption[1] is a form
of encryption which allows specific types of
computations to be carried out on ciphertext and
obtain an encrypted result which decrypted, matches
the result of operations performed on the plaintext.
 For instance, one person could add two encrypted
numbers and then another person could decrypt the
result, without either of them being able to find the
value of the individual numbers.
 Earlier there was Somewhat Homomorphic Encryption
technique. This encryption used low polynomial degree,
which was its big drawback.
 In June 2009, “Gentry” proposed the first efficient Fully
Homomorphic Encryption technique. It is efficient in the
sense that all algorithms run in polynomial time.
Timeline
 Nowadays:
 Craig Gentry presented a working implementation of
the fully homomorphic system, including the
bootstrapping function.
 Exists a practical application of homomorphic
encryption to a hybrid wireless network.
 Perform statistical tests over encrypted data such as
temperature, humidity, etc.
 There are also some practical implementations of
simplifications of this scheme over databases.
An Analogy: Alice’s Jewellery Store
 Alice’s workers need to assemble raw materials into
jewellery.
 But Alice is worried about theft
How can the workers process the raw materials without having access to
them?
 Alice puts materials in locked glove box
 For which only she has the key
 Workers assemble jewellery in the box.
 Alice unlocks box to get “results”.
Terminologies of Analogy
 Encrypt: putting things inside the box.
 Anyone can do this (imagine a mail-drop).
 Decrypt: Taking things out of the box.
 Only Alice can do it, requires the key.
 Evaluate: Assembling the jewelry,
i.e., performing operations.
Why Homomorphic Encryption
 Confidentiality problems
 Ability to compute over ciphertext instead of plaintext
 One could use information without knowing the content of
that information
 Privacy guaranteed
Homomorphic Encryption
 Crypto Magic
5 * 6 = CT(5) * CT(6) -> D ( k, E(k,5) * E(k,6) ) = 5 * 6
Homomorphic
Assumption
• Partially homomorphic/fully homomorphic
Homomorphic Encryption
 Partially homomorphic schemes
 RSA: CT(x)*CT(y) = (xe mod M) * (ye mod M) = xeye
mod M = (xy)e mod M = CT(x*y), where e is the
exponent key and M the modulus.
 M=3233;
 e=17;
 Partially homomorphic schemes
 RSA: Obtain 5*6 performing RSA(5)*RSA(6)
 RSA(5) = 517 (mod 3233) = 3086;
 RSA(6) = 617 (mod 3233) = 824;
 3068*824 = 2542864;
 RSA-1(2542864) = 25428642753 (mod 3233) = 30;
 5*6 = 30;
Homomorphic Encryption
Homomorphic Encryption
 Fully homomorphic Encryption[2]:
A cryptosystem that supports arbitrary computation on ciphertexts is known as
fully homomorphic encryption (FHE) and is far more powerful. Such a scheme
enables the construction of programs for any desirable functionality, which can
be run on encrypted inputs to produce an encryption of the result.
 Fully homomorphic Encryption schemes:
 Craig Gentry scheme
 Zaryab Khan scheme
Craig Gentry scheme
 Suppose a scheme with a “noise parameter” attached to
each CT;
 Encryption algorithm outputs a CT with a small noise
parameter (say less than n);
 Decryption algorithm only works if noise is less than some
parameter N >> n;
 To compute E(a+b) / E(a*b), include noise;
 This gives a “somewhat homomorphic” scheme.
Craig Gentry scheme (integers)
 Craig Gentry scheme’s homomorphic assumptions
 Addition: c1 + c2 = b1+ b2 + 2(x1+x2) + (k1+k2)p = b1 xor
b2 + 2x + kp
 Decryption works if (b1+2x1) + (b2+2x2) is in [-N,N]
 Multiplication: c1*c2 = b1*b2 + 2(b1x2 + b2x1 + 2x1x2) + kp
= b1*b2 + 2x + kp
 Decryption works if (b1+2x1) * (b2+2x2) is in [-N,N]
Craig Gentry scheme (integers)
 Addition example: 4+4
 CT(100):
 CT(1) = 1 + 2*3 + 5*3 = 22
 CT(0) = 0 + 2*3 + 5*3 = 21
 CT(0) = 0 + 2*3 + 5*3 = 21
 D(44 42 42):
 D(44) = 44 mod 3 = 2
 D(42) = 42 mod 3 = 0
 D(42) = 42 mod 3 = 0
22 21 21
+22 21 21
44 42 42
1000 = 8 = 4+4
Craig Gentry scheme (integers)
 Multiplication example: 4*4
 CT(100):
 CT(1) = 1 + 2*3 + 5*3 = 22
 CT(0) = 0 + 2*3 + 5*3 = 21
 CT(0) = 0 + 2*3 + 5*3 = 21
 D(484 924 1365 882 441):
 D(484) = 484 mod 3 = 1
 D(924) = 924 mod 3 = 0
 D(1365) = 1365 mod 3 = 0
 D(882) = 882 mod 3 = 0
 D(441) = 441 mod 3 = 0
22 21 21
×22 21 21
484 924 1365 882 441
10000 = 16 = 4*4
HELib
 Helib[4] is a software library that implements
homomorphic encryption (HE), specifically the
Brakerski-Gentry-Vaikuntanathan (BGV) scheme,
focusing on effective use of the Smart ciphertext
packing techniques and the Gentry-Halevi-Smart
optimizations.
HELib
 Developed by Shai Halevi (2013)
○ Implementation of Brakerski-Gentry-Vaikuntanathan
scheme.
○ Using many optimizations in literature for speed.
 Performance:
Advantages
 Cloud security.
 Working with information stored in databases.
 Queries to search engines.
 Spam Filtering.
Problems Solved
 Wireless Sensor/Mesh Network.
 Problems related to personal records like medical
records:
○ Analyze disease / treatment without disclosing them
○ Search for DNA markers without revealing DNA.
 HELib[4] from IBM.
https://github.com/shaih/HElib/tree/master/src
Abstract: Homomorphic Encryption
Applied to Cloud Computing Security
 Current Cloud Computing(supposedly The Next Big
Thing) lacks security.
 Security and confidentiality needs to be protected
among several enterprises.
 Homomorphic Encryption solves these problems
 Craig Gentry Fully Homomorphic Encryption
evaulates arbitrary number of operations and thus can
calculate any type of encrypted data.
 We can outsource the calculations on confidential data
to the Cloud server, keeping the secret key that can
decrypt the result of the calculation.
References
 [1]. Hacker Lexicon: What Is Homomorphic Encryption?
www.wired.com/2014/11/hacker-lexicon-homomorphic-encryption/
 [2]. A Fully Homomorphic Encryption Scheme
www.crypto.stanford.edu/craig/craig-thesis.pdf
 [3]. Homomorphic Encryption - MIT Technology Review
www2.technologyreview.com/article/423683/homomorphic-encryption/
 [4]. IBM takes a big new step in cryptography practical homomorphic
encryption
nakedsecurity.sophos.com/2013/05/05/ibm-takes-big-new-step-in-cryptography/
Homomorphic Encryption
Homomorphic Encryption

Homomorphic Encryption

  • 1.
    Submitted by :Vipin Tejwani 6CSE-5 (CU) 12BCS1324
  • 2.
    Introduction  Homomorphic Encryption[1]is a form of encryption which allows specific types of computations to be carried out on ciphertext and obtain an encrypted result which decrypted, matches the result of operations performed on the plaintext.  For instance, one person could add two encrypted numbers and then another person could decrypt the result, without either of them being able to find the value of the individual numbers.
  • 3.
     Earlier therewas Somewhat Homomorphic Encryption technique. This encryption used low polynomial degree, which was its big drawback.  In June 2009, “Gentry” proposed the first efficient Fully Homomorphic Encryption technique. It is efficient in the sense that all algorithms run in polynomial time.
  • 4.
  • 5.
     Nowadays:  CraigGentry presented a working implementation of the fully homomorphic system, including the bootstrapping function.  Exists a practical application of homomorphic encryption to a hybrid wireless network.  Perform statistical tests over encrypted data such as temperature, humidity, etc.  There are also some practical implementations of simplifications of this scheme over databases.
  • 6.
    An Analogy: Alice’sJewellery Store  Alice’s workers need to assemble raw materials into jewellery.  But Alice is worried about theft How can the workers process the raw materials without having access to them?
  • 7.
     Alice putsmaterials in locked glove box  For which only she has the key  Workers assemble jewellery in the box.  Alice unlocks box to get “results”.
  • 8.
    Terminologies of Analogy Encrypt: putting things inside the box.  Anyone can do this (imagine a mail-drop).  Decrypt: Taking things out of the box.  Only Alice can do it, requires the key.  Evaluate: Assembling the jewelry, i.e., performing operations.
  • 9.
    Why Homomorphic Encryption Confidentiality problems  Ability to compute over ciphertext instead of plaintext  One could use information without knowing the content of that information  Privacy guaranteed
  • 10.
    Homomorphic Encryption  CryptoMagic 5 * 6 = CT(5) * CT(6) -> D ( k, E(k,5) * E(k,6) ) = 5 * 6 Homomorphic Assumption • Partially homomorphic/fully homomorphic
  • 11.
    Homomorphic Encryption  Partiallyhomomorphic schemes  RSA: CT(x)*CT(y) = (xe mod M) * (ye mod M) = xeye mod M = (xy)e mod M = CT(x*y), where e is the exponent key and M the modulus.  M=3233;  e=17;
  • 12.
     Partially homomorphicschemes  RSA: Obtain 5*6 performing RSA(5)*RSA(6)  RSA(5) = 517 (mod 3233) = 3086;  RSA(6) = 617 (mod 3233) = 824;  3068*824 = 2542864;  RSA-1(2542864) = 25428642753 (mod 3233) = 30;  5*6 = 30; Homomorphic Encryption
  • 13.
    Homomorphic Encryption  Fullyhomomorphic Encryption[2]: A cryptosystem that supports arbitrary computation on ciphertexts is known as fully homomorphic encryption (FHE) and is far more powerful. Such a scheme enables the construction of programs for any desirable functionality, which can be run on encrypted inputs to produce an encryption of the result.  Fully homomorphic Encryption schemes:  Craig Gentry scheme  Zaryab Khan scheme
  • 14.
    Craig Gentry scheme Suppose a scheme with a “noise parameter” attached to each CT;  Encryption algorithm outputs a CT with a small noise parameter (say less than n);  Decryption algorithm only works if noise is less than some parameter N >> n;  To compute E(a+b) / E(a*b), include noise;  This gives a “somewhat homomorphic” scheme.
  • 15.
    Craig Gentry scheme(integers)  Craig Gentry scheme’s homomorphic assumptions  Addition: c1 + c2 = b1+ b2 + 2(x1+x2) + (k1+k2)p = b1 xor b2 + 2x + kp  Decryption works if (b1+2x1) + (b2+2x2) is in [-N,N]  Multiplication: c1*c2 = b1*b2 + 2(b1x2 + b2x1 + 2x1x2) + kp = b1*b2 + 2x + kp  Decryption works if (b1+2x1) * (b2+2x2) is in [-N,N]
  • 16.
    Craig Gentry scheme(integers)  Addition example: 4+4  CT(100):  CT(1) = 1 + 2*3 + 5*3 = 22  CT(0) = 0 + 2*3 + 5*3 = 21  CT(0) = 0 + 2*3 + 5*3 = 21  D(44 42 42):  D(44) = 44 mod 3 = 2  D(42) = 42 mod 3 = 0  D(42) = 42 mod 3 = 0 22 21 21 +22 21 21 44 42 42 1000 = 8 = 4+4
  • 17.
    Craig Gentry scheme(integers)  Multiplication example: 4*4  CT(100):  CT(1) = 1 + 2*3 + 5*3 = 22  CT(0) = 0 + 2*3 + 5*3 = 21  CT(0) = 0 + 2*3 + 5*3 = 21  D(484 924 1365 882 441):  D(484) = 484 mod 3 = 1  D(924) = 924 mod 3 = 0  D(1365) = 1365 mod 3 = 0  D(882) = 882 mod 3 = 0  D(441) = 441 mod 3 = 0 22 21 21 ×22 21 21 484 924 1365 882 441 10000 = 16 = 4*4
  • 18.
    HELib  Helib[4] isa software library that implements homomorphic encryption (HE), specifically the Brakerski-Gentry-Vaikuntanathan (BGV) scheme, focusing on effective use of the Smart ciphertext packing techniques and the Gentry-Halevi-Smart optimizations.
  • 19.
    HELib  Developed byShai Halevi (2013) ○ Implementation of Brakerski-Gentry-Vaikuntanathan scheme. ○ Using many optimizations in literature for speed.  Performance:
  • 20.
    Advantages  Cloud security. Working with information stored in databases.  Queries to search engines.  Spam Filtering.
  • 21.
    Problems Solved  WirelessSensor/Mesh Network.  Problems related to personal records like medical records: ○ Analyze disease / treatment without disclosing them ○ Search for DNA markers without revealing DNA.  HELib[4] from IBM. https://github.com/shaih/HElib/tree/master/src
  • 22.
    Abstract: Homomorphic Encryption Appliedto Cloud Computing Security  Current Cloud Computing(supposedly The Next Big Thing) lacks security.  Security and confidentiality needs to be protected among several enterprises.  Homomorphic Encryption solves these problems
  • 23.
     Craig GentryFully Homomorphic Encryption evaulates arbitrary number of operations and thus can calculate any type of encrypted data.  We can outsource the calculations on confidential data to the Cloud server, keeping the secret key that can decrypt the result of the calculation.
  • 24.
    References  [1]. HackerLexicon: What Is Homomorphic Encryption? www.wired.com/2014/11/hacker-lexicon-homomorphic-encryption/  [2]. A Fully Homomorphic Encryption Scheme www.crypto.stanford.edu/craig/craig-thesis.pdf  [3]. Homomorphic Encryption - MIT Technology Review www2.technologyreview.com/article/423683/homomorphic-encryption/  [4]. IBM takes a big new step in cryptography practical homomorphic encryption nakedsecurity.sophos.com/2013/05/05/ibm-takes-big-new-step-in-cryptography/