Download - Inaccessible Entropy

Transcript
Page 1: Inaccessible Entropy

Inaccessible Entropy

Iftach HaitnerMicrosoft Research

Omer Reingold Weizmann Institute

Hoeteck WeeQueens College, CUNY

Salil Vadhan Harvard University

Page 2: Inaccessible Entropy

outline

Entropy

Secrecy & Pseudoentropy

Unforgeability & Inaccessible Entropy

Applications

Page 3: Inaccessible Entropy

Def: The Shannon entropy of r.v. X is

H(X) = ExÃX[log(1/Pr[X=x)]

H(X) = “Bits of randomness in X (on avg)”

0 · H(X) · log |Supp(X)|

Entropy

H(X ) = Exà X [log(1=Pr[X = x])]HHH(X ) =

X concentratedon single point

X uniform onSupp(X)

Page 4: Inaccessible Entropy

Conditional Entropy

H(X|Y) = EyÃY[H(X|Y=y)]

Chain Rule: H(X,Y) = H(Y) + H(X|Y)

H(X)-H(Y) · H(X|Y) · H(X)

H(X|Y) = 0 iff 9 f X=f(Y).

Page 5: Inaccessible Entropy

Worst-Case Entropy Measures

Min-Entropy: H1(X) = minx log(1/Pr[X=x])

Max-Entropy: H0(X) = log |Supp(X)|

H1(X) · H(X) · H0(X)

Page 6: Inaccessible Entropy

outline

Entropy

Secrecy & Pseudoentropy

Unforgeability & Inaccessible Entropy

Applications

Page 7: Inaccessible Entropy

Perfect Secrecy & Entropy

Def [Sh49]: Encryption scheme (Enc,Dec) has perfect secrecy if 8 m,m’ 2 {0,1}n

EncK(m) & EncK(m’) are identically distributed for a random key K.

Thm [Sh49]: Perfect secrecy ) |K| ¸ n

Page 8: Inaccessible Entropy

Perfect Secrecy ) |K|¸ n

Proof:

Perfect secrecy) (M,EncK(M)) ´ (Un,EncK(M))

for M,Un à {0,1}n

) H(M|EncK(M)) = n

Decryptability) H(M|EncK(M),K) = 0) H(M|EncK(M)) · H(K).

Page 9: Inaccessible Entropy

Computational Secrecy

Def [GM82]: Encryption scheme (Enc,Dec) has computational secrecy if 8 m,m’ 2 {0,1}n

EncK(m) & EncK(m’) are computationally indistinguishable.

) can have |K| ¿ n.

Page 10: Inaccessible Entropy

Where Shannon’s Proof Breaks

Computational secrecy) (M,EncK(M)) ´c (Un,EncK(M))

for M,Un à {0,1}n

) “Hpseudo(M|EncK(M))” = n

Decryptability) H(M|EncK(M)) · H(K).

Key point: can have Hpseudo(X) À H(X)e.g. X = G(Uk) for PRG G : {0,1}k! {0,1}n

Page 11: Inaccessible Entropy

Pseudoentropy

Def [HILL90]: X has pseudoentropy ¸ k iff there exists a random variable Y s.t.1. Y ´c X2. H(Y) ¸ k

Page 12: Inaccessible Entropy

Application of Pseudoentropy

Thm [HILL90]: 9 OWF ) 9 PRG

Proof outline:

OWF

X with pseudo-min-entropy ¸ H0(X)+poly(n)

X with pseudoentropy ¸ H(X)+1/poly(n)

PRG

hardcore bit [GL89]+hashing

repetitions

hashing

Page 13: Inaccessible Entropy

outline

Entropy

Secrecy & Pseudoentropy

Unforgeability & Inaccessible Entropy

Applications

Page 14: Inaccessible Entropy

Unforgeability

Crypto is not just about secrecy.

Unforgeability: security properties saying that it has hard for an adversary to generate “valid” messages.– Unforgeability of MACs, Digital Signatures– Collision-resistance of hash functions– Binding of commitment schemes

Page 15: Inaccessible Entropy

Ex: Collision-resistant Hashing

Shrinking: H(X|Y,F) ¸ k

Collision Resistance: From A’s perspective, X is determined by Y,F ) “accessible” entropy 0

A BF Ã F

F = { f : {0,1}n ! {0,1}n-k}

F

Y

X

XÃ {0,1}n

Y=F(X)

Page 16: Inaccessible Entropy

Ex: Collision-resistant Hashing

Collision Resistance: 9 function ¼s.t. X = ¼(F,Y,S1) except w/negligible prob.

A* BF Ã F

F = { f : {0,1}n ! {0,1}n-k}

F

Y

X

toss coins S1

toss coins S2

Page 17: Inaccessible Entropy

Ex: Collision-resistant Hashing

Collision Resistance: 9 function ¼s.t. X 2 {¼(F,Y,S1)} [ f-1(Y)c

A* BF Ã F

F = { f : {0,1}n ! {0,1}n-k}

F

Y

X

toss coins S1

toss coins S2

Page 18: Inaccessible Entropy

Measuring Accessible Entropy

Goal: A useful entropy measure to capture possibility that Hacc(X) ¿ H(X)

1st attempt: X has accessible entropy at most k if there is a random variable Y s.t.

1. Y ´c X2. H(Y) · k

Not useful! every X is indistinguishable from some Y of entropy polylog(n).

Page 19: Inaccessible Entropy

Inaccessible Entropy

Idea: Protocol (A,B) has inaccessible entropy if

H(A’s messages from B’s point of view) >

H(A*’s messages from A*’s point of view)

Real Entropy

Accessible Entropy

Page 20: Inaccessible Entropy

Real Entropy

A BB1

A1

B2

A2

Bm

Am

Def: The real entropy of (A,B) is

i H(Ai | B1,A1,…,Bi)

Page 21: Inaccessible Entropy

Accessible Entropy

A* BB1

A1

B2

A2

Bm

Am

Tosses coins Si

Sends message Ai

Privately outputs justification Wi (e.g. consistent coins of honest A)

coins S1

coins S2

coins Sm

What A* does at each round

W1

W2

Wm

Page 22: Inaccessible Entropy

Accessible Entropy

A* BB1

A1

B2

A2

Bm

Am

coins S1

coins S2

coins Sm

W1

W2

Wm

Def: (A,B) has accessible entropy at most k if for every PPT A*

i H(Ai|B1,S1,B2,S2,…,Si-1,Bi) · k

Remarks1. Needs

adjustmentin case A*

outputs invalidjustification.

2. Unbounded A* can achieve real entropy.

neverAssume

Page 23: Inaccessible Entropy

Ex: Collision-resistant Hashing

Real Entropy = H(Y|F)+H(X|Y,F)

= H(X|F)

= n

A BF Ã F

F = { f : {0,1}n ! {0,1}n-k}

F

Y

X

XÃ {0,1}n

Y=F(X)

Page 24: Inaccessible Entropy

Ex: Collision-resistant Hashing

Accessible Entropy = H(Y|F)+H(X|F,S1)

· (n-k) + neg(n)

A* BF Ã F

F = { f : {0,1}n ! {0,1}n-k}

F

Y

X

toss coins S1

toss coins S2

Page 25: Inaccessible Entropy

outline

Entropy

Secrecy & Pseudoentropy

Unforgeability & Inaccessible Entropy

Applications

Page 26: Inaccessible Entropy

Commitment Schemes

Page 27: Inaccessible Entropy

m

Commitment Schemes

COMMIT STAGE

S R

Page 28: Inaccessible Entropy

m

R

Commitment Schemes

S

REVEAL STAGE

Page 29: Inaccessible Entropy

Commitment Schemes

COMMIT STAGE

accept/reject

S R

m2{0,1}n

REVEAL STAGE(m,K)

Page 30: Inaccessible Entropy

Security of Commitments

COMMIT STAGE

accept/reject

S R

m2{0,1}n

REVEAL STAGE(m,K)

Hiding– Statistical– Computational

Binding– Statistical– Computational

COMMIT(m) & COMMIT(m’) indistinguishableeven to cheating R*

COMMIT(m) & COMMIT(m’) indistinguishableeven to cheating R*

Even cheating S*

cannot reveal(m,K), (m’,K’) with mm’

Even cheating S*

cannot reveal(m,K), (m’,K’) with mm’

Page 31: Inaccessible Entropy

Statistical Security?

COMMIT STAGE

accept/reject

S R

m2{0,1}t

REVEAL STAGE(m,K)

Hiding– Statistical– Computational

Binding– Statistical– Computational

Impossible!

Page 32: Inaccessible Entropy

Statistical Binding

COMMIT STAGE

accept/reject

S R

m2{0,1}n

REVEAL STAGE(m,K)

Hiding– Statistical– Computational

Binding– Statistical– Computational

Thm [HILL90,Naor91]: One-way functions ) Statistically Binding Commitments

Page 33: Inaccessible Entropy

Statistical Hiding

COMMIT STAGE

accept/reject

S R

m2{0,1}n

REVEAL STAGE(m,K)

Hiding– Statistical– Computational

Binding– Statistical– Computational

Thm [HNORV07]: One-way functions ) Statistically Hiding Commitments

Too Complicate

d!

Page 34: Inaccessible Entropy

Our Results I

Much simpler proof that OWF) Statistically Hiding Commitmentsvia accessible entropy.

Conceptually parallels [HILL90,Naor91] construction of PRGs & Statistically Binding Commitments from OWF.

“Nonuniform” version achieves optimal round complexity, O(n/log n) [HHRS07]

Page 35: Inaccessible Entropy

Our Results II

Thm: Assume one-way functions exist. Then:

NP has constant-round parallelizable ZK proofs with “black-box simulation”

m

constant-round statistically hiding commitments exist.

( * due to [GK96,G01], novelty is )

Page 36: Inaccessible Entropy

Statistically Hiding Commitments& Inaccessible Entropy

COMMIT STAGES R

MÃ{0,1}n

REVEAL STAGEM

Statistical Hiding:

H(M|C) = n - neg(n)

K

C

Page 37: Inaccessible Entropy

Statistically Hiding Commitments& Inaccessible Entropy

COMMIT STAGES* R

REVEAL STAGEM

Statistical Hiding:

H(M|C) = n - neg(n)

Comp’l Binding:

For every PPT S*

H(M|C,S1) = neg(n)

K

Ccoins S1

coins S2

Page 38: Inaccessible Entropy

OWF ) Statistically Hiding Commitments: Our Proof

OWF

(A,B) with real min-entropy ¸ accessible entropy+poly(n)

(A,B) with real entropy ¸ accessible entropy+log n

statistically hiding commitment

interactive hashing [NOVY92,HR07]

repetitions

cut & choose

(interactive) hashing [DHRS07]+UOWHFs [NY89,Rom90]

“m-phase” commitment

Page 39: Inaccessible Entropy

Cf. OWF ) Statistically Binding Commitment [HILL90,Nao91]

OWF

X with pseudo-min-entropy ¸ H0(X)+poly(n)

X with pseudoentropy ¸ H(X)+1/poly(n)

PRG

hardcore bit [GL89]+hashing

repetitions

hashing

Statistically binding commitment

expand output & translate

Page 40: Inaccessible Entropy

OWF ) Statistically Hiding Commitments: Our Proof

OWF

(A,B) with real min-entropy ¸ accessible entropy+poly(n)

(A,B) with real entropy ¸ accessible entropy+log n

statistically hiding commitment

interactive hashing [NOVY92,HR07]

repetitions

cut & choose

(interactive) hashing [DHRS07]+UOWHFs [NY89,Rom90]

“m-phase” commitment

Page 41: Inaccessible Entropy

OWF ) Inaccessible Entropy

A BChooselinearly indep.B1,…,Bm à {0,1}m

f : {0,1}n ! {0,1}m OWF

B1

h B1,Yi

XÃ {0,1}n

Y=f(X)

Real Entropy = n

Can show: Accessible Entropy · n-log n

Bm

h Bm,Yi

X

Page 42: Inaccessible Entropy

Claim: Accessible Entropy · n-log n

A* B

f : {0,1}n ! {0,1}m OWF.

B1

h B1,Yi

Bm

h Bm,Yi

X

Bt

h Bt,Yi

For simplicity, assume |f-1(y)| = 2k 8 y2 Im(f)

entropy · k

entropy · t = n-k-2log n

Claim: entropy = neg(n)

Page 43: Inaccessible Entropy

Claim: Accessible Entropy · n-log n

A* B

f : {0,1}n ! {0,1}m OWF.

B1

h B1,Yi

Bt

h Bt,Yi

For simplicity, assume |f-1(y)| = 2k 8 y2 Im(f).

t=n-k-2log n

Claim: 9 at most oneconsistent Y s.t. A* canproduce a preimage(except w/neg prob,)

Page 44: Inaccessible Entropy

Claim: Accessible Entropy · n-log n

A* B

f : {0,1}n ! {0,1}m OWF.

B1

h B1,Yi

Bt

h Bt,Yi

For simplicity, assume |f-1(y)| = 2k 8 y2 Im(f).

t=n-k-2log n

Claim: 9 at most oneconsistent Y s.t. A* canproduce a preimage(except w/neg prob,)

Im(f)poly(n)

Interactive Hashing Thms

[NOVY92,HR07]:A* can “control” at most 1 consistent value

Page 45: Inaccessible Entropy

Claim: Accessible Entropy · n-log n

A* B

f : {0,1}n ! {0,1}m OWF.

B1

h B1,Yi

Bm

h Bm,Yi

X

Bt

h Bt,Yi

For simplicity, assume |f-1(y)| = 2k 8 y2 Im(f)

entropy · k

entropy · t = n-k-2log n

entropy = neg(n)

Analysis holdswhenever |f-1(Y)| ¼ 2k

Choice of k contributesentropy · log n

Page 46: Inaccessible Entropy

Conclusion

Complexity-based cryptography is possible because of gaps between real & computational entropy.

Secrecypseudoentropy > real entropy

Unforgeabilityaccessible entropy < real entropy

What else can we do with inaccessible entropy?

Page 47: Inaccessible Entropy

Research Directions

Remove “parallelizable” condition from ZK result.

Use inaccessible entropy for new understanding/constructions of MACS and digital signatures.

Formally unify statistical hiding & statistical binding.