Ethereum co-founder Vitalik Buterin has shared a possible solution to what he describes as the “largest remaining challenge” on Ethereum: privacy.

In a blog post, Buterin acknowledged the need to come up with a privacy solution because by default, all information that goes onto a “public blockchain” is public too.

He proposed the concept of “stealth addresses” which can potentially anonymize peer-to-peer transactions, non-fungible token (NFT) transfers, and Ethereum Name Service (ENS) registrations, protecting users.

The concept of stealth addresses works by having a user generate and keep a “spending key” which is then used to generate a stealth meta-address.

This address is then passed onto the sender who can perform a cryptographic computation on the meta-address to generate a stealth address, which belongs to the receiver.

The sender can then transfer assets to the receiver’s stealth address in addition to publishing a temporary key to confirm that the stealth address belongs to the receiver.

Buterin explained that a “Diffie-Hellman key exchange” in addition to a “key blinding mechanism” would need to be implemented to ensure that the link between the stealth address and the user’s meta-address can’t be seen publicly.

He also noted that ZK-SNARKs could be used to transfer funds to pay transaction fees. However, he emphasized that this may lead to problems of its own, stating “this costs a lot of gas, an extra hundreds of thousands of gas just for a single transfer.”

Buterin suggested that stealth addresses may introduce “longer-term usability concerns,” such as social recovery issues.

However, he is confident the problems can be properly addressed in time. He advised Web3 projects that are developing a solution to consider stealth addresses as they “could be a significant boost to practical user privacy on Ethereum.”