Abstract
This paper proposes a new efficient transparent polynomial commitment scheme. In a polynomial commitment scheme, a prover commits a polynomial and a verifier sends a random point to the prover. The prover then evaluates the polynomial on the given point with generating a proof that the evaluated value is correctly computed according to the committed function. Our construction is based on the polynomial commitment scheme (the DARK compiler) proposed by Bünz, Fisch, and Szepieniec in EUROCRYPT 2020. The approach of DARK is that a prover recursively generates 2 group elements as the proof for a polynomial with a halved degree and a verifier indirectly verifies them at each recursion. In our construction, a prover commits all the reduced polynomials across recursions at once, and then generates a single aggregated proof for them. By aggregating commitments from recursive steps in DARK, the proposed scheme reduces the proof size by half, and provides better performance in the proof generation and the proof verification compared to DARK. By adopting the proposed scheme, the efficiency of transparent SNARKs from polynomial IOPs can be significantly improved.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Ames, S., Hazay, C., Ishai, Y., Venkitasubramaniam, M.: Ligero: lightweight sublinear arguments without a trusted setup. In: ACM CCS 2017, pp. 2087–2104. ACM (2017)
Barić, N., Pfitzmann, B.: Collision-free accumulators and fail-stop signature schemes without trees. In: Fumy, W. (ed.) EUROCRYPT 1997. LNCS, vol. 1233, pp. 480–494. Springer, Heidelberg (1997). https://doi.org/10.1007/3-540-69053-0_33
Ben-Sasson, E., et al.: Zerocash: decentralized anonymous payments from bitcoin. In: IEEE Symposium on Security and Privacy 2014, pp. 459–474. IEEE (2014)
Ben-Sasson, E., Chiesa, A., Riabzev, M., Spooner, N., Virza, M., Ward, N.P.: Aurora: transparent succinct arguments for R1CS. In: Ishai, Y., Rijmen, V. (eds.) EUROCRYPT 2019. LNCS, vol. 11476, pp. 103–128. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17653-2_4
Ben-Sasson, E., Goldberg, L., Kopparty, S., Saraf, S.: DEEP-FRI: sampling outside the box improves soundness. In: ITCS 2020, LIPIcs, pp. 5:1–5:32. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2020)
Block, A.R., Holmgren, J., Rosen, A., Rothblum, R.D., Soni, P.: Time- and space-efficient arguments from groups of unknown order. In: Malkin, T., Peikert, C. (eds.) CRYPTO 2021. LNCS, vol. 12828, pp. 123–152. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-84259-8_5
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
Bootle, J., Cerulli, A., Chaidos, P., Groth, J., Petit, C.: Efficient zero-knowledge arguments for arithmetic circuits in the discrete log setting. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016. LNCS, vol. 9666, pp. 327–357. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49896-5_12
Bosma, W., Stevenhagen, P.: On the computation of quadratic 2-class groups. J. de Théorie des Nombres de Bordeaux 8(2), 283–313 (1996)
Bowe, S.: BLS12-381: new zk-SNARK elliptic curve construction. https://electriccoin.co/blog/new-snark-curve/
Buchmann, J., Hamdy, S.: A survey on IQ cryptography. In: Public Key Cryptography and Computational Number Theory, pp. 1–15 (2001)
Buchmann, J., Williams, H.C.: A key-exchange system based on imaginary quadratic fields. J. Cryptol. 1(2), 107–118 (1988)
Bünz, B., Fisch, B., Szepieniec, A.: Transparent SNARKs from DARK compilers. In: Canteaut, A., Ishai, Y. (eds.) EUROCRYPT 2020. LNCS, vol. 12105, pp. 677–706. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45721-1_24
Bünz, B., Maller, M., Mishra, P., Tyagi, N., Vesely, P.: Proofs for inner pairing products and applications. In: Tibouchi, M., Wang, H. (eds.) ASIACRYPT 2021. LNCS, vol. 13092, pp. 65–97. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-92078-4_3
Bünz, B., Fisch, B.: Schwartz-Zippel for multilinear polynomials mod N. Cryptology ePrint Archive, Paper 2022/458 (2022). https://eprint.iacr.org/2022/458
Bünz, B., Fisch, B., Szepieniec, A.: Transparent snarks from dark compilers. Cryptology ePrint Archive, Paper 2019/1229 (2019). https://eprint.iacr.org/2019/1229
Chiesa, A., Hu, Y., Maller, M., Mishra, P., Vesely, N., Ward, N.: Marlin: preprocessing zkSNARKs with universal and updatable SRS. In: Canteaut, A., Ishai, Y. (eds.) EUROCRYPT 2020. LNCS, vol. 12105, pp. 738–768. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45721-1_26
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
Dobson, S., Galbraith, S.D.: Trustless groups of unknown order with hyperelliptic curves. IACR Cryptology ePrint Archive (2020)
Eberhardt, J., Tai, S.: ZoKrates - scalable privacy-preserving off-chain computations. In: 2018 IEEE International Conference on Blockchain, pp. 1084–1091. IEEE (2018)
ethereum.org. Zero-knowledge rollups. https://ethereum.org/en/developers/docs/scaling/zk-rollups/
Fiat, A., Shamir, A.: How to prove yourself: practical solutions to identification and signature problems. In: Odlyzko, A.M. (ed.) CRYPTO 1986. LNCS, vol. 263, pp. 186–194. Springer, Heidelberg (1987). https://doi.org/10.1007/3-540-47721-7_12
Gabizon, A., Williamson, Z.J., Ciobotaru, O.: PLONK: permutations over lagrange-bases for oecumenical noninteractive arguments of knowledge. Technical report, Cryptology ePrint Archive, Report 2019/953 (2019)
Groth, J., Ishai, Y.: Sub-linear zero-knowledge argument for correctness of a shuffle. In: Smart, N. (ed.) EUROCRYPT 2008. LNCS, vol. 4965, pp. 379–396. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78967-3_22
Hamdy, S., Möller, B.: Security of cryptosystems based on class groups of imaginary quadratic orders. In: Okamoto, T. (ed.) ASIACRYPT 2000. LNCS, vol. 1976, pp. 234–247. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44448-3_18
Hart, W., Johansson, F., Pancratz, S.: FLINT: fast library for number theory (2013)
Kate, A., Zaverucha, G.M., Goldberg, I.: Constant-size commitments to polynomials and their applications. In: Abe, M. (ed.) ASIACRYPT 2010. LNCS, vol. 6477, pp. 177–194. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-17373-8_11
Kattis, A., Panarin, K., Vlasov, A.: RedShift: transparent snarks from list polynomial commitment IOPs. IACR Cryptology ePrint Archive (2019)
Lee, J.: Dory: efficient, transparent arguments for generalised inner products and polynomial commitments. In: Nissim, K., Waters, B. (eds.) TCC 2021. LNCS, vol. 13043, pp. 1–34. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-90453-1_1
Lindell, Y.: Parallel coin-tossing and constant-round secure two-party computation. J. Cryptol. 16(3), 143–184 (2003)
Maller, M., Bowe, S., Kohlweiss, M., Meiklejohn, S.: Sonic: zero-knowledge snarks from linear-size universal and updatable structured reference strings. In: ACM CCS 2019, pp. 2111–2128. ACM (2019)
Papamanthou, C., Shi, E., Tamassia, R.: Signatures of correct computation. In: Sahai, A. (ed.) TCC 2013. LNCS, vol. 7785, pp. 222–242. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36594-2_13
Rivest, R.L., Shamir, A., Wagner, D.A.: Time-lock puzzles and timed-release crypto. Technical report, Massachusetts Institute of Technology (1996)
Setty, S.: Spartan: efficient and general-purpose zkSNARKs without trusted setup. In: Micciancio, D., Ristenpart, T. (eds.) CRYPTO 2020. LNCS, vol. 12172, pp. 704–737. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-56877-1_25
Wahby, R.S., Tzialla, I., Shelat, A., Thaler, J., Walfish, M.: Doubly-efficient ZKSNARKs without trusted setup. In: IEEE Symposium on Security and Privacy 2018, pp. 926–943. IEEE (2018)
Wesolowski, B.: Efficient verifiable delay functions. In: Ishai, Y., Rijmen, V. (eds.) EUROCRYPT 2019. LNCS, vol. 11478, pp. 379–407. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17659-4_13
Zhang, J., Xie, T., Zhang, Y., Song, D.: Transparent polynomial delegation and its applications to zero knowledge proof. In: IEEE Symposium on Security and Privacy 2020, pp. 859–876. IEEE (2020)
Zhang, Y., Genkin, D., Katz, J., Papadopoulos, D., Papamanthou, C.: vSQL: verifying arbitrary SQL queries over dynamic outsourced databases. In: IEEE Symposium on Security and Privacy 2017, pp. 863–880. IEEE (2017)
Acknowledgement
This work was supported by Institute of Information & communications Technology Planning & Evaluation (IITP) grant funded by the Korea government (MSIT) (No. 2021-0-00727, A study on cryptographic primitives for SNARK, 50%; No. 2021-0-00518, Blockchain Privacy preserving techniques based on data encryption, 50%). J. Kim and H. Oh are co-corresponding authors.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Appendix
Appendix
1.1 Proof of Theorem 2
Proof
We show that an honest commiter passes all check in \(\textsf{PC}.\textsf{Ver}\) of Algorithm 2. We first show that \(g_{\mu +1}=s_{\mu +1} \pmod \ell \). By construction, \(s_1=r=\hat{g}_1 \pmod \ell \) and \(s_{i,R}=\hat{g}_{i,R} \pmod \ell \) for \(i=1,...,\mu \). We then have that \(s_{i,L}=s_i-q^{2^{\mu -i}}s_{i,R} \pmod \ell =\hat{g}_i-q^{2^{\mu -i}}\hat{g}_{i,R} \pmod \ell =\hat{g}_{i,L} \pmod \ell \) and \(s_{i+1}=s_{i,L}+\alpha _{i}s_{i,R}\pmod \ell =\hat{g}_{i,L}+\alpha _{i} \hat{g}_{i,R}\pmod \ell =\hat{g}_{i+1} \pmod \ell \) for \(i=1,\dots ,\mu \). This proves \(g_{\mu +1}=s_{\mu +1} \pmod \ell \). With similar argument, it holds that \(g_{\mu +1}=y_{\mu +1} \pmod p\).
Next we show that \(|g_{\mu +1}|\le b=(p-1)p^\mu \). Note that \(f \in \mathbb Z(p-1)[\mu ]\). Let \(b_1=p-1\). Suppose, for each i, there exists a bound \(b_i\) such that \(\Vert g_{i}\Vert _\infty \le b_i\). Since \(\alpha _{i}\in [0,p-1]\), we have \(\Vert g_{i+1}\Vert _\infty =\Vert g_{i,L}+\alpha _i g_{i,R}\Vert _\infty \le b_ip=(p-1)p^i\) for \(i=1,\dots ,\mu \). Finally, \({\textsf{PoKRep}}.\textsf{Ver}\) returns 1 because
1.2 Sketch of Proof for Theorem 3
Lemma 2
([16, Lemma 6]). For any \(\mu \)-variate multilinear polynomial f over \(\mathbb Z\) and \(p\ge 2\), \(\Pr _{\vec \alpha \,{\mathop {\leftarrow }\limits ^{\$}}\,[0,p-1]^\mu }[|f(\vec \alpha )|\le \frac{1}{p^\mu }\cdot \Vert f\Vert _\infty ]\le \frac{3\mu }{p}\).
Proof Sketch
We prove that the proposed polynomial commitment scheme is knowledge sound, thus, has witness-extended emulation [30]. We first define the series of bounds \(B_{\mu +1}\le \cdots \le B_1\) by \(B_{i}:=(p-1)p^{2\mu -i+1}\) for \(i=\mu +1,\dots ,1\). Note that \(B_{\mu +1}\) is equal to the bound parameter b in the proposed polynomial commitment scheme. We describe the extractor \({\mathcal {E}}_{\textsf{PC}}\). The extractor \({\mathcal {E}}_{\textsf{PC}}\) employs a poly-time knowledge extractor \({\mathcal {E}}_{\textsf{PoKRep}}\) of the protocol \({\textsf{PoKRep}}\). The description of \({\mathcal {E}}_{\textsf{PoKRep}}\) is given in [7, proof of Theorem 7]. \({\mathcal {E}}_{\textsf{PoKRep}}\) receives a polynomial in \(\lambda \) (denoted as \(\textsf{poly}(\lambda )\)) number of accepting \({\textsf{PoKRep}}\)–transcripts and extracts an input integer vector. Let \(\textsf{tr}_{\textsf{PC}}=\{C,(D_i,y_{i,R},\alpha _i)_{i=1,\dots ,\mu },g_{\mu +1}\mathrel {,}Q,(\ell ,(r,\vec s))\}\) be an accepting transcript that \({\mathcal {P}}\) and \({\mathcal {V}}\) generate by executing \(\textsf{PC}.\textsf{Commit}\), \(\textsf{PC}.\textsf{Open}\), and \(\textsf{PC}.\textsf{Ver}\). Algorithm \({\mathcal {E}}_\textsf{PC}\) works as follows:
-
1.
on input \({U:=C\prod _{i=1}^\mu D_i}\), call \({\textsf{PoKRep}}\) \(\textsf{poly}(\lambda )\) times, sampling fresh randomness \(\ell \) for \({\mathcal {V}}\), and obtain \(\textsf{poly}(\lambda )\) number of accepting transcripts \(T:=\{(\ell _i,Q_i,(r_i,\vec s_i))\}_{i=1,\dots ,\textsf{poly}(\lambda )}\) of \({\textsf{PoKRep}}\).
-
2.
run \({\mathcal {E}}_{\textsf{PoKRep}}\) on input T and obtain a witness integer vector \((\hat{g}_1'', \hat{g}_{i,R}',\dots ,\hat{g}_{\mu ,R}')\) such that \(U=G^{\hat{g}_1'}\prod _{i=1}^\mu R_i^{\hat{g}_{i,R}'}\).
-
3.
set \(\hat{g}_{\mu +1}'\leftarrow g_{\mu +1}\) and compute \(\hat{g}_i' \leftarrow (\hat{g}_{i+1}'-\alpha _i\cdot \hat{g}_{i,R}')+q^{2^{\mu -i}}\hat{g}_{i,R}'\) from \(i=\mu \) to 1. If \(\Vert g_1''(X_1,\dots ,X_\mu ):=\rho _q^{-1}(\hat{g}_1'')\Vert _\infty > B_1\) or \(\Vert g_i'(X_1,\dots ,X_{\mu -i+1})\Vert _\infty > B_i\) for some \(i\in [1,\mu ]\), then return to Step 1.
-
4.
if \(\hat{g}_1'=\hat{g}_1''\) and \(g_1'(\vec z)=y\pmod {p}\), output \(g_1'\) and stop.
-
5.
return to Step 1.
We argue that \({\mathcal {E}}_\textsf{PC}\) succeeds with overwhelming probability in a \(\textsf{poly}(\lambda )\) number of rounds. We first claim that Step 3 of \({\mathcal {E}}_\textsf{PC}\) successfully outputs integers \(\hat{g}_1''\) and \(\hat{g}_i'\)’s for \(i=1,\dots ,\mu \) such that \(\Vert \rho _q^{-1}(\hat{g}_1'')\Vert _\infty \le B_1\) and \(\Vert \rho _q^{-1}(\hat{g}_{i}')\Vert _\infty \le B_i\) with overwhelming probability. Suppose we have \(\hat{g}_i'\) such that \(\Vert \rho _q^{-1}(\hat{g}_{i}')\Vert _\infty > B_i\) from an accepting transcript. Then, by Lemma 2, we have \(\Pr [|g_i'(\alpha _\mu ,\dots ,\alpha _{i})|\le B_{\mu +1}]=\Pr [|g_i'(\alpha _\mu ,\dots ,\alpha _{i})|\le B_i/{p^{\mu -i+1}}]\le \Pr [|g_i'(\alpha _\mu ,\dots ,\alpha _{i})|\le \Vert g_i'\Vert _\infty /{p^{\mu -i+1}}]\le \frac{3(\mu -i+1)}{p}\le \frac{3\mu }{p}\), where \({(\alpha _\mu ,\dots ,\alpha _{i})\,{\mathop {\leftarrow }\limits ^{\$}}\,[0,p-1]^{\mu -i+1}}\). Thus, the probability that Step 3 fails to output integers is less than or equal to \(\frac{3\mu ^2}{p}\approx \frac{3\mu ^2}{2^\lambda }\), which is negligible.
We now claim that Step 4 of \({\mathcal {E}}_\textsf{PC}\) successfully outputs a witness polynomial. We argue that \(\hat{g}_1'=\hat{g}_1''\) holds with overwhelming probability. From Step 3, we have \(\hat{g}_1'=\hat{g}_{\mu +1}'+\sum _{i=1}^{\mu }(q^{2^{\mu -i}}-\alpha _i){\hat{g}_{i,R}'}\). Then, by the \(\textsf{PC}.\textsf{Ver}\), it holds that \(\hat{g}_1' = s_{\mu +1}+\sum _{i=1}^{\mu }(q^{2^{\mu -i}}-\alpha _i){\hat{s}_{i,R}}=r=\hat{g}_1''\pmod {\ell }\). Because the verifier sends a randomly selected \(\lambda \)-bit prime \(\ell \) to the prover after the verifier receives all commitments made by the prover, the probability that \(\hat{g}_1'\ne \hat{g}_1''\) is negligible. Finally, we show that \(g_1'(\vec z)=y\). Note that \(g_{\mu +1}=y+\sum _{i=1}^\mu (\alpha _i-z_{\mu +1-i})y_{i,R} \pmod {p}\) from \(\textsf{PC}.\textsf{Ver}\). We also have that \(g_{\mu +1}=g_1'(z_1,\dots ,z_\mu )+\sum _{i=1}^\mu (\alpha _i-z_{\mu +1-i})g_{i,R}'(z_1,\dots ,z_{\mu -i}) \pmod {p}\) from \({\mathcal {E}}_\textsf{PC}\). Thus, \(y+\sum _{i=1}^\mu (\alpha _i-z_{\mu +1-i})y_{i,R}=g_1'(z_1,\dots ,z_\mu )+\sum _{i=1}^\mu (\alpha _i-z_{\mu +1-i})g_{i,R}'(z_1,\dots ,z_{\mu -i}) \pmod {p}\) for \(\vec z=(z_1,\dots ,z_{\mu -i})\) and randomly selected \((\alpha _1,\dots ,\alpha _\mu )\) in \(\textsf{PC}.\textsf{Open}\). This means that \(g_1'(\vec z)=y \pmod {p}\), \(g_{i,R}'=y_{i,r}\pmod {p}\) for \(i=1,\dots ,\mu \) with overwhelming probability.
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Kim, S., Kim, S., Shin, Y., Kim, S., Kim, J., Oh, H. (2024). Efficient Transparent Polynomial Commitments for zk-SNARKs. In: Tsudik, G., Conti, M., Liang, K., Smaragdakis, G. (eds) Computer Security – ESORICS 2023. ESORICS 2023. Lecture Notes in Computer Science, vol 14346. Springer, Cham. https://doi.org/10.1007/978-3-031-51479-1_18
Download citation
DOI: https://doi.org/10.1007/978-3-031-51479-1_18
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-51478-4
Online ISBN: 978-3-031-51479-1
eBook Packages: Computer ScienceComputer Science (R0)