ZPiE: Zero-Knowledge Proofs in Embedded Systems
Abstract
:1. Introduction
1.1. Motivation
1.2. Contributions
1.3. Roadmap
2. Related Work
2.1. ZKP Use Cases
2.2. ZKP Schemes
3. Building Blocks: zk-SNARKs
3.1. Preliminaries
- Completeness: If the statement is true, P must be able to convince V.
- Soundness: If the statement is false, P must not be able to convince V that the statement is true, except with negligible probability.
- Zero-knowledge:V must not learn any information from the proof beyond the fact that the statement is true.
3.2. Protocol
- : given the relation , the first step of the protocol generates a common reference string (CRS) . From the CRS, some elements will be extracted into what we call the proving key , sent to the prover P to generate proofs. Moreover, other required elements will be taken into the verifying key , and sent to the verifier V to verify the proofs generated by P. In order to generate the CRS (i.e., and ), a random set of values is used. This , also known as , should be destroyed after performing the setup, as any party having would be able to generate false proofs. To solve this last drawback, the setup must be generated by a trusted party (i.e., a set of entities performing a secure MPC protocol). In scenarios such as cryptocurrencies using zk-SNARKs (i.e., Zcash), an untrusty setup could lead to malicious parties using to create false transactions, thus leading to losses of money.
- : the prover generates a proof , by multiplying u and w by some polynomials provided in . The prover also needs to compute the coefficients h of , which can be achieved in using Fast Fourier Transform (FFT) techniques, as explained in detail in Appendix B. Then, h is multiplied by a polynomial provided in . The number of multi-exponentiations required to compute are (note that multi-exponentiations in are more expensive than multi-exponentiations in ):
- –
- to compute : multi-exponentiations in .
- –
- to compute : multi-exponentiations in .
- –
- to compute : multi-exponentiations in .
- : the verifier accepts the proof (1) if an equation composed of three pairings [33] holds. Otherwise, the proof is rejected (0). Moreover, modifying a single bit of the proof leads to a proof that cannot be verified.
4. Our Solution: ZPiE
4.1. Design
4.2. Implementation
4.3. Efficiency
4.3.1. Computing h Coefficients
4.3.2. Multi-Exponentiations
4.4. Applications
5. Experiments and Results
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Abbreviations
ZKP | Zero-Knowledge Proof |
IoT | Internet of Things |
ISP | Internet Service Provider |
DApps | Distributed Applications |
DLP | Discrete Logarithm Problem |
CRHF | Collision-Resistant Hash Functions |
NIZKP | Non-Interactive Zero-Knowledge Proofs |
CRS | Common Reference String |
MPC | Multi-Party Computation |
R1CS | Rank 1 Constraint System |
QAP | Quadratic Arithmetic Program |
FFT | Fast Fourier Transform |
List of Mathematical Symbols
u | Statement |
Language | |
w | Witness |
Relation | |
Secret randomness | |
E | Elliptic curve |
Finite field | |
q | Prime number |
Group | |
e | Pairing |
g | Generator of |
h | Generator of |
r | Order of the elliptic curve group |
Elements of the Common Reference String | |
Proof | |
l | Big integer |
Size of the domain used for the FFTs | |
T | Shifted domain |
Appendix A. Groth’16
- : To perform the setup, we pick from and define . Later we compute :
- The prover randomly picks in and computes :
- : the verifier accepts the proof iff the following equation holds:
Appendix B. FFT Techniques for Computing h Coefficients
- Computes 3 IFFTs in our domain S:
- Computes 3 FFTs in our domain T:
- Computes point by point.
- Computes the shifted coefficients and it finally gets point by point.
Appendix C. Bos-Coster
- if , we remove this pair
- We sort the list again
References
- Shafi, M.; Molisch, A.F.; Smith, P.J.; Haustein, T.; Zhu, P.; De Silva, P.; Tufvesson, F.; Benjebbour, A.; Wunder, G. 5G: A Tutorial Overview of Standards, Trials, Challenges, Deployment, and Practice. IEEE J. Sel. Areas Commun. 2017, 35, 1201–1221. [Google Scholar] [CrossRef]
- He, K.; Wang, Z.; Li, D.; Zhu, F.; Fan, L. Ultra-reliable MU-MIMO detector based on deep learning for 5G/B5G-enabled IoT. Phys. Commun. 2020, 43, 101181. [Google Scholar] [CrossRef]
- Painuly, S.; Kohli, P.; Matta, P.; Sharma, S. Advance applications and future challenges of 5G IoT. In Proceedings of the 2020 3rd International Conference on Intelligent Sustainable Systems (ICISS), Palladam, India, 3–5 December 2020; pp. 1381–1384. [Google Scholar] [CrossRef]
- Mohammadnia, H.; Slimane, S.B. IoT-NETZ: Practical spoofing attack mitigation approach in SDWN network. In Proceedings of the 2020 Seventh International Conference on Software Defined Systems (SDS), Paris, France, 30 June–3 July 2020; pp. 5–13. [Google Scholar] [CrossRef]
- Kim, B.; Yoon, S.; Kang, Y.; Choi, D. PUF based IoT device authentication scheme. In Proceedings of the 2019 International Conference on Information and Communication Technology Convergence (ICTC), Jeju Island, Korea, 16–18 October 2019; pp. 1460–1462. [Google Scholar] [CrossRef]
- Khalid, U.; Asim, M.; Baker, T.; Hung, P.C.; Tariq, M.A.; Rafferty, L. A decentralized lightweight blockchain-based authentication mechanism for IoT systems. Clust. Comput. 2020, 1–21. [Google Scholar] [CrossRef]
- Leible, S.; Schlager, S.; Schubotz, M.; Gipp, B. A Review on Blockchain Technology and Blockchain Projects Fostering Open Science. Front. Blockchain 2019, 2, 16. [Google Scholar] [CrossRef]
- Sovrin Foundation. Sovrin: A Protocol and Token for Self-Sovereign Identity and Decentralized Trust. 2018. Available online: https://sovrin.org/wp-content/uploads/Sovrin-Protocol-and-Token-White-Paper.pdf (accessed on 28 September 2021).
- Luecking, M.; Fries, C.; Lamberti, R.; Stork, W. Decentralized identity and trust management framework for internet of things. In Proceedings of the 2020 IEEE International Conference on Blockchain and Cryptocurrency (ICBC), Toronto, ON, Canada, 2–6 May 2020; pp. 1–9. [Google Scholar] [CrossRef]
- Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. 2009. Available online: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3440802 (accessed on 20 August 2021).
- Hopwood, D.; Bowe, S.; Hornby, T.; Wilcox, N. Zcash Protocol Specification— Version 2019.0.2. 2019. Available online: https://github.com/zcash/zips/blob/master/protocol/protocol.pdf (accessed on 28 September 2021).
- Salleras, X.; Daza, V. SANS: Self-Sovereign Authentication for Network Slices. Secur. Commun. Netw. 2020, 2020. [Google Scholar] [CrossRef]
- Wood, D. Ethereum: A Secure Decentralised Generalised Transaction Ledger. 2014. Available online: https://files.gitter.im/ethereum/yellowpaper/VIyt/Paper.pdf (accessed on 16 April 2021).
- Wu, H.; Zheng, W.; Chiesa, A.; Popa, R.A.; Stoica, I. DIZK: A distributed zero knowledge proof system. In Proceedings of the 27th USENIX Security Symposium (USENIX Security 18), Baltimore, MD, USA, 15–17 August 2018; pp. 675–692. [Google Scholar]
- Gabay, D.; Akkaya, K.; Cebe, M. Privacy-Preserving Authentication Scheme for Connected Electric Vehicles Using Blockchain and Zero Knowledge Proofs. IEEE Trans. Veh. Technol. 2020, 69, 5760–5772. [Google Scholar] [CrossRef]
- Sestrem Ochôa, I.; Reis Quietinho Leithardt, V.; Calbusch, L.; De Paz Santana, J.F.; Delcio Parreira, W.; Oriel Seman, L.; Albenes Zeferino, C. Performance and Security Evaluation on a Blockchain Architecture for License Plate Recognition Systems. Appl. Sci. 2021, 11, 1255. [Google Scholar] [CrossRef]
- Ben-Sasson, E.; Chiesa, A.; Tromer, E.; Virza, M. Succinct non-interactive zero knowledge for a von neumann architecture. In Proceedings of the 23rd USENIX Security Symposium (USENIX Security 14), San Diego, CA, USA, 20–22 August 2014; pp. 781–796. [Google Scholar]
- Groth, J. On the size of pairing-based non-interactive arguments. In Advances in Cryptology—EUROCRYPT 2016; Fischlin, M., Coron, J.S., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; pp. 305–326. [Google Scholar]
- Maller, M.; Bowe, S.; Kohlweiss, M.; Meiklejohn, S. Sonic: Zero-knowledge SNARKs from linear-size universal and updatable structured reference strings. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, London, UK, 11–15 November 2019; Association for Computing Machinery: New York, NY, USA, 2019; pp. 2111–2128. [Google Scholar] [CrossRef] [Green Version]
- Xie, T.; Zhang, J.; Zhang, Y.; Papamanthou, C.; Song, D. Libra: Succinct zero-knowledge proofs with optimal prover computation. In Advances in Cryptology—CRYPTO 2019; Boldyreva, A., Micciancio, D., Eds.; Springer International Publishing: Cham, Switzerland, 2019; pp. 733–764. [Google Scholar]
- Gabizon, A.; Williamson, Z.J.; Ciobotaru, O. PLONK: Permutations over Lagrange-Bases for Oecumenical Noninteractive Arguments of Knowledge. Cryptology ePrint Archive, Report 2019/953. 2019. Available online: https://ia.cr/2019/953 (accessed on 28 September 2021).
- Lee, J.; Setty, S.; Thaler, J.; Wahby, R. Linear-Time and Post-Quantum Zero-Knowledge SNARKs for R1CS. Cryptology ePrint Archive, Report 2021/030. 2021. Available online: https://ia.cr/2021/030 (accessed on 28 September 2021).
- Bünz, B.; Bootle, J.; Boneh, D.; Poelstra, A.; Wuille, P.; Maxwell, G. Bulletproofs: Short proofs for confidential transactions and more. In Proceedings of the 2018 IEEE Symposium on Security and Privacy (SP), San Francisco, CA, USA, 21–23 May 2018; pp. 315–334. [Google Scholar] [CrossRef]
- Ben-Sasson, E.; Bentov, I.; Horesh, Y.; Riabzev, M. Scalable, Transparent, and Post-Quantum Secure Computational Integrity. Cryptology ePrint Archive, Report 2018/046. 2018. Available online: https://eprint.iacr.org/2018/046 (accessed on 28 September 2021).
- Morais, E.; Koens, T.; Van Wijk, C.; Koren, A. A survey on zero knowledge range proofs and applications. SN Appl. Sci. 2019, 1, 1–17. [Google Scholar] [CrossRef] [Green Version]
- Goldwasser, S.; Tauman Kalai, Y. Cryptographic assumptions: A position paper. In Theory of Cryptography; Kushilevitz, E., Malkin, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; pp. 505–522. [Google Scholar]
- Goldwasser, S.; Micali, S.; Rackoff, C. The knowledge complexity of interactive proof-systems. In Proceedings of the Seventeenth Annual ACM Symposium on Theory of Computing, Providence, RI, USA, 6–8 May 1985; ACM: New York, NY, USA, 1985; pp. 291–304. [Google Scholar] [CrossRef] [Green Version]
- Blum, M.; Feldman, P.; Micali, S. Non-interactive zero-knowledge and its applications. In Proceedings of the Twentieth Annual ACM Symposium on Theory of Computing, Chicago, IL, USA, 2–4 May 1988; ACM: New York, NY, USA, 1988; pp. 103–112. [Google Scholar] [CrossRef]
- Bowe, S.; Gabizon, A.; Miers, I. Scalable Multi-Party Computation for zk-SNARK Parameters in the Random Beacon Model. Cryptology ePrint Archive, Report 2017/1050. 2017. Available online: https://eprint.iacr.org/2017/1050 (accessed on 28 September 2021).
- Barreto, P.S.L.M.; Naehrig, M. Pairing-friendly elliptic curves of prime order. In Selected Areas in Cryptography; Preneel, B., Tavares, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2006; pp. 319–331. [Google Scholar]
- Menezes, A.; Sarkar, P.; Singh, S. Challenges with Assessing the Impact of NFS Advances on the Security of Pairing-Based Cryptography. Cryptology ePrint Archive, Report 2016/1102. 2016. Available online: https://eprint.iacr.org/2016/1102 (accessed on 28 September 2021).
- El Housni, Y.; Guillevic, A. Optimized and secure pairing-friendly elliptic curves suitable for one layer proof composition. In Cryptology and Network Security; Krenn, S., Shulman, H., Vaudenay, S., Eds.; Springer International Publishing: Cham, Switzerland, 2020; pp. 259–279. [Google Scholar]
- Beuchat, J.L.; González-Díaz, J.E.; Mitsunari, S.; Okamoto, E.; Rodríguez-Henríquez, F.; Teruya, T. High-speed software implementation of the optimal ate pairing over Barreto–Naehrig curves. In Pairing-Based Cryptography—Pairing 2010; Joye, M., Miyaji, A., Otsuka, A., Eds.; Springer: Berlin/Heidelberg, Germany, 2010; pp. 21–39. [Google Scholar]
- Albrecht, M.; Grassi, L.; Rechberger, C.; Roy, A.; Tiessen, T. MiMC: Efficient encryption and cryptographic hashing with minimal multiplicative complexity. In Advances in Cryptology—ASIACRYPT 2016; Cheon, J.H., Takagi, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; pp. 191–219. [Google Scholar]
- Bernstein, D.J.; Duif, N.; Lange, T.; Schwabe, P.; Yang, B.Y. High-Speed High-Security Signatures. J. Cryptogr. Eng. 2012, 2. Available online: https://cr.yp.to/papers.html#ed25519 (accessed on 28 September 2021). [CrossRef] [Green Version]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Salleras, X.; Daza, V. ZPiE: Zero-Knowledge Proofs in Embedded Systems. Mathematics 2021, 9, 2569. https://doi.org/10.3390/math9202569
Salleras X, Daza V. ZPiE: Zero-Knowledge Proofs in Embedded Systems. Mathematics. 2021; 9(20):2569. https://doi.org/10.3390/math9202569
Chicago/Turabian StyleSalleras, Xavier, and Vanesa Daza. 2021. "ZPiE: Zero-Knowledge Proofs in Embedded Systems" Mathematics 9, no. 20: 2569. https://doi.org/10.3390/math9202569
APA StyleSalleras, X., & Daza, V. (2021). ZPiE: Zero-Knowledge Proofs in Embedded Systems. Mathematics, 9(20), 2569. https://doi.org/10.3390/math9202569