Abstract
Proof-of-stake (PoS) protocols are emerging as one of the most promising alternative to the wasteful proof-of-work (PoW) protocols for consensus in Blockchains (or distributed ledgers). However, current PoS protocols inherently disclose both the identity and the wealth of the stakeholders, and thus seem incompatible with privacy-preserving cryptocurrencies (such as ZCash, Monero, etc.). In this paper we initiate the formal study for PoS protocols with privacy properties. Our results include:
-
1.
A (theoretical) feasibility result showing that it is possible to construct a general class of private PoS (PPoS) protocols; and to add privacy to a wide class of PoS protocols,
-
2.
A privacy-preserving version of a popular PoS protocol, Ouroboros Praos.
Towards our result, we define the notion of anonymous verifiable random function, which we believe is of independent interest.
This work was supported by the Danish Independent Research Council under Grant-ID DFF-6108-00169 (FoCC), the European Research Council (ERC) under the European Unions’s Horizon 2020 research and innovation program under grant agreement No 669255 (MPCPRO) and No 803096 (SPEC), and the Concordium Blockchain Research Center, Aarhus University, Denmark.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
If, for example, the entries are slots (cf. Sect. 4.3) the stake distribution for a particular entry is only defined once the blockchain has grown far enough.
- 2.
Since T is a direct function of \(\mathsf {stk} \), it should be clear why T should stay private. At the same time, revealing the value y and the fact that \(\mathsf {LE} \) output 1 allows to rule out that \(\mathsf {stk} =s\) for any value s such that \(\mathsf {LE} (s;y)=0\).
References
Agrawal, S., Ganesh, C., Mohassel, P.: Non-interactive zero-knowledge proofs for composite statements. In: Shacham, H., Boldyreva, A. (eds.) CRYPTO 2018. Part III. LNCS, vol. 10993, pp. 643–673. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96878-0_22
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, pp. 315–334. IEEE Computer Society Press, May 2018. https://doi.org/10.1109/SP.2018.00020
Ben-Sasson, E., et al.: Zerocash: decentralized anonymous payments from bitcoin. In: 2014 IEEE Symposium on Security and Privacy, pp. 459–474. IEEE Computer Society Press, May 2014. https://doi.org/10.1109/SP.2014.36
Blum, M., Feldman, P., Micali, S.: Non-interactive zero-knowledge and its applications (extended abstract). In: 20th ACM STOC, pp. 103–112. ACM Press, May 1988. https://doi.org/10.1145/62212.62222
Badertscher, C., Gaži, P., Kiayias, A., Russell, A., Zikas, V.: Ouroboros genesis: composable proof-of-stake blockchains with dynamic availability. Cryptology ePrint Archive, Report 2018/378 (2018). https://eprint.iacr.org/2018/378
Bentov, I., Gabizon, A., Mizrahi, A.: Cryptocurrencies without proof of work. In: Clark, J., Meiklejohn, S., Ryan, P.Y.A., Wallach, D., Brenner, M., Rohloff, K. (eds.) FC 2016. LNCS, vol. 9604, pp. 142–157. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53357-4_10
Proof of stake instead of proof of work, July 2011. https://bitcointalk.org/index.php?topic=27787.0
Bentov, I., Lee, C., Mizrahi, A., Rosenfeld, M.: Proof of activity: extending bitcoin’s proof of work via proof of stake [extended abstract] y. ACM SIGMETRICS Perform. Eval. Rev. 42(3), 34–37 (2014)
Boudot, F.: Efficient proofs that a committed number lies in an interval. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 431–444. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45539-6_31
Bentov, I., Pass, R., Shi, E.: Snow white: provably secure proofs of stake. Cryptology ePrint Archive, Report 2016/919 (2016). http://eprint.iacr.org/2016/919
Camenisch, J., Chaabouni, R., Shelat, A.: Efficient protocols for set membership and range proofs. In: Pieprzyk, J. (ed.) ASIACRYPT 2008. LNCS, vol. 5350, pp. 234–252. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89255-7_15
Croman, K., et al.: On scaling decentralized blockchains. In: Clark, J., Meiklejohn, S., Ryan, P.Y.A., Wallach, D., Brenner, M., Rohloff, K. (eds.) FC 2016. LNCS, vol. 9604, pp. 106–125. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53357-4_8
Cramer, R., Damgård, I., Schoenmakers, B.: Proofs of partial knowledge and simplified design of witness hiding protocols. In: Desmedt, Y.G. (ed.) CRYPTO 1994. LNCS, vol. 839, pp. 174–187. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-48658-5_19
Camenisch, J., Michels, M.: Proving in zero-knowledge that a number is the product of two safe primes. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 107–122. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48910-X_8
Camenisch, J., Stadler, M.: Efficient group signature schemes for large groups. In: Kaliski, B.S. (ed.) CRYPTO 1997. LNCS, vol. 1294, pp. 410–424. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0052252
Damgård, I.: Efficient concurrent zero-knowledge in the auxiliary string model. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 418–430. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45539-6_30
David, B., Gaži, P., Kiayias, A., Russell, A.: Ouroboros Praos: an adaptively-secure, semi-synchronous proof-of-stake blockchain. In: Nielsen, J.B., Rijmen, V. (eds.) EUROCRYPT 2018. Part II. LNCS, vol. 10821, pp. 66–98. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-78375-8_3
Fujisaki, E., Okamoto, T.: Statistical zero knowledge protocols to prove modular polynomial relations. In: Kaliski Jr., B.S. (ed.) CRYPTO 1997. LNCS, vol. 1294, pp. 16–30. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0052225
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
Gilad, Y., Hemo, R., Micali, S., Vlachos, G., Zeldovich, N.: Algorand: scaling byzantine agreements for cryptocurrencies. Cryptology ePrint Archive, Report 2017/454 (2017). http://eprint.iacr.org/2017/454
Jarecki, S., Kiayias, A., Krawczyk, H.: Round-optimal password-protected secret sharing and T-PAKE in the password-only model. In: Sarkar, P., Iwata, T. (eds.) ASIACRYPT 2014. Part II. LNCS, vol. 8874, pp. 233–253. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45608-8_13
Kerber, T., Kohlweiss, M., Kiayias, A., Zikas, V.: Ouroboros crypsinous: privacy-preserving proof-of-stake. Cryptology ePrint Archive, Report 2018/1132 (2018). To appear at IEEE Symposium on Security and Privacy - S&P 2019. https://eprint.iacr.org/2018/1132
King, S., Nadal, S.: PPcoin: peer-to-peer crypto-currency with proof-of-stake (2012)
Kiayias, A., Russell, A., David, B., Oliynykov, R.: Ouroboros: a provably secure proof-of-stake blockchain protocol. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017. Part I. LNCS, vol. 10401, pp. 357–388. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63688-7_12
Lindell, Y.: An efficient transform from sigma protocols to NIZK with a CRS and non-programmable random Oracle. In: Dodis, Y., Nielsen, J.B. (eds.) TCC 2015. Part I. LNCS, vol. 9014, pp. 93–109. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46494-6_5
Miers, I., Garman, C., Green, M., Rubin, A.D.: Zerocoin: anonymous distributed E-cash from Bitcoin. In: 2013 IEEE Symposium on Security and Privacy, pp. 397–411. IEEE Computer Society Press, May 2013. https://doi.org/10.1109/SP.2013.34
Nakamoto, S.: Bitcoin: A Peer-to-Peer Electronic Cash System (2008)
O’Dwyer, K.J., Malone, D.: Bitcoin mining and its energy footprint. In: ISSC 2014/CIICT 2014, pp. 280–285 (2014). https://doi.org/10.1049/cp.2014
Pedersen, T.P.: Non-interactive and information-theoretic secure verifiable secret sharing. In: Feigenbaum, J. (ed.) CRYPTO 1991. LNCS, vol. 576, pp. 129–140. Springer, Heidelberg (1992). https://doi.org/10.1007/3-540-46766-1_9
Schnorr, C.-P.: Efficient signature generation by smart cards. J. Cryptol. 4(3), 161–174 (1991)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
Appendix
A Private Proof of Stake Lottery
Theorem 1. The protocol \(\textsf {Lottery Protocol} ^{\mathcal {E},\mathsf {LE}}\) realizes the functionality in the -hybrid world in the presence of a PPT adversary.
Proof
Let \(\mathcal {S}_{\mathsf {zk}} = ( \mathcal {S}_{1}, \mathcal {S}_{2})\) be the simulator of the zero-knowledge proof system used in \(\textsf {Lottery-} \textsf {Protocol} ^{\mathcal {E},\mathsf {LE}}\). We construct a simulator \(\mathcal {S}_{\textsf {lottery}} \) and argue that the views of the adversary in the simulated execution and real protocol execution are computationally close. Consider the simulator \(\mathcal {S}_{\textsf {lottery}} \).
Let \(\textsc {HYB} _0\) be the (distribution) of the protocol execution (in the hybrid world where the auxiliary functionalities are available). We consider the world \(\textsc {HYB} _1\) which is the same as the protocol execution except for the following: calls to are answered as is done by the simulator \(\mathcal {S}_{\textsf {lottery}} \) consistent with the outcome returned by . It follows that distributions of \(\textsc {HYB} _0\) and \(\textsc {HYB} _1\) are indistinguishable. We now argue that the world \(\textsc {HYB} _1\) is computationally indistinguishable from the ideal world simulation.
Simulation of The only difference between \(\textsc {HYB} _1\) and the simulation is that the list \(\mathcal {L}\) consists of commitments to honest stakes in the protocol, whereas the commitments are to 0 in the interaction with the simulator. By the hiding property of the commitment scheme \(\mathsf {Com} \), the two distributions are identical.
Simulation of The CRS in \(\textsc {HYB} _1\) is distributed the same as in the simulation.
Simulation of The key-generation and evaluation queries by the adversary are distributed the same. The same holds for verification queries where the adversary verifies a commitment which was created by an evaluation query by the adversary. In \(\textsc {HYB} _1\), any other commitment message pair will be verified as true only if the commitment was part of an honest tuple \((\mathsf {e},m,c,\pi _{\mathsf {zk}})\) which was sent to the adversary via . Similarly, in the simulation any other commitment message pair will only be evaluated as true if the commitment was part of a simulated honest tuple.
Simulation of . If the adversary sends a tuple \((\mathsf {e},m,c,\pi _{\mathsf {zk}})\) in \(\textsc {HYB} _1\), parties will accept it only if it is valid with respect to the information of , and . In the ideal world, the simulator does the same checks with respect to the simulated functionalities. The simulator will then submit \((\mathsf {e},m)\) to which will send it to honest parties. The soundness of the zero-knowledge proof system and the binding property of the commitment scheme guarantee that the adversary can only submit tuples \((\mathsf {e},m,c,\pi _{\mathsf {zk}})\) where the dishonest stakeholder won the lottery for \(\mathsf {e} \). Thus the distribution of \(\textsc {HYB} _1\) and the ideal world is indistinguishable.
If in \(\textsc {HYB} _1\) an honest stakeholder wins the lottery for entry \(\mathsf {e} \) and publishes a message m via , the adversary will receive a tuple of the form \((\mathsf {e},m,c,\pi _{\mathsf {zk}})\). In the ideal world, the simulator gets \((\mathsf {e},m)\) and creates a simulated tuple. By the zero-knowledge property of the proof system the distribution of \(\textsc {HYB} _1\) and the ideal-world is indistinguishable. \(\square \)
B Extended Preliminaries
1.1 B.1 Non-interactive Zero-Knowledge
Definition 3
(Non-interactive Zero-knowledge Argument). A non-interactive zero-knowledge argument for an NP relation R consists of a triple of polynomial time algorithms \((\mathsf {Setup},\mathsf {Prove},\mathsf {Verify})\) defined as follows.
-
\(\mathsf {Setup}(1^\kappa )\) takes a security parameter \(\kappa \) and outputs a common reference string \(\sigma \).
-
\(\mathsf {Prove}(\sigma , x, w)\) takes as input the CRS \(\sigma \), a statement x, and a witness w, and outputs an argument \(\pi \).
-
\(\mathsf {Verify}(\sigma , x, \pi )\) takes as input the CRS \(\sigma \), a statement x, and a proof \(\pi \), and outputs either 1 accepting the argument or 0 rejecting it.
The algorithms above should satisfy the following properties.
-
1.
Completeness. For all \(\kappa \in \mathbb {N} \), \((x, w) \in R\),
-
2.
Computational soundness. For all PPT adversaries \(\mathcal {A}\), the following probability is negligible in \(\kappa \):
-
3.
Zero-knowledge. There exists a PPT simulator \((\mathcal {S}_1, \mathcal {S}_2)\) such that \(\mathcal {S}_1\) outputs a simulated CRS \({\varSigma }\) and trapdoor \(\tau \); \(\mathcal {S}_2\) takes as input \(\sigma \), a statement s and \(\tau \), and outputs a simulated proof \(\pi \); and, for all PPT adversaries \((\mathcal {A}_1,\mathcal {A}_2)\), the following probability is negligible in \(\kappa \):
$$\begin{aligned}&\left| \Pr \left( \begin{matrix} (x, w) \in R \, \wedge \\ \mathcal {A}_2 (\pi ,\mathsf {st}) = 1 \end{matrix} \,:\ \begin{matrix} \sigma \leftarrow \mathsf {Setup}(1^\kappa )\\ (x, w, \mathsf {st}) \leftarrow \mathcal {A}_1 (1^{\kappa },\sigma ) \\ \pi \leftarrow \mathsf {Prove}(\sigma , x, w) \end{matrix} \right) \right. - \\&\qquad \qquad \qquad \qquad \quad \quad \left. \Pr \left( \begin{matrix} (x, w) \in R \, \wedge \\ \mathcal {A}_2 (\pi ,\mathsf {st}) = 1 \end{matrix} \,:\ \begin{matrix} (\sigma , \tau ) \leftarrow \mathcal {S}_1(1^\kappa ) \\ (x, w,\mathsf {st}) \leftarrow \mathcal {A}_1 (1^{\kappa },\sigma ) \\ \pi \leftarrow \mathcal {S}_2(\sigma , \tau , x) \end{matrix} \right) \right| . \end{aligned}$$
Rights and permissions
Copyright information
© 2019 International Association for Cryptologic Research
About this paper
Cite this paper
Ganesh, C., Orlandi, C., Tschudi, D. (2019). Proof-of-Stake Protocols for Privacy-Aware Blockchains. In: Ishai, Y., Rijmen, V. (eds) Advances in Cryptology – EUROCRYPT 2019. EUROCRYPT 2019. Lecture Notes in Computer Science(), vol 11476. Springer, Cham. https://doi.org/10.1007/978-3-030-17653-2_23
Download citation
DOI: https://doi.org/10.1007/978-3-030-17653-2_23
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-17652-5
Online ISBN: 978-3-030-17653-2
eBook Packages: Computer ScienceComputer Science (R0)