The privacy, identity, and real names problems in cryptocurrency

I recently started looking into cryptocurrencies (crypto) after being introduced to the Ethereum Name Service (ENS), Namebase and the Handshake Protocol, and the Argent Smart Wallet.1 According to Wikipedia, Ethereum's native cryptocurrency called Ether is the second largest cryptocurrency by market capitalization after Bitcoin. A few years ago, in early 2017, I was dismissive of the concept of Bitcoin as a borderless and decentralized digital currency, but I am impressed by Ethereum's ability to double as a cryptocurrency and as a way to build and power decentralized applications (Dapps), facilitate decentralized finance (DeFi), and to create non-fungible tokens (NFTs).

In the recent weeks, I noticed two potential problems with cryptocurrencies that seem to be not discussed enough or not taken seriously enough in the introductory literature and marketing on cryptocurrencies. I call these two problems the Privacy and Identity Problems (I do not know what others call these problems). These problems are probably not unique to Ethereum, but I am more familiar with Ethereum than I am with other cryptocurrencies, so I will be discussing these problems in the context of Ethereum. I believe that Ethereum has promising potential to build a powerful ecosystem for Dapps, DeFi, and NFTs despite these problems, but that these problems should nonetheless be discussed more.

Background​

Perhaps the biggest why cryptocurrencies like Bitcoin and Ethereum are worth anything is because the transactions are processed carefully using cryptography and these transactions are tracked on a public record called a blockchain. Bitcoin and Ethereum have their own blockchains. Although Ethereum is often referred to as a cryptocurrency, Ethereum is actually name of the blockchain, and the things that people trade as currency (the 'coins') are things called Ether (ETH for short) that exist on Ethereum. There are other coins built on top of the Ethereum blockchain, such as USDC or DAI, but Ether is the main/native one. The existence of the blockchain as a public record means that the coins cannot simply be produced, replicated, or eliminated. The Ether cannot be created or destroyed "out of thin air", so to speak. This means that Ether is scarce and that its ownership is verifiable on the blockchain.2

To store the Ether, one needs special software (e.g., browser extension or mobile app) or hardware to interact with the Ethereum blockchain. These software programs are called "wallets" and they can have one or more unique locations on the blockchain called "addresses". Wallets are products that companies and engineers develop and addresses are 42 character strings such as 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 that people control using their wallets. People can own multiple wallets (e.g., one or more on their phone, one in a browser extension), and thus control/own multiple addresses. When people send Ether to and from each other, they send Ether to and from addresses that they control.3

Each mobile device can have one Argent wallet, and each wallet can has (at least for now; this will change) one address on the Ethereum blockchain while an instance of MetaMask wallet (i.e., one copy of the browser extension on one browser) has one or more addresses on the Ethereum blockchain. People do not need to be using the same type of wallet to send each other Ether; someone with an Argent wallet can send Ether from their Argent wallet to someone else's (or their own) MetaMask wallet by specifying which address to send the money to. When sending Ether from one wallet to another, the transaction needs to be recorded on the blockchain, and that requires some computers to perform the necessary cryptographic calculations, so the sender needs to pay a 'network fee' (also known as 'gas').

The Privacy Problem​

The Privacy Problem is that, since all transactions on the Ethereum blockchain are recorded for the public to inspect, if you know the address of someone's wallet, then you can see a record of their transactions. You can see how much money they have at that address, which addresses that money came from, which addresses they previously sent money to, and when each of these transactions occurred.

The Real Names Problem​

The ENS as a solution to the Identity Problem, when combined with the Privacy Problem, creates the Real Names Problem: whether to use your real name on the Ethereum Name Service and similar products and platforms.

Some wallets, such as Argent and Authereum, create an ENS name for you based on your username. Argent gives you username.argent.xyz and Authereum gives you username.auth.eth. Although you cannot, as far as I know, find someone's username based on their address, you can find someone's address based on their name. When you register an ENS name at the ENS App, you can choose which address your name points to, but when you create an Argent or Ethereum wallet, your name is tied to your address, and it cannot be changed after creating your wallet. These wallets also require you to pay a fee to create your wallet because they are smart contract wallets (they have additional computational costs that allows them to have features like withdrawal limit protections and seedless recovery that normal wallets do not have). Thus, to avoid paying extra fees, you want to choose your username once.

5. For example, vitalikbuterin, vbuterin, vitalikb, vitalik, buterin.