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

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

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

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