Inspired by Vitalik Buterin’s idea of non-transferrable Soulbound tokens, Ethereum researcher Anton Wahrstätter came up with a fresh proposal for an ERC-721 extension that would implement "stealth" addresses to obscure public blockchain transactions involving non-fungible tokens ( ).
To implement stealth addresses for ERC-721 tokens— ’s current token standard for NFTs—Wahrstätter proposes utilizing a privacy-focused piece of cryptography known as zk-SNARKs.
Per the proposal, part of a stealth address, which is essentially a one-time address for every transaction, is inserted into a Merkle tree—a data structure used for data verification and synchronization—thus allowing for sending, storing, and burning NFTs without leaving much of the transaction details seen on the public blockchain.
While Wahrstätter’s proposal is still in the idea stage, it's already drew the attention of Vitalik Buterin, one of Ethereum's co-founders, who described it as “a low-tech approach to add a significant amount of privacy to the NFT ecosystem.”
“So you would be able to [for example] send an NFT to vitalik.eth without anyone except me (the new owner) being able to see who the new owner is,” he wrote in a tweet on Monday.
Idea: stealth addresses for ERC721s.
A low-tech approach to add a significant amount of privacy to the NFT ecosystem.
So you would be able to eg. send an NFT to vitalik.eth without anyone except me (the new owner) being able to see who the new owner is.https://t.co/UdqK6NAYjn
— vitalik.eth (@VitalikButerin) August 8, 2022
Buterin, however, had a few objections to Wahrstätter’s proposal, arguing that the idea of anonymous NFT transactions can probably be accomplished “with much lighter-weight technology.”
Commenting on the proposal, he said that “the reason why you don’t need Merkle trees or ZK-SNARK-level privacy is that each ERC-721 is unique, so there’s no possibility of creating an 'anonymity set' for an ERC-721.”
“Rather, you just want to hide the link to the sender and recipient’s highly visible public identity (so, you can send an ERC-721 to 'vitalik.eth' and I can see it, but no one else can see that vitalik.eth received an ERC-721; they will just see that someone received an ERC-721),” added Buterin.
“One remaining challenge,” according to the co-founder of Ethereum, is to figure out how to pay fees.
“The best I can come up with is, if you send someone an ERC-721 also send along enough ETH to pay fees 5-50 times to send it further. If you get an ERC-721 without enough ETH, then you can tornado some ETH in to keep the transfer chain going,” he wrote.
Buterin's last comment referred to the use of Tornado Cash, a privacy tool designed to obfuscate the origin of Ethereum transactions by mixing users’ coins.
Tornado Cash came under the spotlight on Monday after the U.S. Treasury Department sanctioned the mixing service by adding it, along with a list of Ethereum addresses, to the Specially Designated Nationals list. This means that American citizens are now banned from using the tool or transacting with these addresses.
While the move sparked some strong reactions from the crypto community, with Ethereum core developer Preston Van Loon telling Decrypt that Tornado Cash, just like any other tool, “can be used for bad and good,” it also came amid a broader debate around the privacy and transparency in the crypto space.