Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a...

22
Proofs of Storage from Homomorphic Identification Protocols Giuseppe Ateniese Johns Hopkins Seny Kamara Microsoft Research Jonathan Katz University of Maryland

Transcript of Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a...

Page 1: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Proofs of Storage from

Homomorphic Identification

Protocols

Giuseppe Ateniese – Johns Hopkins

Seny Kamara – Microsoft Research

Jonathan Katz – University of Maryland

Page 2: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Cloud Storage

Asiacrypt '09 2

Page 3: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Cloud Storage

Advantages

Lower startup costs

Location independence

Device independence

Higher reliability

Better scalability

Disadvantages

confidentiality

integrity

Asiacrypt '09 3

Q: how do we verify the integrity of outsourced data?

Page 4: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Naïve Solutions

Asiacrypt '09 4

? H( )

Linear in length of file

?

H( )

Server can just store hash

H( )

Page 5: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Proofs of Storage [ABC+07,JK07]

(pk, sk) ← Gen(1k)

(st, f’) ← Encode(sk, f)

c ← Chall(pk)

π := Proof(pk, f, c)

b := Vrfy(pk, st, c, π)

Asiacrypt '09 5

c

(pk, sk, st)

f’

π

(pk, st)

Page 6: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Our Goals

Functionality

arbitrary data

unbounded number of

challenges

public verifiability

Client storage

O(1)

Server storage

small O(1) overhead

Communication complexity

O(1)

Locality

Sub-linear

Asiacrypt '09 6

Page 7: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Related Work

[Juels-Kaliski07] Privately verifiable, bounded challenges, encrypted data

[Ateniese et al 07] scheme #1: privately verifiable, RSA , ROM

scheme #2: publicly verifiable, RSA, ROM

O(n)-size challenges (w/o RO), O(1)-size proofs

unbounded challenges, arbitrary data

[Shacham-Waters08] scheme #1: privately verifiable, PRFs

scheme #2: publicly verifiable, bilinear CDH, ROM

O(n)-size challenges (w/o RO), O(1)-size proofs

unbounded challenges, arbitrary data

7 Asiacrypt '09

Page 8: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Related Work

[Dodis-Vadhan-Wichs09]

general methodology for constructing PoS

privately verifiable, bounded challenges, arbitrary data

O(1)-size challenges (w/o RO), O(1)-size proofs

derandomization of hitting set generators using expander graphs

Our contributions

general methodology for constructing PoS

scheme based on factoring (in ROM)

O(1)-size challenges (w/o RO), (O(k) + log n)-size proofs

publicly verifiable, unbounded challenges, arbitrary data

Asiacrypt '09 8

Page 9: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

How to Construct a Publicly-Verifiable PoS

Asiacrypt '09 9

Public-key

HLA

PoS

w/ compact

proofs

PoS

w/ compact

proofs &

challenges [Ateniese et al. 07

Shacham-Waters08

Dodis-Vadhan-Wichs09]

[Dodis-Vadhan-Wichs09]

Hom. ID

protocol

[this work]

[this work]

ex: Shoup*

New scheme based on

factoring

Page 10: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

3-Move ID Protocol

Protocol between a prover and a verifier

“P convinces V he knows the secret key corresponding

to a public key…”

…without revealing any (additional) information about the

secret key”

P (pk, sk) V (pk)

10 Asiacrypt '09

α := Comm(r)

β ← ChSp

ɣ := Resp(pk, sk, r, β)

b := Vrfy(pk, α, β, ɣ)

Page 11: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Homomorphic ID Protocol

Comb1 and Comb3 s.t. for all c ∈ ℤ2𝑘

Completeness

Vrfy(pk, Comb1(α, c), c, β,Comb3(ɣ, c)) = 1

Unforgeability (loosely speaking)

no PPT adv. can find c, µ’ ≠ c, β and ɣ’ s.t.

Vrfy(pk, Comb1(α, c), µ’, ɣ’) = 1

Asiacrypt '09 11

α1

β1

ɣ1

P (pk, sk)

b1 := Vrfy(pk, α1, β1, ɣ1)

V (pk)

α2

β 2

ɣ2

b2 := Vrfy(pk, α2, β2, ɣ2)

Page 12: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Public-key HLA from hID

Asiacrypt '09 12

b := Vrfy(pk, Comb1(α, c), µ, τ)

t =(ɣ1, …, ɣn)

f = (f1, …, fn)

ɣi := Resp(pk, sk, H(st,i), fi)

c ← [ℤ𝑝]𝑛

µ =: c,f

τ := Comb3(t , c)

RO: H

hID: Setup, Comm, Chall, Resp

& Comb1, Comb3

αi := Comm(pk; H(st,i))

st ← {0,1}k

(pk,sk) ← Setup(1k)

α := (α1, …, αn)

p: k-bit prime

Page 13: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

How to Construct a Publicly-Verifiable PoS

Asiacrypt '09 13

Public-key

HLA

PoS

w/ compact

proofs

PoS

w/ compact

proofs &

challenges [Ateniese et al. 07

Shacham-Waters08

Dodis-Vadhan-Wichs09]

[Dodis-Vadhan-Wichs09]

Hom. ID

protocol

[this work]

[this work]

ex: Shoup*

New scheme based on

factoring

Page 14: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Compact PoS from hID

Asiacrypt '09 14

b := Vrfy(pk, Comb1(α, c), µ, τ)

t =(ɣ1, …, ɣn)

f = (f1, …, fn)

c ← [ℤ𝑝]𝑛

µ =: c,f

τ := Comb3(t , c)

RO: H

hID: Setup, Comm, Chall, Resp

& Comb1, Comb3

PRF: F into ℤ𝑝

α := (α1, …, αn)

K← {0,1}k

c := (FK(1), …, FK(n))

st ← {0,1}k

(pk,sk) ← Setup(1k)

p: k-bit prime

Page 15: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Properties of a PoS

Completeness

if server “knows” file then Vrfy outputs 1

Security

if Vrfy outputs 1, then server “knows” file

Q: How do we formalize “knowledge”?

Knowledge extractor [Feige-Fiat-Shamir88,Feige-Shamir90,Bellare-Goldreich92]

Witness extended emulation [Lindell03]

“there exists exp. poly-time extractor K that extracts file, and

view from any PPT adversary that outputs valid proofs”

Asiacrypt '09 15

Page 16: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Extraction w/o PRF

K sends random vectors to server and rewinds until:

1. n challenge vectors (c1, …,cn) are linearly Independent

2. n proofs (µi, τ𝑖) that are “valid” , i.e., Vrfy outputs 1

HLA guarantees that µi = ci,f w/ overwhelming prob.

Asiacrypt '09 16

b := Vrfy(pk, st, µi, τi)

ci

µi , τi K

Page 17: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Extraction w/o PRF

solves system of n equations in n unknowns for f

c11f1 + … + c1nfn = µ1

cn1f1 + … + cnnfn = µn

Asiacrypt '09 17

b := Vrfy(pk, st, µi, τi)

ci

µi , τi K

Page 18: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Extraction w/ PRF

[ABC07,SW08]

can we replace random vectors with PRF key?

how do we reduce security to PRF if adversary sees key?

We show:

PRF vs. non-uniform adversaries suffices to prove

extraction

exploit the fact that such PRFs produce linearly

independent vectors

Asiacrypt '09 18

Page 19: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

PoS Based on Factoring

Gen(1k)

N = pq

p = q = 3 mod 4

y ← QRN

pk = (N,y) and sk = (p,q)

Asiacrypt '09 19

Page 20: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

PoS based on Factoring

Asiacrypt '09 20

τ23𝑘= αi

ci ∙ 𝑦μ mod N

t =(ɣ1, …, ɣn)

f = (f1, …, fn)

K← {0,1}k

µ =: c,f

τ := γici mod N

RO: H into JN(+1)

PRF: F into ℤ𝑝

αi := H(st,i)

st ← {0,1}k

(pk,sk) ← Setup(1k)

α := (α1, …, αn)

ɣi ← ±H st,i ∙yfi

23k

mod N

c := (FK(1), …, FK(n))

p: k-bit prime

Page 21: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Efficiency

Client storage: O(1)

Server storage overhead: O(n)

Communication: O(k) + log n

Asiacrypt '09 21

Page 22: Proofs of Storage from Homomorphic Identification Protocolsseny/slides/PoS-AC09.pdfProperties of a PoS Completeness if server “knows” file then Vrfy outputs 1 Security if Vrfy

Questions

Asiacrypt '09 22