Enc PK - WordPress.com

advertisement
Andrej Bogdanov
Chinese University of Hong Kong
ON THE PROVABLE SECURITY OF
HOMOMORPHIC ENCRYPTION
based on joint work with Chin Ho Lee
Northeastern Unversity
Bertinoro Summer School | July 2014
Public-key bit encryption
b
Alice
EncPK(b)
PK
EncPK(b)
Bob
SK PK
DecSK(
b
)
message indistinguishability
(PK, EncPK(0)) and (PK, EncPK(1))
are computationally indistinguishable
El Gamal encryption
g, h in some large cyclic group
PK = ( g, h ) such that gSK = h
EncPK(b) = ( gr, 2bhr ) where r random
DecSK(x, y) = b such that xSK = 2b y
Homomorphism of encryptions
EncPK(b) = ( gr, 2bhr )
strongly homomorphic
EncPK(b) EncPK(b’) and EncPK(b + b’)
are identically distributed
weakly homomorphic
DecSK(EncPK(b) EncPK(b’)) = b + b’
Does P ≠ NP imply cryptography?
requires average-case hardness
of distinguishing encryptions
provided SAT is worst-case hard
Cryptography from lattices
If short vectors in certain lattices are
worst-case hard to find, then we have...
one-way functions
Ajtai
but we can find them
public-key encryption
in NP ∩ coNP
Ajtai-Dwork
“somewhat” homomorphic encryption
Regev, Peikert, Gentry, Brakerski and Vaikutanathan, ...
Reductions
How to prove message indistinguishability?
?
x  SAT
q1
a1
q2
a2
YES/NO
(PK, EncPK(b))
distinguisher
biased towards b
From reductions to proof systems
L
R
distinguisher
verifier
prover
randomness for R
transcript
is it correct?
for every query (PK, C)
answer b
are they correct?
randomness r
s.t. EncPK(b, r) = C
OK
Brassard
From reductions to proof systems
Conclusion
A reduction from L to distinguishing Enc
implies that L is in NP ∩ coNP
Yes, but under implicit assumption that
queries always have a unique answer
Goldreich and Goldwasser
Brassard’s assumption
for every PK
what if
EncPK(1)
EncPK(0)
query
EncPK(1)
EncPK(0)
EncPK(1)
EncPK(0)
Restricting the reduction
For general encryptions, best we can say
If reduction is nonadaptive then L is in
AM ∩ coAM
Feigenbaum and Fortnow, B. and Trevisan,
Akavia Goldreich Goldwasser and Moshkovitz
Our result
Let f be a “polynomially sensitive” function
If Enc has weak homomorphic evaluator
for f, then L is in AM ∩ coAM
Reduction can be adaptive, queries arbitrary
If reduction has constant query
complexity, then L is in statistical zeroknowledge
Sensitivity of functions
f:
0
1100
1
0110
0
1
0101
sens0 f(0100) = 2
sens0 f = maxx sens0 f(x)
0100
f: {0, 1}n → {0, 1} is polynomially sensitive
if sens0 f, sens1 f are at least nW(1)
previous works
Arbitrary encryptions,
nonadaptive reductions
Homomorphic encryptions,
arbitrary reductions
SAT
SZK
P
Homomorphic encryptions,
reductions of constant
query complexity
Rerandomization
The ability to map a ciphertext into an i.i.d
ciphertext without knowing the secret key
El Gamal example
PK = ( g, h )
such that
gSK = h
C = ( gr, 2bhr )
RerPK(C) = C ∙ ( gr’, hr’ )
is i.i.d with C
Enc(1)
Enc(1)
Enc(1)
Enc(b)
Enc(0)
Enc(0)
Rer
Enc(0)
Rerandomization from evaluation
H
Enc(b)
strong homomorphic evaluator for majority
Enc(0)
Enc(0)
Enc(0)
Enc(0)
Rerandomization from evaluation
H
To H, Enc(0) indistinguishable from Enc(0)
so output of H must forget most of Enc(0)
Rerandomization from evaluation
Lemma
If H is a strong homomorphic evaluator
for majority on k bits,
then (Enc(b), Rer(Enc(b)) is √c/k-close to a
pair of independent encryptions of b.
We prove a weaker version for weak
homomorphic evaluators and any sensitive f.
Distinguishing rerandomizations
Encryption can be broken using
rerandomization and an SZK oracle
Rer( Enc(b) ) vs. Enc(0)
If b = 0, they are statistically close
If b = 1, they must be statistically far
so they can be distinguished in SZK
The rest of the proof
Since we can decrypt in SZK, L can be
solved with reduction + SZK oracle
So L is in BPPSZK ⊆ AM ⋂ coAM
Mahmoody and Xiao
For weak homomorphism and general f,
not sure if true; we give new proof system
Quality of rerandomization
Lemma
If H is a homomorphic evaluator for
majority on k bits,
then (Enc(b), Rer(Enc(b)) is √c/k-close to a
pair of independent encryptions of b.
For strong homomorphic evaluation, we
can make this exponentially small.
H
Enc(b)
Enc(1)
Enc(b)
Enc(0)
Improving the rerandomization
Algorithm:
Apply H iteratively t times.
Enc(1)
H
Enc(b)
Enc(0)
H
Enc(b)
H
H
H
Enc(b)
Enc(1)
Enc(0)
Enc(0)
Enc(1)
Enc(0)
Enc(0)
Enc(1)
Enc(1)
Enc(1)
Enc(b)
Enc(0)
Analysis
H
Enc(1)
H
H
H
Enc(1)
Enc(1)
Enc(0)
Enc(0)
Enc(1)
Enc(0)
Enc(0)
Enc(1)
Enc(1)
Enc(1)
Enc(1)
Enc(0)
Analysis
Analysis
If we recurse t times, original Enc(b) could
be any one of 2t inputs
Applying lemma, distinguishing advantage
drops to O(√c/2t)
Value of t is determined by quality of H
Statistical distance between output of H and
actual encryption
Rerandomization theorem
f : any function except for AND, OR, NOT
Assume f has strong homomorphic
evaluator with quality 2-h
then there is a rerandomization with
statistical error 2-W(h).
Download