Abstract
The modern financial world has seen a significant rise in the use of cryptocurrencies in recent years, in no small part due to convincing levels of anonymity promised by such schemes. Bitcoin, despite being the most widespread, has significant lapses of anonymity. Several recent constructions aim to bridge some of those gaps. Amid such developments, there have been many attempts to evaluate the anonymity prospects of such schemes, but always with a rather narrow view based on metrics tailored to the schemes being studied.
Here, we employ a common universal framework to characterise the many aspects of anonymity achieved, or not, by any (crypto, digital, or physical) currency schemes, irrespective of the underlying implementation. We focus on a few high-profile practical cases of interest (including Bitcoin, Zcash, Monero, Mimblewimble) and use our common framework to draw detailed and meaningful comparisons.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
By which we mean: permissionless, fully decentralized, with democratic governance, and transparently operated—in other words, conducive to trust from first principles.
- 2.
I.e. where the adversary has to distinguish between two transactions that differ in all aspects: sender, receiver, value and metadata.
References
Introduction to mimblewimble and grin (August 2020). https://github.com/mimblewimble/grin/blob/master/doc/intro.md
Alonso, K.M.: Zero to Monero (2020). https://src.getmonero.org/library/Zero-to-Monero-1-0-0.pdf
Alsalami, N., Zhang, B.: SoK: A systematic study of anonymity in cryptocurrencies. In: 2019 IEEE Conference on Dependable and Secure Computing (DSC) (2019)
Amarasinghe, N., Boyen, X., McKague, M.: A survey of anonymity of cryptocurrencies. In: Proceedings of the Australasian Computer Science Week Multiconference, pp. 2:1–2:10. ACSW 2019, ACM, New York (2019)
Amarasinghe, N., Boyen, X., McKague, M.: The cryptographic complexity of anonymous coins: A systematic exploration. Cryptology ePrint Archive, Report 2021/036 (2021). https://eprint.iacr.org/2021/036
Androulaki, E., Karame, G.O., Roeschlin, M., Scherer, T., Capkun, S.: Evaluating user privacy in bitcoin. In: Sadeghi, A.-R. (ed.) FC 2013. LNCS, vol. 7859, pp. 34–51. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39884-1_4
Biryukov, A., Tikhomirov, S.: Deanonymization and linkability of cryptocurrency transactions based on network analysis. In: 2019 IEEE European Symposium on Security and Privacy (EuroS P), pp. 172–184 (June 2019)
Cachin, C., De Caro, A., Moreno-Sanchez, P., Tackmann, B., Vukolic, M.: The transaction graph for modeling blockchain semantics. IACR Cryptology ePrint Archive 2017, 1070 (2017)
Conti, M., Kumar, S., Lal, C., Ruj, S.: A survey on security and privacy issues of bitcoin. IEEE Commun. Surv. Tutorials 20(4), 3416–3452 (2018)
DÃaz, C., Seys, S., Claessens, J., Preneel, B.: Towards measuring anonymity. In: Dingledine, R., Syverson, P. (eds.) PET 2002. LNCS, vol. 2482, pp. 54–68. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-36467-6_5
Fuchsbauer, G., Orrù, M., Seurin, Y.: Aggregate cash systems: a cryptographic investigation of mimblewimble. In: EUROCRYPT (2019)
Hopwood, D., Bowe, S., Hornby, T., Wilcox, N.: Zcash protocol specification version 2020.1.3. Technical Report, Electric Coin Company (2020)
Jedusor, T.E.: Mimblewimble (2017). https://scalingbitcoin.org/papers/mimblew- imble.txt
Kappos, G., Yousaf, H., Maller, M., Meiklejohn, S.: An empirical analysis of anonymity in zcash. CoRR abs/1805.03180 (2018)
Khalilov, M.C.K., Levi, A.: A survey on anonymity and privacy in bitcoin-like digital cash systems. IEEE Commun. Surv. Tutorials 3, 1 (2018)
Kumar, A., Fischer, C., Tople, S., Saxena, P.: A traceability analysis of monero’s blockchain. In: Foley, S.N., Gollmann, D., Snekkenes, E. (eds.) ESORICS 2017. LNCS, vol. 10493, pp. 153–173. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66399-9_9
Meiklejohn, S., et al.: A fistful of bitcoins: characterizing payments among men with no names. In: Proceedings of the 2013 Conference on Internet Measurement Conference, pp. 127–140. IMC 2013, ACM, New York (2013)
Miller, A., Moeser, M., Lee, K., Narayanan, A.: An empirical analysis of linkability in the monero blockchain. arXiv preprint arXiv:1704.04299 (2017)
Morris, L.: Anonymity Analysis of Cryptocurrencies. Ph.D. thesis, Rochester Institute of Techology (2015)
Möser, M., et al.: Narayanan, A., et al.: An empirical analysis of traceability in the monero blockchain. Proceedings on Privacy Enhancing Technologies (3) (2018)
Ober, M., Katzenbeisser, S., Hamacher, K.: Structure and anonymity of the bitcoin transaction graph. Future Internet 5(2), 237–250 (2013). copyright - Copyright MDPI AG 2013; Last updated - 2014–07-30
Pfitzmann, A., Hansen, M.: A terminology for talking about privacy by data minimization: Anonymity, unlinkability, undetectability, unobservability, pseudonymity, and identity management. http://dud.inf.tu-dresden.de/literatur/Anon_Terminology_v0.34.pdf (August 2010), v0.34
Poelstra, A.: Mimblewimble (2016). https://scalingbitcoin.org/he/papers/mimblewimble.pdf
Quesnelle, J.: An Analysis of Anonymity in the Zcash Cryptocurrency. Master’s thesis, University of Michigan-Dearborn (2018)
Reid, F., Harrigan, M.: An analysis of anonymity in the bitcoin system. In: Altshuler, Y., Elovici, Y., Cremers, A., Aharony, N., Pentland, A. (eds.) Security and Privacy in Social Networks, pp. 197–223. Springer, New York (2013). https://doi.org/10.1007/978-1-4614-4139-7_10
Ron, D., Shamir, A.: Quantitative analysis of the full bitcoin transaction graph. In: Sadeghi, A.-R. (ed.) FC 2013. LNCS, vol. 7859, pp. 6–24. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39884-1_2
Ruffing, T., Moreno-Sanchez, P., et al.: ValueShuffle: mixing confidential transactions for comprehensive transaction privacy in bitcoin. In: Brenner, M. (ed.) FC 2017. LNCS, vol. 10323, pp. 133–154. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70278-0_8
Spagnuolo, M., Maggi, F., Zanero, S.: BitIodine: extracting intelligence from the bitcoin network. In: Christin, N., Safavi-Naini, R. (eds.) FC 2014. LNCS, vol. 8437, pp. 457–468. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45472-5_29
Sweeney, L.: k-anonymity: a model for protecting privacy. Int. J. Uncertainty Fuzziness Knowl.-Based Syst. 10(05), 557–570 (2002)
Tsukada, Y., Mano, K., Sakurada, H., Kawabe, Y.: Anonymity, privacy, onymity, and identity: a modal logic approach. In: 2009 International Conference on Computational Science and Engineering, vol. 3, pp. 42–51 (August 2009)
Van Saberhagen, N.: Cryptonote v 2. 0 (2013). https://cryptonote.org/whitepaper.pdf
Wijaya, D.A., Liu, J., Steinfeld, R., Liu, D., Yuen, T.H.: Anonymity reduction attacks to monero. In: Guo, F., Huang, X., Yung, M. (eds.) Inscrypt 2018. LNCS, vol. 11449, pp. 86–100. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-14234-6_5
Wijaya, D.A., Liu, J.K., Steinfeld, R., Sun, S.-F., Huang, X.: Anonymizing bitcoin transaction. In: Bao, F., Chen, L., Deng, R.H., Wang, G. (eds.) ISPEC 2016. LNCS, vol. 10060, pp. 271–283. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-49151-6_19
Zhang, Z., Li, W., Liu, H., Liu, J.: A refined analysis of zcash anonymity. IEEE Access 8, 31845–31853 (2020)
Acknowledgements
Xavier Boyen is the recipient of an Australian Research Council Future Fellowship and acknowledges generous support from the grant, number FT140101145. Authors also thank the anonymous reviewers for their comments.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Appendix A Anonymity framework
Appendix A Anonymity framework
We provide a summary of the framework here while a comprehensive explanation is available in the report in [5]. We use the notation in Table 2.
Functionality of a Generic Cryptocurrency Scheme. We define the algorithms of the currency scheme in Table 3. There may be additional functionality associated with real world cryptocurrency systems, e.g. Smart contracts with Ethereum. In order to capture such additional features, we define a supplementary function \(\mathtt {AdditionalFunctionality}\). This enables us realise the security implications of functionality of a scheme that may be outside our base model.
1.1 A.1 Anonymity Game
We present the Anonymity game and required helper functions here. Helper functions check the adversarial conditions of inputs at the start of the game (\(\mathtt {CheckAdvConditions}\)) and reveals data in the end (\(\mathtt {RevealData}\)) based on the parameter \({\psi }\) (Fig. 6). Moreover, the test variable, \({\omega }=({\omega }_s, {\omega }_r, {\omega }_v, {\omega }_m)\) with each \({\omega }_x \in \{0,1\}\) indicates which entity is being tested in a given instance of the game. The adversarial inputs are crafted based on the \({\omega }\), \({\psi }\), \({\delta }\), \({\alpha }\) and \({\beta }\) parameters. Figure 7 illustrates the game.
In this game, we use ‘\(\langle {condition} \rangle \)’ notation after an action to check if a valid outcome is obtained and if the condition inside the brackets is false, then the game terminates and the adversary loses the game. Upon submission of valid inputs, the adversary continues to evolve the current state through appropriate oracle queries. If \({\psi }_t \ne 5\), then the challenger creates two transactions (Fig. 7 - lines 12 and 13), or chooses the transactions provided by the adversary otherwise. Out of the two transactions, only one transaction is minted based on the chosen bit b (line 15). Failed mint operations are not allowed except when \({\beta }=1\) and to check this condition, the notation ‘\(\langle \mathtt {IsMintable}_\pi (\{t_{p_1}\} \cup T,p_\mathcal {O})^{\bar{\beta }} \; \rangle \)’ is used. In this case, when \(\beta =0\), \(\bar{\beta }=1\) and the game continues if \(\mathtt {IsMintable}()=1\). When \({\beta }=1\), \(\bar{\beta }=0\) and hence \(\mathtt {IsMintable}()^0=1\) always and hence the game proceeds. After revealing the relevant data (line 16), the adversary is not allowed to create any transactions involving revealed addresses. The adversary wins the game if the chosen bit is guessed correctly, subject to the condition \({\beta } \vee (f_\mathcal {O} \ne 1)\).
1.2 A.2 Anonymity Notions
We summarise some useful anonymity notions with their corresponding parameter vectors in Table 4 below. Formal definitions of these notions are given in [5].
Rights and permissions
Copyright information
© 2021 International Financial Cryptography Association
About this paper
Cite this paper
Amarasinghe, N., Boyen, X., McKague, M. (2021). The Complex Shape of Anonymity in Cryptocurrencies: Case Studies from a Systematic Approach. In: Borisov, N., Diaz, C. (eds) Financial Cryptography and Data Security. FC 2021. Lecture Notes in Computer Science(), vol 12674. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-64322-8_10
Download citation
DOI: https://doi.org/10.1007/978-3-662-64322-8_10
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-64321-1
Online ISBN: 978-3-662-64322-8
eBook Packages: Computer ScienceComputer Science (R0)