“We need a first step toward more privacy,” Vitalik Buterin, founder of the ethereum blockchain network, said Wednesday.
In a new HackMD post, Buterin detailed a design to help obscure ethereum user activity on the blockchain. More specifically, Buterin proposed a “minimal mixer design” aimed at obfuscating user addresses when sending fixed quantities of ether (ETH).
According to Buterin, users can transact in one of two ways. “The default behavior” is to send and receive ether from a single account, which, of course, also means that all of a user’s activity will be publicly linked on the blockchain. Alternatively, users can transact through multiple accounts or addresses. However, this too isn’t a perfect solution to obfuscating user activity on the blockchain.
“The transactions you make to send ETH to those addresses themselves reveal the link between them,” detailed Buterin in his post.
As such, by creating two smart contracts on ethereum – “the mixer and the relayer registry” – users can opt-in to making private transactions on the ethereum blockchain through what is called an anonymity set.
Buterin told CoinDesk in a follow-up email:
“Anonymity set is cryptography speak for ‘set of users that this thing could have come from.’ For example if I sent you 1 ETH and you can’t tell who exactly it was from but you can tell that it came from (myself, Alice, Bob or Charlie), then the anonymity set has size 4. The bigger the anonymity set the more privacy you have.”
Buterin added that the design does not require any changes to ethereum on a protocol level but could be something implemented by a group of users today.
To this point, Eric Conner, product researcher at blockchain startup Gnosis, noted that a key strength of Buterin’s proposal was precisely its ease for integration.
“Strengths are it gives us a solid privacy solution if users want it,” Conner explained. “The goal is to make a solution that can be easily integrated into current wallets.”
At the same time, the design proposed by Buterin does require users to pay a fee – called gas cost – in order to send private transactions. However, for the use cases that Buterin envisions in his mind the fee won’t be a major deterrent for users.
Buterin tweeted about the design:
“The main use case I’m thinking of is a one-off send from one account to another account so you can use applications without linking that account to the one that has all your tokens in it. So even though it is a 2m gas cost, it only needs to be paid once per account, not too bad.”
Vitalik Buterin image by Christine Kim for CoinDesk