Homomorphic encryption is the conversion of data into cipher text that can be analyzed and worked with as if it were still in its original form.
Homomorphic encryption enables complex mathematical operations to be performed on encrypted data without compromising the encryption.
2. Homomorphic Encryption Scheme
• Homomorphic encryption is the conversion of
data into cipher text that can be analyzed and
worked with as if it were still in its original
form.
• Homomorphic encryption enables complex
mathematical operations to be performed on
encrypted data without compromising the
encryption.
3. Use Cases
• Privacy Preserving Medical Image Analysis
• Secure Load Balancing over vast regions
• Analysis over sensitive Education data
• Machine Learning as a Service
4. • By denoting E{⋅} as the homomorphic encryption
function and f (⋅) as the computation function, it
holds that:
• E{f (a, b)} = f (E{a}, E{b})
• An example of homomorphic encryption is the
RSA algorithm.
• Consider a modulus N and an exponent e.The
encryption of a message m is given by E{m} =
memod N.
• The homomorphic property holds, since:
• E{m1 ⋅ m2} = (m1 ⋅ m2)e mod N = (m1)e mod N ⋅
(m2)e mod N = E{m1} ⋅ E{m2}
5. Examples of HE
• An example of homomorphic encryption is the
RSA algorithm.
• Other examples of homomorphic encryption
schemes are
• The ECC encryption [133],
• The ElGamal cryptosystem [150] and
• The Pailler cryptosystem [151].
6. Pros & Cons
Advantages
• Can perform inference on
encrypted data, so the
model owner never sees
the client's private data and
therefore cannot leak it or
misuse it.
• Doesn't require interactivity
between the data and
model owners to perform
the computation.
Disadvantages
• Computationally expensive.
• Restricted to certain kinds
of calculations.
7. • Depending on the operation f (⋅) that can be
performed on the encrypted data, the
homomorphic encryption scheme can be defined
as additive or multiplicative.
• Additive homomorphism makes it possible to
compute sums, subtractions, and scalar
multiplication of its operands; multiplicative
homomorphism allows computation of the
product of its operands.
• The RSA algorithm is an example of multiplicative
homomorphic encryption.
• An example of additive homomorphic encryption
is the Pailler cryptosystem.
8. • Given a modulus n, a shared random integer
g, and user-generated random integers r1 and
r2, the homomorphic property is:
• E{m1} ⋅ E{m2} = (gm1 rn1 mod n2) ⋅
(gm2 rn2 mod n2)
• = (gm1+m2 )(r1r2)n mod n2 = E{m1 + m2}
9. Types of homomorphic encryption
• Homomorphic encryption schemes that are
either additive or multiplicative are termed
“partially homomorphic”.
• If both addition and multiplication are
supported, a cryptosystem is called “fully
homomorphic”.
• Additionally “somewhat homorphic”.
10. FHE
• Fully homomorphic cryptosystems preserve the
ring structure of the plaintexts and, therefore,
enable more complex procedures to be used.
• The investigation of fully homomorphic
encryption schemes is still in its early stages and
no practical scheme with acceptable performance
has been found (e.g., in terms of decryption
delay).
• Application of these schemes to IoT scenarios is a
rich research topic.
11. SWHE
• hey tend to be based on schemes that are
capable of "somewhat" homomorphic
encryption. These schemes can only perform a
limited number of successive multiplication
and addition operations on ciphertext before
the results become unreliable and impossible
to decrypt. This limitation arises directly from
the way these systems guarantee security by
relying on noise or error to make relatively
simple problems computationally intractable.
12. Limitations of Fully Homomorphic
Encryption
• Poor performance: Between slow computation
speed or accuracy problems, fully homomorphic
encryption remains commercially infeasible for
computationally-heavy applications.
• General consensus in the research community is
that fully homomorphic encryption research still
has many years to go, but it is useful today in
conjunction with other privacy-enhancing
technologies like secure multiparty computation.