Top Banner
Polynomially Homomorphic Signatures Dan Boneh Stanford University Joint work with David Freeman
29

Polynomially Homomorphic Signatures

Mar 22, 2016

Download

Documents

zenda

Polynomially Homomorphic Signatures. Dan Boneh Stanford University Joint work with David Freeman. Recall: fully homomorphic e ncryption. s erver. PK, E pk [ x ]. E pk [x] E pk [ f(x) ]. E pk [ f(x) ]. For any function f [G’09, SV’10, vDGHV’10, …] - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Polynomially Homomorphic  Signatures

Polynomially Homomorphic Signatures

Dan BonehStanford University

Joint work with David Freeman

Page 2: Polynomially Homomorphic  Signatures

Recall: fully homomorphic encryption

server

PK, Epk[x]

Epk[ f(x) ]

For any function f [G’09, SV’10, vDGHV’10, …]

Lots of excitement around this concept (FHE)

Epk[x]

Epk[ f(x) ]

Page 3: Polynomially Homomorphic  Signatures

Can we do the same for signatures?

u1, 91.0, σ1

u2, 73.0, σ2

uk, 84.0, σk

signedgrades

untrusted server

SK 87.3, σf

σf = sig on ‹ “grades”, 91.0, ui ›

σ = sig on ‹ “grades”, 87.3, “f” ›

σf authenticates x = f(x1,…,xk) and f

“grades”, f:Xk→X

(e.g. mean)

Can further compute on σf: σgf sig on (t, g(f(m)), “gf” )

Page 4: Polynomially Homomorphic  Signatures

more generally: Predicate Signatures [ABCHSW’10]

• Homomorphic signature for relation P 2⊆ M × M’

• S can generate Alice’s sig on P-approved msgs. and nothing else

• Derived sigs should be “short” , “private” , and composable

m1, sign(sk,m1)

mk, sign(sk,mk) SK

(m , sig. on m)

⇔P*( (m1, …, mk), m )

S

Page 5: Polynomially Homomorphic  Signatures

Unifies three lines of research

• Quoting/Redaction [JMSW’02, …] : given (document, sig) anyone can derive asignature on substring or subset of document

• Linearly homomorphic (network coding) [KFM’04,…] :given signatures on vectors v1, …, vk in Fn

anyone can derive a sig on linear combination

• Transitive signatures [MR’02,…] :given sigs on nodes and edges of graph

G=(V,E) anyone can derive sig on (u,v) in V2 if there is a path from u to v in G

Page 6: Polynomially Homomorphic  Signatures

Back to Homomorphic Sigs: Syntax

• setup( 1n, k ): n=(sec. param), k=(max data size)

→ signing key sk, public key pk

function family f: Y X ⟶ ∈ F

• sign( sk, m ): output ( σ, random tag t )

• eval( pk, t, f, sig σ on m ): sig ⟶ σ’ on (t, f(m), “f”)

• verify( pk, (t, m, “f”), σ): 1 or 0⟶

to verify fresh sig use “id” function: f(x) = x

Page 7: Polynomially Homomorphic  Signatures

Desirable properties: data m with tag t

1. Certified computation (existential unforgeability):

given (σi, ti) Sign( sk, {m⟵ i,1 ... mi,k} ) for many i,

can’t compute σ’ on (ti, x, “f”) for x ≠ f(mi,1 … mi,k)

2. Private: Let σ’ be derived sig on (t, x, “f”) for x = f(m).

given x and f, sig. σ’ reveals “no other info” about m

3. Short: the length of σ’ is at most ( log |m| ) × λO(1)

4. Composable

Page 8: Polynomially Homomorphic  Signatures

Privacy: two definitions

Weak context hiding [BBD…’10] (a la witness indistinguishability):derived sig. does not help adv. distinguish compatible data sets

f(m1) = f(m2) derived sig on f(m1) derived sig on f(m2)

Strong context hiding [MR’02, ABCHSW’10] (a la zero knowledge):derived sigs look like fresh sigs (given sk and original sigs)

m: ( sk, sign(sk, m) , sign(sk, f(m) ) ( sk, sign(sk, m) , eval( pk, , f, sig σ on m ) )

Key difference: original sigs remain hidden in weak context hiding(in both defs adv. can be given the secret key)

Page 9: Polynomially Homomorphic  Signatures

Applications

Authenticated statistics: average, variance, …

Data mining: signed decision trees (ID3), signed SVM, …

Least squares

log (axis of orbit)

log (orbit period)earth mars

jupiter

venus

saturn

Page 10: Polynomially Homomorphic  Signatures

Signed least squares (ex: y = ax+b)

Consider data set { (xi, yi) } i=1,…k of integers.

Then:

a = f(x , y) / h(x, y) and b = g(x, y) / h(x, y)

where f, g, h are cubic integer polynomials

Using a cubic homomorphic scheme:

signed x1, …, xk, y1, …, yk signed f(x,y), g(x,y), h(x,y)

Page 11: Polynomially Homomorphic  Signatures

Constructions

Page 12: Polynomially Homomorphic  Signatures

Homomorphic systems

Encryption Signatures

Linear functionsLarge p: [P’99,…]

Small p: [GM’82,…]

[KFM’04,CJL’06,BFKW’09]

[BF’10, BF’11]

Polynomialsquadratic: [BGN’05, GHV’10]

small degree: [G’09]

[BF’11](small degree)

Poly-size circuits [G’09, vDGHV’10, SV’10] ????

Page 13: Polynomially Homomorphic  Signatures

Homomorphic systems

Encryption Signatures

Linear functionsLarge p: [P’99,…]

Small p: [GM’82,…]

[KFM’04,CJL’06,BFKW’09]

[BF’10, BF’11]

Polynomialsquadratic: [BGN’05, GHV’10]

small degree: [G’09]

[BF’11](small degree)

Poly-size circuits [G’09, vDGHV’10, SV’10] ????

Page 14: Polynomially Homomorphic  Signatures

Homomorphic systems

Encryption Signatures

Linear functionsLarge p: [P’99,…]

Small p: [GM’82,…]

[KFM’04,CJL’06,BFKW’09]

[BF’10, BF’11]

Polynomialsquadratic: [BGN’05, GHV’10]

small degree: [G’09]

[BF’11](small degree)

Poly-size circuits [G’09, …] ????

Page 15: Polynomially Homomorphic  Signatures

Linearly homomorphis sigs: options

• Homomorphic over (p large) : bilinear maps or lattices [KFM’04, CJL’06, BFKW’09, BF’11] (with and w/o RO)

• Homomorphic over : only lattices [BF’10, BF’11] (with and w/o RO)

• Homomorphic over : RSA-like [GKKR’10]

Motivation: authenticated averages, integrity for network coding.

Page 16: Polynomially Homomorphic  Signatures

Lattices in (e.g. m=512)

(B) = { Bs for all s in }B = b1 bm

Page 17: Polynomially Homomorphic  Signatures

Cosets of a lattice

A hard problem (ISIS): given and u find short v +u

Fact [GPV’08] : ISIS has a trapdoor

“short” basis of can sample ISIS solution for all u

Page 18: Polynomially Homomorphic  Signatures

Lattice-based signatures [GPV’08]

• pk = ; sk = (ISIS trapdoor for )

• sign( sk, ): (actually )

output = ( short vector in )

• verify( pk, , ): output 1 iff and “short”

Unforgeability from SIS (in RO model)

Page 19: Polynomially Homomorphic  Signatures

A linear lattice signature system (the intersection method)

• pk = 1, 2 ; sk = (trapdoor for )

• Let

• sign( sk, ): output short s.t.

(data)

(function)

• Message space is mi :

mi

𝚲𝟏+𝚲𝟐=ℤ𝒎

Page 20: Polynomially Homomorphic  Signatures

Homomorphic property

For f(m1,…,mk) = cimi define “f” = ciH(t,i)

Let f(m1, m2) = c1m1 + c2m2 and

← c1sig(m1) + c2sig(m2)

• Then: (c,c2) small short and

(data)

“f” (function)

Weak privacy: sampled from distr. param. by pk and f(m1,m2)

by itself, reveals nothing beyond f(m1,m2)

Page 21: Polynomially Homomorphic  Signatures

Unforgeabililty

Existential forger (type II) : given sig. on (t,m) (and others)

outputs sig. * on (t, m*, “f”) where m*f(m)

Thm: forger (type I or II) in RO short vectors in

Proof idea: simulator is given as input.

-- build with known trapdoor; used to answer queries.

-- given forgery * on (t,m*,“f”) do:

(i) build correct ’ on (t, f(m), “f”)

(ii) then *’ in , is non-zero and short

Page 22: Polynomially Homomorphic  Signatures

Polynomially homomorphic sigs

Let be the ring /() and , ideals in

for “short” : and

are well defined and “short”

• sign( sk, ): output short s.t.

(data)

(function)

• Now: can add and multiply sigs

increased norm bounded # of multiplications

But no privacy !

Page 23: Polynomially Homomorphic  Signatures

Summary

Encryption Signatures

Linear functionsLarge p: [P’99,…]

Small p: [GM’82,…]

[KFM’04,CJL’06,BFKW’09]

[BF’10]

Polynomialsquadratic: [BGN’05, GHV’10]

small degree: [G’09]

[BF’11](small degree)

Poly-size circuits [G’09, …] ????

Page 24: Polynomially Homomorphic  Signatures

Alternate approaches

Computationally Sound (CS) Proofs [Micali’00]

m, tsign( sk, (t, m) )

x=f(m), proof π

m, t

σ

t, f: Y → X

π: short proof of knowledge [V’07] that

(t, f, x) ∈ { (t, f, x; m, σ) s.t.

}

Need PCP machinery. Harder to compose [V’07]

Cannot build from falsifiable assumptions [GW’11]

x = f(m), andverify(PK, (t,m), σ) = 1

Page 25: Polynomially Homomorphic  Signatures

Many open problems

• Fully homomorphic sigs (a la Gentry’s bootstrapping)

• Or more than low-degree polynomials

• Polynomially homomorphic sigs:

• with privacy

• without random oracles (can do for linear sigs)

Page 26: Polynomially Homomorphic  Signatures

THE END

Page 27: Polynomially Homomorphic  Signatures

Restricted Homomorphic Encryption

Back in 2008: best homomorphic systems -- linear or quadratic operations

Prabhakaran and Rosulek [PR’08] :• Built systems that provably support

only linear operations.

More generally: can we build systems that support a restricted set of homomorphisms F ?

Page 28: Polynomially Homomorphic  Signatures

Applications [BSW’11]

Network guards on encrypted traffic:

With restricted FHE: guard can implement policy, but nothing

else

Goal: restricted FHE that keeps ciphertext size short

Guard 1 Guard 2

Page 29: Polynomially Homomorphic  Signatures

A New Construction [BSW’11]

• Properties: no ciphertext expansion underconstant iteration

• Tools: a recent short NIZK due to Groth [G’10]

Fully Hom. Enc.

func. family F

Hom. Enc.for F