Abstract
One possible applicability of blockchain technology is in identity management. Especially for public blockchains, the need to reduce (ideally to zero) the exposure of sensitive identification data is clear. Under these settings, zero-knowledge proofs, in particular in the advanced forms of Zero-Knowledge Succinct Non-Interactive ARguments of Knowledge (zk-SNARK) and Zero-Knowledge Scalable Transparent ARguments of Knowledge (zk-STARK), can be used as a potential privacy-preserving technique. The current work looks at the existing libraries that implement zk-SNARKs and zk-STARKs and exemplifies and discusses the use of zk-SNARKs in blockchain-based identity management solutions.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Kosba, A.: xJsnark (2020).https://github.com/akosba/xjsnark
Barreto, P.S.L.M., Naehrig, M.: Pairing-friendly elliptic curves of prime order. In: Preneel, B., Tavares, S. (eds.) SAC 2005. LNCS, vol. 3897, pp. 319–331. Springer, Heidelberg (2006). https://doi.org/10.1007/11693383_22
Ben-Sasson, E.: libSTARK (2020). https://github.com/elibensasson/libSTARK
Ben-Sasson, E., Bentov, I., Horesh, Y., Riabzev, M.: Scalable, transparent, and post-quantum secure computational integrity. IACR Cryptology ePrint Archive 2018, 46 (2018)
Ben-Sasson, E., Chiesa, A., Genkin, D., Tromer, E., Virza, M.: SNARKs for C: verifying program executions succinctly and in zero knowledge. In: Canetti, R., Garay, J.A. (eds.) CRYPTO 2013. LNCS, vol. 8043, pp. 90–108. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40084-1_6
Ben-Sasson, E., Chiesa, A., Tromer, E., Virza, M.: Scalable zero knowledge via cycles of elliptic curves. In: Garay, J.A., Gennaro, R. (eds.) CRYPTO 2014. LNCS, vol. 8617, pp. 276–294. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44381-1_16
Ben-Sasson, E., Chiesa, A., Tromer, E., Virza, M.: Succinct non-interactive zero knowledge for a von neumann architecture. In: 23rd USENIX Security Symposium (USENIX Security 2014), San Diego, CA, pp. 781–796. USENIX Association, August 2014. https://www.usenix.org/conference/usenixsecurity14/technical-sessions/presentation/ben-sasson
Bitansky, N., Canetti, R., Chiesa, A., Tromer, E.: From extractable collision resistance to succinct non-interactive arguments of knowledge, and back again. In: Proceedings of the 3rd Innovations in Theoretical Computer Science Conference, pp. 326–349 (2012)
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, STOC 1988, New York, NY, USA, pp. 103–112. Association for Computing Machinery (1988). https://doi.org/10.1145/62212.62222
Bowe, S., Gabizon, A.: Making groth’s zk-snark simulation extractable in the random oracle model. IACR Cryptology ePrint Archive 2018, 187 (2018). http://dblp.uni-trier.de/db/journals/iacr/iacr2018.html#BoweG18
Bowe, S., Grigg, J., Hopwood, D.: Recursive proof composition without a trusted setup. Technical report, Cryptology ePrint Archive, Report 2019/1021 (2019). https://eprint.iacr.org/2019/1021
Brassard, G., Chaum, D., Crépeau, C.: Minimum disclosure proofs of knowledge. J. Comput. Syst. Sci. 37(2), 156–189 (1988)
Bünz, B., Bootle, J., Boneh, D., Poelstra, A., Wuille, P., Maxwell, G.: Bulletproofs: short proofs for confidential transactions and more. In: 2018 IEEE Symposium on Security and Privacy (SP), pp. 315–334. IEEE (2018)
Campanelli, M., Fiore, D., Querol, A.: LegoSNARK: modular design and composition of succinct zero-knowledge proofs. In: Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, pp. 2075–2092 (2019)
Cerezo Sánchez, D.: Zero-knowledge proof-of-identity: Sybil-resistant, anonymous authentication on permissionless blockchains and incentive compatible, strictly dominant cryptocurrencies. Anonymous Authentication on Permissionless Blockchains and Incentive Compatible, Strictly Dominant Cryptocurrencies, 22 May 2019 (2019)
Chiesa, A., Manohar, P., Spooner, N.: Succinct arguments in the quantum random oracle model. In: Hofheinz, D., Rosen, A. (eds.) TCC 2019. LNCS, vol. 11892, pp. 1–29. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-36033-7_1
Consensys: Metamask (2020). https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn?hl=en
Costello, C., et al.: Geppetto: versatile verifiable computation. In: 2015 IEEE Symposium on Security and Privacy, pp. 253–270 (2015)
Dunphy, P., Petitcolas, F.A.: A first look at identity management schemes on the blockchain. IEEE Secur. Privacy 16(4), 20–29 (2018)
Eberhardt, J., Tai, S.: Zokrates-scalable privacy-preserving off-chain computations. In: 2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), pp. 1084–1091. IEEE (2018)
Edwards, H.: A normal form for elliptic curves. Bull. Am. Math. Soc. 44(3), 393–422 (2007)
Ethereum (2020). https://ethereum.org/en
Etherscan: Ethereum Blockchain Explorer (2020). https://etherscan.io
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
Gennaro, R., Gentry, C., Parno, B., Raykova, M.: Quadratic span programs and succinct NIZKs without PCPs. In: Johansson, T., Nguyen, P.Q. (eds.) EUROCRYPT 2013. LNCS, vol. 7881, pp. 626–645. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38348-9_37
Gennaro, R., Minelli, M., Nitulescu, A., Orrù, M.: Lattice-based ZK-snarks from square span programs. In: Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, pp. 556–573 (2018)
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, STOC 1985, New York, NY, USA, pp. 291–304 (1985). Association for Computing Machinery (1985). https://doi.org/10.1145/22145.22178
Groth, J.: Short pairing-based non-interactive zero-knowledge arguments. In: Abe, M. (ed.) ASIACRYPT 2010. LNCS, vol. 6477, pp. 321–340. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-17373-8_19
Groth, J.: On the size of pairing-based non-interactive arguments. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016. LNCS, vol. 9666, pp. 305–326. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49896-5_11
Groth, J., Maller, M.: Snarky signatures: minimal signatures of knowledge from simulation-extractable SNARKs. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017. LNCS, vol. 10402, pp. 581–612. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63715-0_20
GuildOfWeavers: genSTARK (2020). https://github.com/GuildOfWeavers/genSTARK
iden3: Circom (2020). https://github.com/iden3/circom
iden3: Snarkjs (2020). https://github.com/iden3/snarkjs
Kilian, J.: A note on efficient zero-knowledge proofs and arguments (extended abstract). In: Proceedings of the Twenty-Fourth Annual ACM Symposium on Theory of Computing, STOC 1992, New York, NY, USA, pp. 723–732. Association for Computing Machinery (1992). https://doi.org/10.1145/129712.129782
Kosba, A.: jsnark (2020). https://github.com/akosba/jsnark
Lab, S.: libSNARK (2020). https://github.com/scipr-lab/libsnark
o1 labs: Snarky (2020). https://github.com/o1-labs/snarky
Lee, J., Hwang, J., Choi, J., Oh, H., Kim, J.: Sims: Self sovereign identity management system with preserving privacy in blockchain. IACR Cryptology ePrint Archive 2019, 1241 (2019)
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, pp. 2111–2128 (2019)
Meckler, I., Shapiro, E.: Coda: Decentralized cryptocurrency at scale (2018)
Micali, S.: Cs proofs. In: Proceedings of the 35th Annual Symposium on Foundations of Computer Science, SFCS 1994, pp. 436–453. IEEE Computer Society, USA (1994). https://doi.org/10.1109/SFCS.1994.365746
Miyaji, A., Nakabayashi, M., Takano, S.: New explicit conditions of elliptic curve traces for FR-reduction. IEICE Trans. Fund. Electron. Commun. Comput. Sci. 84(5), 1234–1243 (2001)
Network, K.T.: Address Smart Contract Program 2 (2020). https://kovan.etherscan.io/address/0x0d0771402acb9d11c73a2df84525b030914a3c47
Nework, K.T.: Address Smart Contract Program 1 (2020). https://kovan.etherscan.io/address/0xd7df4c356b182057265a8b36703fb91a9e293b36
Nitulescu, A.: Lattice-based zero-knowledge SNARGs for arithmetic circuits. In: Schwabe, P., Thériault, N. (eds.) LATINCRYPT 2019. LNCS, vol. 11774, pp. 217–236. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-30530-7_11
Github Pages: Zero-Knowledge Proofs (2020). https://zkp.science
Panait, A.-E., Olimid, R.F., Stefanescu, A.: Analysis of uPort open, an identity management blockchain-based solution. In: Gritzalis, S., Weippl, E.R., Kotsis, G., Tjoa, A.M., Khalil, I. (eds.) TrustBus 2020. LNCS, vol. 12395, pp. 3–13. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-58986-8_1
Panait, A.E., Olimid, R.F., Stefanescu, A.: Identity management on blockchain-privacy and security aspects. Proc. Romanian Acad. Ser. A 21(1), 45–52 (2020)
Parno, B., Howell, J., Gentry, C., Raykova, M.: Pinocchio: nearly practical verifiable computation. In: 2013 IEEE Symposium on Security and Privacy, pp. 238–252 (2013)
Pinto, A.: An Introduction to the use of ZK-SNARKs in Blockchains, pp. 233–249, January 2020. https://doi.org/10.1007/978-3-030-37110-4_16
Remix: Remix Ethereum-IDE Tool (2019). https://remix.ethereum.org
SCIPR Lab: Dizk (2020). https://github.com/scipr-lab/dizk
SCIPR Lab: Zexe (2020). https://github.com/scipr-lab/zexe
Sharma, B., Halder, R., Singh, J.: Blockchain-based interoperable healthcare using zero-knowledge proofs and proxy re-encryption. In: 2020 International Conference on COMmunication Systems NETworkS (COMSNETS), pp. 1–6 (2020)
eIDAS eID Technical Subgroup: eIDAS SAML Attribute Profile (2019). https://ec.europa.eu/cefdigital/wiki/download/attachments/82773108/eIDAS%20SAML%20Attribute%20Profile%20v1.2%20Final.pdf?version=2&modificationDate=1571068651772&api=v2
Wu, H., Zheng, W., Chiesa, A., Popa, R.A., Stoica, I.: DIZK: a distributed zero knowledge proof system. In: 27th USENIX Security Symposium (USENIX Security 2018), pp. 675–692 (2018)
Xie, T., Zhang, J., Zhang, Y., Papamanthou, C., Song, D.: Libra: succinct zero-knowledge proofs with optimal prover computation. In: Boldyreva, A., Micciancio, D. (eds.) CRYPTO 2019. LNCS, vol. 11694, pp. 733–764. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26954-8_24
Yaga, D., Mell, P., Roby, N., Scarfone, K.: Blockchain technology overview. https://nvlpubs.nist.gov/nistpubs/ir/2018/NIST.IR.8202.pdf
Zcash: What are zk-SNARKs? (2018). https://z.cash/technology/zksnarks
zkcrypto: Bellman (2020). https://github.com/zkcrypto/bellman
zkcrypto: Bls12-381 (2020). https://github.com/zkcrypto/bls12_381
ZoKrates: Zokrates tutorial (2020). https://zokrates.github.io (All links were last accessed October)
Acknowledgment
This work was partially supported by a grant of Romanian Ministry of Research and Innovation project no. 17PCCDI/2018.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Panait, AE., Olimid, R.F. (2021). On Using zk-SNARKs and zk-STARKs in Blockchain-Based Identity Management. In: Maimut, D., Oprina, AG., Sauveron, D. (eds) Innovative Security Solutions for Information Technology and Communications. SecITC 2020. Lecture Notes in Computer Science(), vol 12596. Springer, Cham. https://doi.org/10.1007/978-3-030-69255-1_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-69255-1_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-69254-4
Online ISBN: 978-3-030-69255-1
eBook Packages: Computer ScienceComputer Science (R0)