Cointime

Download App
iOS & Android

What Is a Stealth Address? Vitalik’s Solution for Privacy on Ethereum

Vitalik Buterin, the co-founder of Ethereum, recently published an article discussing the addition of privacy to the Ethereum network through what is referred to as a Stealth Address. In his article, Buterin explains how a stealth address works and its potential to increase privacy for users on the Ethereum network. In this article, I explain how Stealth Addresses work in a basic manner using an example: Alice wants to send Bob 1.2 ETH.  

Why Are Stealth Addresses Needed?

The idea that public blockchains such as Ethereum and Bitcoin are private is a common misunderstanding; to be clear, public blockchains are not private. Public blockchains offer some form of privacy through pseudonymity in the form of wallet addresses. But you can think of the wallet address as a username; once someone pinpoints your username, they can see everything you’ve ever done with it.

Every interaction that a wallet address makes on-chain, including transactions, interactions with decentralized applications, purchases of NFTs, etc. are recorded and stored in a public manner that anyone with an Internet connection can view. Websites like Etherscan make viewing this information convenient. Applications like Dune Analytics make analyzing that information easy.

Without privacy protection, this information can quickly and easily be exploited without consent. An analogy would be your bank account. With existing online banking, your activity isn’t seen by anyone, even if they know the username you used to log in. With public blockchains, once someone knew your username (in this case, wallet address), they could see all of the subscriptions you have; they could see every time you make a purchase, where you made the purchase, and use that information to locate you, blackmail you, or exploit you in other ways. On-chain privacy solutions are quickly becoming a solution to protect web3 users worldwide. Recently, Vitalik Buterin has given this topic deeper thought and proposed his solution for the Ethereum ecosystem through what he refers to as Stealth Addresses.

Generating Keys to Create the Stealth Address

A Stealth Address must be generated by two participants: the person attempting to receive cryptocurrency privately (we’ll refer to this person as Bob) and the person attempting to send cryptocurrency privately (we’ll refer to this person as Alice). Bob generates

  1. a Spending Key, which is then used to generate
  2. a Stealth Meta-Address, a public address that anyone can see, but it is a master address that can be used to derive unlimited Stealth Addresses with partners like Alice.

To derive a Stealth Meta-Address unique to Bob and Alice, Alice will also need to generate some keys on her side. Alice generates two keys:

  1. an Ephemeral Private Key (a secret key only she knows) and
  2. a corresponding Ephemeral Public Key, which is similar to the Stealth Meta-Address in that anyone can see it.

The Ephemeral Public Key is generated from the Ephemeral Private Key, and it is like an Ethereum address being created through secret seed phrases. The Ephemeral Public Key is published to a public ledger that anyone can view. Ephemeral Keypairs (the private and public ephemeral key combinations) are only used once, so Alice would need to generate a new Ephemeral keypair if she wanted to transact with someone else like Charlie privately.

To summarize up to this point:

  1. Bob has generated a Spending Key (private), which he then uses to generate a Stealth Meta-Address (public).
  2. Alice has generated an Ephemeral Private Key (private), which she then uses to generate an Ephemeral Public Key (public).

So both Bob and Alice have their unique private key and public key. As a next step to generate the final Stealth Address, Bob and Alice share their public keys. Bob gives Alice his Stealth Meta-Address (public), which anyone can see. Alice combines Bob’s Stealth Meta-Address with the Ephemeral Private Key she created. That combination creates the Stealth Address. Alice can send 1.2 ETH to the new Stealth Address.

Accessing the Stealth Address

On Bob’s side, he must locate the Stealth Address that Alice generated and sent 1.2 ETH to. To do this, he must somehow recreate what Alice did (remember, Alice combined Bob’s Stealth Meta-Address with her Ephemeral Private Key). But there’s a problem: Bob doesn’t know Alice’s Ephemeral Private Key.

Using the cryptographic concept of Shared Secrets, Bob has another option: he can create the same Stealth Address (and control the cryptocurrency inside the stealth address with his Spending Key) using a different private/public key combination. Alice used Bob’s public address (the Stealth Meta-Address, which they both can see) with her private address (the Ephemeral Private Key, which only she can see). Bob can use his private address (the Spending Key, which only he can see) with Alice’s public address (the Ephemeral Public Key, which they both can see).

To find Alice’s Ephemeral Public Key, Bob goes through a list of all the existing Ephemeral Public Keys. For each Ephemeral Public Key he sees, he combines it with his Spending Key, and a resulting Stealth Address is created. Bob then checks the Stealth Address’s contents (the cryptocurrency that is available in the Stealth Address). In most cases, the Stealth Address generated with random Ephemeral Public Keys and Bob’s Spending Key should contain 0 ETH. But once Bob tries to combine his spending key with Alice’s Ephemeral Public Key, he should see that the resulting Stealth Address contains 1.2 ETH.

In practice, Bob doesn’t manually go through all existing Ephemeral Public Keys to find the right one. It’s done automatically by a computer, which takes much less time than a human to sort through and try all the combinations.

In conclusion, the proposal Vitalik Buterin published is a practical solution that can work on the Ethereum network to increase privacy for its users. Other projects like Manta Network use a zkAddress system + UTXOs to enable on-chain privacy. The stealth address system proposed by Buterin is a unique and promising solution for privacy on the Ethereum network. More importantly, it is a step in the right direction that leaders like Vitalik Buterin are thinking about innovation around on-chain privacy.

P.S. — the image of Bob and Alice are non-existent people, generated by This Person Does Not Exist.

https://kennymuli.medium.com/what-is-a-stealth-address-53eeb71b4295

Comments

All Comments

Recommended for you

  • BTC breaks through $92,000

     the market shows BTC breaking through $92,000, currently at $92,023.91, with a 24-hour decline of 0.13%. The market is highly volatile, please manage your risk accordingly.

  • WLFI launches lending marketplace powered by Dolomite

     WLFI launches a lending market supported by Dolomite.

  • Spot gold rose more than $300 in January.

     spot gold has risen above $4620/oz, with a daily increase of 2.44%, accumulating a rise of over $300 in the first month of the new year.

  • Hassett: Still interested in a Fed position

    White House National Economic Council Director Hassett: Still interested in the Federal Reserve position. It is unknown whether U.S. President Trump has approved an investigation into the Federal Reserve. Federal Reserve Chairman Powell is a good person.

  • BTC falls below $91,000

     the market shows BTC fell below $91,000, currently at $90,997.44, with a 24-hour increase of 0.26%. The market is highly volatile, please manage your risks accordingly.

  • The US spot Ethereum ETF saw a net outflow of $68.57 million last week.

    according to SoSoValue data, during the trading days last week (January 5 to January 9, Eastern US time), the US spot Ethereum ETF had a net outflow of 68.57 million USD.

  • BTC breaks through $92,000

    the market shows BTC breaking through $92,000, currently at $92,041.92, with a 24-hour increase of 1.49%. The market is volatile, please manage your risk accordingly.

  • Japanese Prime Minister considers dissolving the House of Representatives; USD/JPY rises sharply.

    Japanese Prime Minister is considering dissolving the House of Representatives. The USD/JPY exchange rate quickly rose by 0.66% to 157.95, hitting a new one-year high. 

  • a16z announced the completion of a $15 billion funding round, which will focus on investments in AI and crypto.

    a16z has just completed raising over $15 billion in funds. This batch of funds includes: American Dynamism Fund ($1.176 billion), Apps Fund ($1.7 billion), Bio + Health Fund ($700 million), Infrastructure Fund ($1.7 billion), Growth Fund ($6.75 billion), and other venture capital strategy funds ($3 billion). The announcement states that its mission is to ensure the United States wins the technology competition in the next 100 years, focusing on winning key infrastructures such as AI and crypto. In addition, it will promote the application of related technologies in fields such as biology, health, defense, public safety, education, and entertainment.

  • BTC falls below $90,000

     market shows BTC fell below 90,000 USD, currently at 89,996.08 USD, 24-hour decline reached 0.43%, market volatility is high, please manage risk properly.