zero knowledge arguments for lattice based accumulators
play

Zero-Knowledge Arguments for Lattice-Based Accumulators: - PowerPoint PPT Presentation

Zero-Knowledge Arguments for Lattice-Based Accumulators: Logarithmic-Size Ring Signatures and Group Signatures without Trapdoors t Libert 1 San Ling 2 Khoa Nguyen 2 Huaxiong Wang 2 Beno 1 Ecole Normale Sup erieure de Lyon (France) 2


  1. Zero-Knowledge Arguments for Lattice-Based Accumulators: Logarithmic-Size Ring Signatures and Group Signatures without Trapdoors ıt Libert 1 San Ling 2 Khoa Nguyen 2 Huaxiong Wang 2 Benoˆ 1 Ecole Normale Sup´ erieure de Lyon (France) 2 Nanyang Technological University (Singapore) EUROCRYPT 2016 - Vienna, Austria

  2. Outline Introduction 1 Our Accumulator and Its Supporting Zero-Knowledge Argument 2 Applications to Ring and Group Signatures 3 Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 2 / 17

  3. Cryptographic Accumulators Accumulator [BdM’93]: a function hashing a large data set R = { d 0 , . . . , d N − 1 } into a constant-size value u . For any d ∈ R , there is a short witness w that d was accumulated into u . It is infeasible to compute a valid witness w ∗ for some d ∗ �∈ R . Numerous applications in authentication mechanisms. In many scenarios, a ZK proof of an input-witness pair ( d , w ) is desirable. Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 3 / 17

  4. Previous Works 2 main families of number-theoretic accumulators: based on groups of hidden order, or on pairings (strong RSA and strong DH assumptions). A 3 rd family relies on Merkle trees: hardly compatible with ZK proofs. Known methods require non-standard assumptions in groups of hidden order [BCG’14] or non-falsifiable knowledge assumptions [BSCG+’14]. [PSTY’13]: SIS-based Merkle tree; supporting ZK proofs were not considered. Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 4 / 17

  5. Our Results First lattice-based accumulator supported by logarithmic-size ZK arguments. We build Merkle trees from a family of SIS-based CRHF H : D × D → D . We demonstrate in ZK the possession of a Merkle tree path (hash chain). Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 5 / 17

  6. Our Results First lattice-based accumulator supported by logarithmic-size ZK arguments. We build Merkle trees from a family of SIS-based CRHF H : D × D → D . We demonstrate in ZK the possession of a Merkle tree path (hash chain). Applications: First lattice-based logarithmic-size ring signature. 1 Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 5 / 17

  7. Our Results First lattice-based accumulator supported by logarithmic-size ZK arguments. We build Merkle trees from a family of SIS-based CRHF H : D × D → D . We demonstrate in ZK the possession of a Merkle tree path (hash chain). Applications: First lattice-based logarithmic-size ring signature. 1 First group signature without lattice trapdoors. Previous constructions 2 [GKV’10,CNR’12,LLLS’13,LNW’15,NZZ’15] rely on trapdoors for key generation and/or for enabling tracing. Being trapdoor-less: smaller parameters, shorter key and signature sizes. User’s signing key in our scheme has size of several KBs, compared with ≈ 90 GBs in [NZZ’15]. Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 5 / 17

  8. Outline Introduction 1 Our Accumulator and Its Supporting Zero-Knowledge Argument 2 Applications to Ring and Group Signatures 3 Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 6 / 17

  9. A Family of Lattice-Based CRHF Let n be the security parameter, q = � O ( n ), k = ⌈ log 2 q ⌉ , and m = 2 nk . Define:   1 2 4 . . . 2 k − 1      ∈ Z n × nk G = . . . .  q 1 2 4 . . . 2 k − 1 q : v = G · bin( v ), where bin( v ) ∈ { 0 , 1 } nk - the bin. rep. of v . For all v ∈ Z n Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 7 / 17

  10. A Family of Lattice-Based CRHF Let n be the security parameter, q = � O ( n ), k = ⌈ log 2 q ⌉ , and m = 2 nk . Define:   1 2 4 . . . 2 k − 1      ∈ Z n × nk G = . . . .  q 1 2 4 . . . 2 k − 1 q : v = G · bin( v ), where bin( v ) ∈ { 0 , 1 } nk - the bin. rep. of v . For all v ∈ Z n Define the family H : { 0 , 1 } nk × { 0 , 1 } nk → { 0 , 1 } nk as H = { h A | A ∈ Z n × m } , q , and ( u 0 , u 1 ) ∈ { 0 , 1 } nk × { 0 , 1 } nk , where for A = [ A 0 | A 1 ] with A 0 , A 1 ∈ Z n × nk q � � ∈ { 0 , 1 } nk . h A ( u 0 , u 1 ) = bin A 0 · u 0 + A 1 · u 1 mod q Note that h A ( u 0 , u 1 ) = u ⇔ A 0 · u 0 + A 1 · u 1 = G · u mod q . H is collision-resistant, assuming that SIS ∞ n , m , q , 1 is hard. Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 7 / 17

  11. From CRHF to Merkle-tree-style Accumulators u u 0 u 1 u 00 u 01 u 10 u 11 u 000 u 001 u 010 u 011 u 100 u 101 u 110 u 111 d 0 d 1 d 2 d 3 d 4 d 5 d 6 d 7 A Merkle tree with 2 3 = 8 leaves, which accumulates the data blocks d 0 , . . . , d 7 into the value u at the root. The value at each non-leaf node is the hash of its two children. The brown nodes together with the bit string ( j 3 , j 2 , j 1 ) = (1 , 0 , 1) form a witness to the fact that d 5 is accumulated into u . Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 8 / 17

  12. Proving Knowledge of an Accumulated Value u w 1 v 1 v 2 w 2 w 3 v 3 Public input: A ; u = v 0 . Secret input: ( w ℓ , . . . , w 1 ) , ( v ℓ , . . . , v 1 ) , ( j ℓ , . . . , j 1 ). Prover’s goal: Proving that    h A ( v i +1 , w i +1 ) , if j i +1 = 0; ∀ i ∈ { ℓ − 1 , . . . , 1 , 0 } : v i =   h A ( w i +1 , v i +1 ) , if j i +1 = 1 . Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 9 / 17

  13. Proving Knowledge of an Accumulated Value u w 1 v 1 j 2 = 0 v 2 w 2 w 3 v 3 Public input: A ; u = v 0 . Secret input: ( w ℓ , . . . , w 1 ) , ( v ℓ , . . . , v 1 ) , ( j ℓ , . . . , j 1 ). Prover’s goal: Proving that    h A ( v i +1 , w i +1 ) , if j i +1 = 0; ∀ i ∈ { ℓ − 1 , . . . , 1 , 0 } : v i =   h A ( w i +1 , v i +1 ) , if j i +1 = 1 . Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 9 / 17

  14. Proving Knowledge of an Accumulated Value u w 1 v 1 v 2 w 2 j 3 = 1 w 3 v 3 Public input: A ; u = v 0 . Secret input: ( w ℓ , . . . , w 1 ) , ( v ℓ , . . . , v 1 ) , ( j ℓ , . . . , j 1 ). Prover’s goal: Proving that    h A ( v i +1 , w i +1 ) , if j i +1 = 0; ∀ i ∈ { ℓ − 1 , . . . , 1 , 0 } : v i =   h A ( w i +1 , v i +1 ) , if j i +1 = 1 . Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 9 / 17

  15. Proving Knowledge of an Accumulated Value u w 1 v 1 v 2 w 2 w 3 v 3 Public input: A ; u = v 0 . Secret input: ( w ℓ , . . . , w 1 ) , ( v ℓ , . . . , v 1 ) , ( j ℓ , . . . , j 1 ). Prover’s goal: Proving that    h A ( v i +1 , w i +1 ) , if j i +1 = 0; ∀ i ∈ { ℓ − 1 , . . . , 1 , 0 } : v i =   h A ( w i +1 , v i +1 ) , if j i +1 = 1 . ✗ Previous protocols for SIS-based hash functions ([Lyu’08,09,12], [LNSW’13]) only prove knowledge of a hidden preimage for a given image. ? Here, we essentially need to prove knowledge of “ ℓ hidden preimage-image pairs nested along a hidden path.” Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 9 / 17

  16. Transformations    ¯ b · v For any bit b and binary vector v , define ¯  . b = 1 − b and ext( b , v ) = b · v Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 10 / 17

  17. Transformations    ¯ b · v For any bit b and binary vector v , define ¯  . b = 1 − b and ext( b , v ) = b · v  Observe that   h A ( v i +1 , w i +1 ) , if j i +1 = 0; v i =   h A ( w i +1 , v i +1 ) , if j i +1 = 1 . is equivalent to: v i = ¯ j i +1 · h A ( v i +1 , w i +1 ) + j i +1 · h A ( w i +1 , v i +1 ) � � � � ¯ ⇔ j i +1 · A 0 · v i +1 + A 1 · w i +1 + j i +1 · A 0 · w i +1 + A 1 · v i +1 = G · v i mod q      ¯ j i +1 · v i +1  j i +1 · w i +1  + A ·  = G · v i mod q ⇔ A · ¯ j i +1 · v i +1 j i +1 · w i +1 A · ext( j i +1 , v i +1 ) + A · ext(¯ ⇔ j i +1 , w i +1 ) = G · v i mod q . Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 10 / 17

  18. Developing Stern’s Protocol Now, the task is to prove in ZK the possession of { j i , v i , w i } ℓ i =1 s.t. ∀ i ∈ { ℓ − 1 , . . . , 0 } : A · ext( j i +1 , v i +1 ) + A · ext(¯ j i +1 , w i +1 ) = G · v i mod q . (1) Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 11 / 17

  19. Developing Stern’s Protocol Now, the task is to prove in ZK the possession of { j i , v i , w i } ℓ i =1 s.t. ∀ i ∈ { ℓ − 1 , . . . , 0 } : A · ext( j i +1 , v i +1 ) + A · ext(¯ j i +1 , w i +1 ) = G · v i mod q . (1) Stern’s protocol [Stern’96]: Main ideas Proving in ZK the possession of a binary vector s with fixed Hamming weight t , s.t. M · s = u mod q , for given ( M , u ). Proving the linear equation: show that M ( s + r ) = u + M · r [ q ], for random r . 1 Proving the constraint of s : show that π ( s ) has weight t , for random π . 2 Khoa Nguyen (NTU, Singapore) ZK arguments for lattice-based accumulators EUROCRYPT 2016 11 / 17

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend