Skip to main content

Compact Zero-Knowledge Proofs for Threshold ECDSA with Trustless Setup

  • Conference paper
  • First Online:
Public-Key Cryptography – PKC 2021 (PKC 2021)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 12710))

Included in the following conference series:

Abstract

Threshold ECDSA signatures provide a higher level of security to a crypto wallet since it requires more than t parties out of n parties to sign a transaction. The state-of-the-art bandwidth efficient threshold ECDSA used the additive homomorphic Castagnos and Laguillaumie (CL) encryption based on an unknown order group G, together with a number of zero-knowledge proofs in G. In this paper, we propose compact zero-knowledge proofs for threshold ECDSA to lower the communication bandwidth, as well as the computation cost. The proposed zero-knowledge proofs include the discrete-logarithm relation in G and the well-formedness of a CL ciphertext.

When applied to two-party ECDSA, we can lower the bandwidth of the key generation algorithm by 47%, and the running time for the key generation and signing algorithms are boosted by about 35% and 104% respectively. When applied to threshold ECDSA, our first scheme is more optimized for the key generation algorithm (about 70% lower bandwidth and 85% faster computation in key generation, at a cost of 20% larger bandwidth in signing), while our second scheme has an all-rounded performance improvement (about 60% lower bandwidth, 46% faster computation in key generation without additional cost in signing).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 119.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 159.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    This special requirement on e is needed since computing square roots in class groups of quadratic fields is easy [4]. The assumptions used in this paper do not require such a special arrangement.

  2. 2.

    Since it is easy to compute \(\log _g w\) if \(g \in F\), it is impossible to construct a ZK proof for \(\mathcal {R}\) if \(g \in F\). Hence, we restrict that \(g \in G \setminus F\).

  3. 3.

    These are the most popular types of threshold signatures in Bitcoin’s P2SH transactions as shown in https://txstats.com/dashboard/db/p2sh-repartition-by-type?orgId=1. Hence we use these 3 settings for comparison in this paper.

  4. 4.

    The random encoding for DL-easy subgroup is necessary, since the adversary may obtain some \(g' = \sigma (\pi (a_1, b_1))\) and \(f' = \sigma (\pi (0, b_2))\) from \(\mathcal {O}_1\). The adversary can obtain \(g' \cdot f'\) or \((g')^2/ f'\) from \(\mathcal {O}_2\). The encodings \(b_1\) and \(b_2\) ensure that the value in the DL-easy subgroup is always correct even when the computation involves elements in \(\mathbb {G}_1\).

  5. 5.

    Non-trivial order hardness is similar to the low order assumption in [5], except that their assumption did not rule out the trivial attack that \(f^q = 1\).

  6. 6.

    Since \(g = g_1\), if \(Q_1\) is computed from \(f, g_i\) and \(w = g^x = g_1^x\), we can write \(Q_1 = f^{\gamma } \prod _{i=1}^m g_i^{\alpha _i}\).

References

  1. Boneh, D., Bünz, B., Fisch, B.: Batching techniques for accumulators with applications to IOPs and stateless blockchains. In: Boldyreva, A., Micciancio, D. (eds.) CRYPTO 2019. LNCS, vol. 11692, pp. 561–586. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26948-7_20

    Chapter  Google Scholar 

  2. Brown, D.R.L.: Generic groups, collision resistance, and ECDSA. Des. Codes Cryptogr. 35(1), 119–152 (2005)

    Article  MathSciNet  Google Scholar 

  3. Camenisch, J., Kiayias, A., Yung, M.: On the portability of generalized schnorr proofs. In: Joux, A. (ed.): EUROCRYPT 2009. Lecture Notes in Computer Science, vol. 5479, pp. 425–442. Springer (2009)

    Google Scholar 

  4. Castagnos, G., Catalano, D., Laguillaumie, F., Savasta, F., Tucker, I.: Two-party ECDSA from hash proof systems and efficient instantiations. In: Boldyreva, A., Micciancio, D. (eds.) CRYPTO 2019. LNCS, vol. 11694, pp. 191–221. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26954-8_7

    Chapter  Google Scholar 

  5. Castagnos, G., Catalano, D., Laguillaumie, F., Savasta, F., Tucker, I.: Bandwidth-efficient threshold EC-DSA. In: Kiayias, A., Kohlweiss, M., Wallden, P., Zikas, V. (eds.) PKC 2020. Lecture Notes in Computer Science, vol. 12111, pp. 266–296. Springer (2020)

    Google Scholar 

  6. Castagnos, G., Laguillaumie, F.: On the security of cryptosystems with quadratic decryption: the nicest cryptanalysis. In: Joux, A. (ed.): EUROCRYPT 2009. Lecture Notes in Computer Science, vol. 5479, pp. 260–277. Springer (2009)

    Google Scholar 

  7. Castagnos, G., Laguillaumie, F.: Linearly homomorphic encryption from DDH. In: Nyberg, K. (ed.) CT-RSA 2015. Lecture Notes in Computer Science, vol. 9048, pp. 487–505. Springer (2015)

    Google Scholar 

  8. Damgård, I., Koprowski, M.: Generic lower bounds for root extraction and signature schemes in general groups. In: Knudsen, L.R. (ed.) EUROCRYPT 2002. LNCS, vol. 2332, pp. 256–271. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-46035-7_17

    Chapter  MATH  Google Scholar 

  9. Doerner, J., Kondi, Y., Lee, E., Shelat, A.: Secure two-party threshold ECDSA from ECDSA assumptions. In: IEEE SP 2018, pp. 980–997. IEEE Computer Society (2018)

    Google Scholar 

  10. Doerner, J., Kondi, Y., Lee, E., Shelat, A.: Threshold ECDSA from ECDSA assumptions: the multiparty case. In: IEEE SP 2019, pp. 1051–1066. IEEE (2019)

    Google Scholar 

  11. Gennaro, R., Goldfeder, S.: Fast multiparty threshold ECDSA with fast trustless setup. In: Lie, D., Mannan, M., Backes, M., Wang, X. (eds.) CCS 2018, pp. 1179–1194. ACM (2018)

    Google Scholar 

  12. Gennaro, R., Goldfeder, S.: One round threshold ecdsa with identifiable abort. Cryptology ePrint Archive, Report 2020/540 (2020). https://eprint.iacr.org/2020/540

  13. Lindell, Y.: Fast secure two-party ECDSA signing. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017. LNCS, vol. 10402, pp. 613–644. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63715-0_21

  14. Lindell, Y., Nof, A.: Fast secure multiparty ECDSA with practical distributed key generation and applications to cryptocurrency custody. In: Lie, D., Mannan, M., Backes, M., Wang, X. (eds.) CCS 2018, pp. 1837–1854. ACM (2018)

    Google Scholar 

  15. Shoup, V.: Lower bounds for discrete logarithms and related problems. In: Fumy, W. (ed.) EUROCRYPT 1997. LNCS, vol. 1233, pp. 256–266. Springer, Heidelberg (1997). https://doi.org/10.1007/3-540-69053-0_18

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tsz Hon Yuen .

Editor information

Editors and Affiliations

Appendices

A Background

1.1 A.1 Definitions for Argument Systems

An argument system for a relation \(\mathcal {R} \subset \mathcal {X} \times \mathcal {W}\) is a triple of randomized polynomial time algorithms \((\mathsf{Setup}, \mathsf{P}, \mathsf{V})\), where:

  • Setup takes a security parameter \(1^\lambda \) and outputs a common reference string (CRS) crs.

  • P takes as input the crs, a statement \(x \in \mathcal {X}\) and a witness \(w \in \mathcal {W}\). V takes as input the crs and x and after interaction with P outputs 0 or 1.

The transcript between the prover and the verifier is denoted as \(\langle \mathsf{V}(\mathsf{crs}, x), \mathsf{P}(\mathsf{crs}\), \(x, w)\rangle \), and it is equal to 1 if the verifier accepted the transcript.

Definition 1 (Completeness)

An argument system \((\mathsf{Setup}, \mathsf{P}, \mathsf{V})\) for a relation \(\mathcal {R}\) is complete if for all \((x,w) \in \mathcal {R}\):

$$ \Pr [\langle \mathsf{V}(\mathsf{crs}, x), \mathsf{P}(\mathsf{crs}, x, w)\rangle = 1: \mathsf{crs} \xleftarrow {\$} \mathsf{Setup}(1^\lambda ) ] = 1. $$

We follow the soundness definition for trapdoorless crs from [1].

Definition 2 (Soundness)

An argument system \((\mathsf{Setup}, \mathsf{P}, \mathsf{V})\) is sound if for all polynomial time adversaries \(\mathcal {A} = (\mathcal {A}_0, \mathcal {A}_1)\):

$$ \Pr \left[ \begin{array}{l} \langle \mathsf{V}(\mathsf{crs}, x), \mathcal {A}_1(\mathsf{crs}, x, \mathsf{state})\rangle = 1 \\ \text{ and } \not \exists w ~s.t.~ (x,w) \in \mathcal {R} \end{array} : \begin{array}{l} \mathsf{crs} \xleftarrow {\$} \mathsf{Setup}(1^\lambda ) \\ (x, \mathsf{state}) \leftarrow \mathcal {A}_0(\mathsf{crs}) \end{array} \right] = \mathsf{negl}(\lambda ). $$

Additionally, the argument system is an argument of knowledge if for all polynomial time adversaries \(\mathcal {A}_1\) there exists a polynomial time extractor Ext such that for all polynomial time adversaries \(\mathcal {A}_0\):

$$ \Pr \left[ \begin{array}{l} \langle \mathsf{V}(\mathsf{crs}, x), \mathcal {A}_1(\mathsf{crs},x, \mathsf{state})\rangle = 1 \\ \text{ and } (x,w') \notin \mathcal {R} \end{array} : \begin{array}{l} \mathsf{crs} \xleftarrow {\$} \mathsf{Setup}(1^\lambda )\\ (x, \mathsf{state}) \leftarrow \mathcal {A}_0(\mathsf{crs}) \\ w' \xleftarrow {\$} \mathsf{Ext}(\mathsf{crs}, x, \mathsf{state}) \end{array} \right] = \mathsf{negl}(\lambda ). $$

Definition 3 (Zero Knowledge)

An argument system \((\mathsf{Setup}, \mathsf{P}, \mathsf{V})\) is statistical zero-knowledge if there exists a polynomial time simulator Sim such that for all \((x, w) \in \mathcal {R}\), the following two distributions are statistically indistinguishable:

$$\begin{aligned} D_1&= \{ \langle \mathsf{V}(\mathsf{crs}, x), \mathsf{P}(\mathsf{crs}, x, w)\rangle , \mathsf{crs} \xleftarrow {\$} \mathsf{Setup}(1^\lambda ) \},\\ D_2&= \{ \langle \mathsf{V}(\mathsf{crs}, x), \mathsf{Sim}(\mathsf{crs}, x)\rangle , \mathsf{crs} \xleftarrow {\$} \mathsf{Setup}(1^\lambda ) \}. \end{aligned}$$

1.2 A.2 Generalized Schnorr Proofs

The Sigma protocol based on Schnorrs proof can be generalized for proving DL in groups of unknown order [3]. It can be done by introducing appropriate range checking and using computations over the integers. The proof size is dominated by the response of size \((\epsilon _s + \epsilon _d) \cdot \) ord(G), and hence it is not practical. By taking \(\epsilon _s = \epsilon _d = 80\), the proof size is in the order of MBytes.

B More Implementation Results for Threshold ECDSA

We also implemented the threshold ECDSA schemes for the setting of (tn) = (2,4) and (2,5) and the security level of 112-bit and 128-bit. The complete comparison tables for these cases are given in Tables 6, 7, 8 and 9.

Table 6. (2, 4)-Threshold ECDSA for 112 bit security
Table 7. (2, 4)-Threshold ECDSA for 128 bit security
Table 8. (2, 5)-Threshold ECDSA for 112 bit security
Table 9. (2, 5)-Threshold ECDSA for 128 bit security

Rights and permissions

Reprints and permissions

Copyright information

© 2021 International Association for Cryptologic Research

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Yuen, T.H., Cui, H., Xie, X. (2021). Compact Zero-Knowledge Proofs for Threshold ECDSA with Trustless Setup. In: Garay, J.A. (eds) Public-Key Cryptography – PKC 2021. PKC 2021. Lecture Notes in Computer Science(), vol 12710. Springer, Cham. https://doi.org/10.1007/978-3-030-75245-3_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-75245-3_18

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-75244-6

  • Online ISBN: 978-3-030-75245-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics