- Vitalik Buterin, the founder of Ethereum, suggested stealth addresses as a possible solution to the privacy issue with the blockchain.
- Buterin referred to them as a “low-tech approach” and proposed the regular stealth addresses over the Merkle trees and zk–SNARKs which he found unnecessarily complex.
- Despite the expected challenges such as difficulty in social recovery, Vitalik encourages the adoption of this solution stating the problems will be solved in future.
Ethereum founder Vitalik Buterin released a comprehensive overview of stealth addresses he proposed could be used to enhance privacy on Ethereum and its suite of products. In the post, he acknowledged the publicity involved with transacting on Ethereum and blockchain, stating that:
“One of the largest remaining challenges in the Ethereum ecosystem is privacy. By default, anything that goes onto a public blockchain is public. Increasingly, this means not just money and financial transactions, but also ENS names, POAPs, NFTs, soulbound tokens, and much more.”
Vitalik also emphasized how important it is to address this privacy problem adding that the current attempts at solving the problem still needed to be improved. He noted that Tornado cash, for instance, could hide transactions of mainstream fungible assets such as ETH or major ERC20s but was limited to NFTs or obscure ERC20s.
Vitalik first introduced the idea on Twitter back in August, where he said:
” Idea: stealth addresses for ERC721s.
A low-tech approach to add a significant amount of privacy to the NFT ecosystem.
So you can, e.g., send an NFT to vitalik.eth without anyone except me (the new owner) being able to see who the new owner is.”
Stealth addresses are one-time addresses generated by wallets to provide anonymity when transacting in cryptocurrency. The transactions done on these addresses are accessed using a spending key only the owner has, thus providing privacy.
Vitalik has moved forward to propose a much lighter-weight version of stealth, explaining that Merkle trees and Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge (zk-SNARKs) were too complex for ERC-72. His solution entails using the regular stealth addresses, which he simplified to be a method in smart contract wallets that generates the one-time addresses, which in addition to a secret, can create a spending key for the owner.
It’s Not All Rossy Using Stealth Addresses
The solution comes with its challenges, including how to pay transaction fees since the newly created address essentially has 0 ETH. Since sending money from your main wallet address to the new address would create a publicly visible link, he proposed using specialized transaction aggregators. He explained that,
“These aggregators would allow users to pay once to purchase a set of “tickets” that can be used to pay for transactions on-chain.”
The implementation will also require quite a bit of effort on the wallets’ side to support this technology. Buterin advises that wallets should focus on a more natively multi-address model, such as generating a new address for every application one interacts with to address other privacy concerns.
Stealth addresses also pose some usability concerns in the long run, such as the difficulty of social recovery. To this, Vitalik said:
“It is probably okay to accept these concerns for now, e.g., by accepting that social recovery will involve either a loss of privacy or a two-week delay to slowly release the recovery transactions to the various assets (which could be handled by a third-party service). “
He added that solutions to these issues will be developed in the future and encouraged stealth addresses to be embraced either way.