Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 •...

24
Based on joint work with Daniel Slamanig Key-Homomorphic Signatures and Applications to Simulation Sound Extractable NIZK David Derler, Graz University of Technology March , —Paderborn University

Transcript of Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 •...

Page 1: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Based on joint work with Daniel Slamanig

Key-Homomorphic Signaturesand Applications to Simulation Sound Extractable NIZK

David Derler, Graz University of TechnologyMarch 22, 2017—Paderborn University

Page 2: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Key-Homomorphic Signatures

Example 1

• Given two signatures σ1 and σ2 on m• Valid under pk1 and pk2⇒ Publicly compute σ′ valid under pk′ = pk1 ◦ pk2

Example 2

• Given a signature σ on m valid under pk• Adapt σ to σ′ valid under pk′

• Well defined relationship between pk and pk′

Extremely simple, yet very powerful!

• Never explicitly studied before

1

Page 3: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Related Work

Implicit usage in signatures schemes:

• Security under related (re-randomized) keys [BCM11,BPT12]

• DSS under randomizable keys [FKM+16]

• DSS from canonical identification schemes [FF13,KMP16]

Other directions:

• Key-homomorphic encryption [AHI11, Rot11, BGG+14, DMS16]

• (Constrained) key-homomorphic PRFs [BLMR13, BP14, BFP+15]

• Key-homomorphic projective hashes [BJL16, BJL17]

2

Page 4: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Outline

Results in [DS16]

publicly key-hom. DSS

adaptable DSS

perfectly adaptable DSS

tight key-pre�xed MU-EUF-CMA [GMS02, MS04]

Ring Signatures [RST01]

(weak) SSE NIZK [Gro06]

Universal Designated Veri�er DSS [SBWP03]

Multisignatures [IN83]

SoKs [CL06]

s

k7→pk

hom.DSS

key-succinct multikey hom. DSS

[CL06]

RSR canonical ID schemes [KMP16]+ RO

+ NIWI

+ NIWI

+ NIWI

3

Page 5: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Outline

Covered in this talk

publicly key-hom. DSS

adaptable DSS

perfectly adaptable DSS

tight key-pre�xed MU-EUF-CMA [GMS02, MS04]

Ring Signatures [RST01]

(weak) SSE NIZK [Gro06]

Universal Designated Veri�er DSS [SBWP03]

Multisignatures [IN83]

SoKs [CL06]

s

k7→pk

hom.DSS

key-succinct multikey hom. DSS

[CL06]

RSR canonical ID schemes [KMP16]+ RO

+ NIWI

+ NIWI

+ NIWI

4

Page 6: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Outline

Variants of key-homomorphisms

publicly key-hom. DSS

adaptable DSS

perfectly adaptable DSS

tight key-pre�xed MU-EUF-CMA [GMS02, MS04]

Ring Signatures [RST01]

(weak) SSE NIZK [Gro06]

Universal Designated Veri�er DSS [SBWP03]

Multisignatures [IN83]

SoKs [CL06]

s

k7→pk

hom.DSS

key-succinct multikey hom. DSS

[CL06]

RSR canonical ID schemes [KMP16]+ RO

+ NIWI

+ NIWI

+ NIWI

5

Page 7: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Secret-Key-to-Public-Key Homomorphism

Secret keys and public keys live in groups G and H

• Group homomorphism µ : H→ G

∀ sk, sk′ ∈ H : µ(sk+ sk′) = µ(sk) + µ(sk′)

+ For all (sk, pk)← KeyGen(1κ) it must hold that

pk = µ(sk)

Keys may also be vectors:

• Straightforward extension• Not made explicit for compactness

6

Page 8: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Φ+-Key-Homomorphic Signatures

Class of functions Φ+

• Representing linear shifts• Functions identified by “shift amount” ∆

Conventional signature scheme

+ Secret-key-to-public-key homomorphism+ Additional PPT algorithm

(pk′,σ′)← Adapt(pk,m,σ,∆)

⇒ Shift signature from pk to pk′ = pk · µ(∆)

Question: possible to have Adapt′ taking µ(∆) instead of ∆?

• No: efficient Adapt′ would imply an UUF-NMA adversary

7

Page 9: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Adaptability of Signatures

Identical distribution of fresh and adapted signatures

• “Initial” signature on m under sk not revealed

Adapt(pk,m, Sign(sk,m),∆) (pk · µ(∆), Sign(sk+ ∆,m))

?

8

Page 10: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Perfect Adaption of Signatures

Identical distribution of fresh and adapted signatures

• Even when seeing the initial signatures σ ← Sign(sk,m)

(σ, Adapt(pk,m,σ,∆)) (σ, pk · µ(∆), Sign(sk+ ∆,m))

?

9

Page 11: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Publicly Key-Homomorphic Signatures

Conventional signature scheme with

• Secret-key-to-public-key homomorphism+ Additional algorithm Combine

(pk, σ)← Combine((pki)ni=1,m, (σi)ni=1)

• Combine multiple signatures on m under distinct keys• Combined key pk =

∏ni=1 pki

10

Page 12: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Examples of Key-Homomorphic Schemes

Publicly key-homomorphic schemes

• BLS signatures [BLS04]• CL signature variant [CHP12]• Waters’ signatures with shared params [Wat05, BFG13]

Adaptable schemes

• Schnorr signatures [Sch91]• Katz-Wang signatures [KW03, GJKW07]

Perfectly adaptable schemes

• BLS signatures [BLS04]• CL signature variant [CHP12]• Waters’ signatures with shared params [Wat05, BFG13]• Pointcheval-Sanders signatures [PS16]

11

Page 13: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Outline

Application to SSE NIZK

publicly key-hom. DSS

adaptable DSS

perfectly adaptable DSS

tight key-pre�xed MU-EUF-CMA [GMS02, MS04]

Ring Signatures [RST01]

(weak) SSE NIZK [Gro06]

Universal Designated Veri�er DSS [SBWP03]

Multisignatures [IN83]

SoKs [CL06]

s

k7→pk

hom.DSS

key-succinct multikey hom. DSS

[CL06]

RSR canonical ID schemes [KMP16]+ RO

+ NIWI

+ NIWI

+ NIWI

12

Page 14: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Non-Interactive Proof Systems

NP-language L w.r.t. relation R

• x ∈ L ⇐⇒ ∃ w : (x,w) ∈ R

Non-interactive proof system

Proof π

(x,w) ∈ Rπ ← Proof(x,w) x

?∈ L

X/× ← Verify(x,π)

13

Page 15: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Non-Interactive Proof Systems - Properties

Completeness

• Honestly computed proof for (x,w) ∈ R will always verify

Soundness

• Infeasible to produce valid proof for x /∈ L

Extractability

• Stronger variant of soundness• Extract witness from valid proof (using trapdoor)

14

Page 16: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Non-Interactive Proof Systems - Properties contd.

Witness Indistinguishability (WI)

• Distinguish proofs for same x w.r.t. different w,w′

Zero-Knowledge (ZK)

• Stronger variant of witness indistinguishability• Simulate proofs without knowing w (using trapdoor)

15

Page 17: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Simulation Sound Extractability (SSE)

Very strong notion

• Combination of zero-knowledge and extractability• Adversary sees simulated proofs for arbitrary x• Still infeasible to forge proof for new x /∈ L⇒ Can extract witness for any proof with “new” x

Requires non-malleability

weak SSE: non-malleability w.r.t. proven statementSSE: non-malleability w.r.t. proof and proven statement

16

Page 18: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Construction Idea - weak SSE

Extend proof with adaptable signature

• Sign proof under a random key pk′

• Include signature on proven statement under pk′

Extend Language L to L′

• Include pk in CRS

x ∈ L ⇐⇒ ∃ w : (x,w) ∈ R(x, pk, pk′) ∈ L′ ⇐⇒ ∃ w : (x,w) ∈ R ∨ ∃ ∆ : pk = pk′ · µ(∆)

⇒ Shift amount allows to extract valid signature under pk

Can construct an SSE NIZK proof system for L

• From extractable WI proof system for L′

+ Adaptable signature scheme17

Page 19: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Construction Idea - weak SSE - Security

Observations

• Either need witness for 1st or 2nd literal in OR clause

(x,w) ∈ R ∨ ∃ ∆ : pk = pk′ · µ(∆)

• Prover has to use w s.t. (x,w) ∈ R⇒ Otherwise needs signature under pk

Zero-Knowledge

• Set up CRS so that sk for pk is known• Create signature σ on proof under sk• Shift σ to σ′ under random key pk′

• Create proof using “shift amount” ∆

⇒ Cannot be detected under WI18

Page 20: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Construction Idea - weak SSE - Security contd.

Weak Simulation Sound Extractability

• Simulate as before• Use pk from EUF-CMA challenger• Obtain signatures via Sign oracle

• Use extractor from underlying proof system• EUF-CMA implies extraction of w s.t. (x,w) ∈ R

Simulation Sound Extractability

• Additionally use strong one-time DSS

19

Page 21: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Instantiation Example

Recall Waters’ variant in SXDH setting [BFG13]

• Public parameters U = (u0, ... ,un)←R Gn1

• Waters’ hash H(m) := u0∏i∈[n] u

mii where m ∈ {0, 1}m

• Public key: sk← gx ∈ G1, pk← gx ∈ G2, with x←R Zp• Signature: σ ← (gx · H(m)r,gr, gr), with r←R Zp• Verification via pairing

Perfect adaptability

• Signature σ = (σ1,σ2,σ3)• Shift amount ∆ = (∆1,∆2) ∈ G1 ×G2• With e(∆1, g) = e(g,∆2)

• Shift (pk′,σ′)← (gx ·∆2, (σ1 ·∆1 · H(m)r′ ,σ2 · gr′ ,σ3 · gr′))

Combination with Groth-Sahai proofs

• Only requires to prove knowledge of single element in G1! 20

Page 22: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Conclusions

Generic compilers for various signature variants

+ Applicable to large classes of schemes+ Strong security guarantees from very mild requirements+ Extremely simple+ Favorable regarding efficiency w.r.t. previous schemes+ Deeper understanding of construction paradigms

Directly yields novel instantiations

+ Comparing favorably to existing work+ Standard model & assumptions: Waters’ sigs + GS proofs

21

Page 23: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Conclusions

Results in [DS16]

publicly key-hom. DSS

adaptable DSS

perfectly adaptable DSS

tight key-pre�xed MU-EUF-CMA [GMS02, MS04]

Ring Signatures [RST01]

(weak) SSE NIZK [Gro06]

Universal Designated Veri�er DSS [SBWP03]

Multisignatures [IN83]

SoKs [CL06]

s

k7→pk

hom.DSS

key-succinct multikey hom. DSS

[CL06]

RSR canonical ID schemes [KMP16]+ RO

+ NIWI

+ NIWI

+ NIWI

22

Page 24: Key-Homomorphic Signatures - and Applications to ... · Key-Homomorphic Signatures Example 1 • Given two signatures ˙1 and ˙2 on m • Valid under pk1 and pk2)Publicly compute

Thank you.

Preprint available as IACR ePrint Archive Report 2016/792

Q [email protected] 7 @dderler