BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

An article to understand Ethereum's invisible payment protocol Umbra

巴比特
特邀专栏作者
This article is about 1651 words, reading the full article takes about 3 minutes
While the ENS domain name brings convenience to Ethereum users, it also creates privacy issues. How to solve this problem?
AI Summary
Expand
While the ENS domain name brings convenience to Ethereum users, it also creates privacy issues. How to solve this problem?

Editor's Note: This article comes fromBabbitt Information (ID: bitcoin8btc)Editor's Note: This article comes from

Babbitt Information (ID: bitcoin8btc)

Babbitt Information (ID: bitcoin8btc)

, by Matt Solomon and Ben DiFrancesco, translated by Free and Easy, published with permission.

At the beginning of April this year, Vitalik Buterin, the co-founder of Ethereum, clearly mentioned on Twitter that the Ethereum ecosystem urgently needs to solve privacy issues. The main reason is that the popularity of ENS domain names has brought great privacy issues to Ethereum users. , and with the continuous development of the Defi ecology, the seriousness of this problem will become more and more prominent. In addition to the tornado.cash project mentioned by Vitalik, a simple Ethereum invisible payment protocol has recently appeared, and its name is Umbra.

So what is it used for? simply say:

“With a stealth address, a payer can send ETH or ERC20 tokens to an address controlled by a recipient, and no third party other than the two parties can know who the recipient is.”

image description

Figure: Viewing ETH transactions using the Umbra protocol on Etherscan. On-chain, stealth addresses look just like normal EOA addresses.

Off-chain, the sender has used ENS to generate a new address with the receiver's published public key. By encrypting the data used to generate the address and announcing it via the Umbra smart contract, the sender can let the receiver know that they have sent the payment to a new stealth address. And only the recipient can generate the private keys needed to withdraw funds.

image description

Figure: Umbra interface, accessible through ropsten.umbra.cash, currently only available on the Ropsten testnet

By leveraging the Gas Station network and Uniswap, Umbra enables withdrawers to pay for gas using the tokens they receive. This avoids the need to fund the stealth address with ETH before withdrawing.

The difference between Umbra and Tornado Cash

So what is the difference between Umbra and Tornado Cash, which Vitalik often mentions?

To put it simply, Tornado Cash is an on-chain coin mixer that uses zero-knowledge proof. When you put coins in it and wait for others to do the same, you can use your own proof to withdraw assets. Since everyone's funds are Centralized in the mixer, so the link between the source address and the withdrawal address is broken.

The Umbra protocol is used for payments between two entities, and comes with a different set of privacy tradeoffs (that is, different directions considered), Umbra does not break the link between the sender and receiver addresses, but makes the Links are pointless. Everyone can know which address the funds were sent to, but they have no way of knowing who controls that address.

  • In addition to these, the Umbra protocol also has some very interesting features. For example, it uses much less gas, because it does not need to verify any advanced encryption technology on the chain, and all transactions are simple transfers. Additionally, it makes ETH and arbitrary ERC20 tokens transferable privately, without you needing to rely on a large anonymity set.

  • Description of the working principle of the Umbra protocol

  • Finally, let’s briefly talk about how the Umbra protocol is implemented:

  • Users post signed messages to ENS text records revealing their Umbra public keys. This public key is derived from a random private key generated specifically for Umbra.

  • The payer uses this public key, plus some randomly generated data, to create a new "stealth" address.

  • The payer encrypts random data with the receiver's public key.

  • The payer sends funds to a shielded address and an encrypted message to Umbra's smart contract. Contracts broadcast encrypted messages as events.

  • The receiver scans the encrypted messages broadcast by the Umbra protocol until it finds one that can be decrypted with the private key.

The recipient uses the content of the encrypted message plus their private key to generate the private key for the stealth address.

ETH
Welcome to Join Odaily Official Community