It’s relatively straightforward to track a users spending habits on the blockchain. Both Bitcoin and Ethereum transactions are publicly visible. Only one transaction is needed to trace back and expose the full transaction history of the user.
Mixers are one of multiple solutions which have been developed over the past few years.
A transaction mixer works by mixing together the deposits from multiple pseudo anonymous users, before the transaction arrives at the designated recipient address. Once mixed, it becomes mathematically challenging due to the cryptographic mathematics used to mask the users and their transactions. Knowing who the users are and the amounts is near impossible.
ADD.xyz’s Bl3nd3r mixes transactions using zero-knowledge proofs, which obfuscates users and their deposited assets. By using smart contracts, depositors have some level of transparency in having third-parties verify that those contracts work as intended, while still keeping user privacy intact.
Most importantly, as a decentralised anonymising software, there are no third parties which take custody of your assets or are able to execute administrator operations in order to disrupt the process. Your funds are unconfiscatable.
Users of our Bl3nd3r will be able to mix Ethereum and DAI initially.
ADD.xyz’s Bl3nd3r enables privacy for users when sending transactions by disrupting and breaking the connection between the sender and recipient address. There is no way to link the withdrawal from the Bl3nd3r from the sender, this is done by using complex smart contracts with zkSnarks proof, which accept deposits into our liquidity pool (Bl3nd3r) and spits out the assets to a new address, by using the proof (or a key) provided at the time of deposit.
By using zkSnarks, all transactions are 100% anonymous, ADD.xyz’s Bl3nd3r acts as a proxy between parties.
As the users deposits assets, a secret and a unique hash is created and sent to the Bl3nd3r Smart Contract. The contract then adds this hash to a list of deposits.
When a user decides to make a withdraw, that user states the proof (similar to a key), which is an equivalent to the secret to unlock a specific hash from the smart contracts list of total hashes on the Bl3nd3r.
It is important to be able to measure quantitatively the guarantee that is given to the system. The degree of anonymity can be increased by using multiple anonymity networks such as Tor, Crowds, Mixmasters, I2P and others.
The measurement of anonymity can be gained by assessing the ‘Anonymity Set’, which will give a gauge of how many other deposits within the bl3nd3r that your transaction can be mixed with, until it’s withdrawn. As the liquidity within the Anonymity Set increases, so does degree of anonymity.
On-ramping into anonymity networks and blockchain privacy protocols is a major challenge. When sending ETH deposits, users data can be recorded in various forms, while you enter a liquidity network and exit anonymously, privacy is still compromised at the point of the on-ramp into that specific anonymity network. Its the classic chicken and egg problem.
That's why ETH Bl3nd3r enables two different on-ramp options:
Using a web3 wallet (Metamask, Trezor, Ledger, Wallet Connect, Formatic and Trustwallet, etc)
Or via Relayer
The first deposit method may lead users to create a new Ethereum Address, and that leads to the on-ramp vulnerabilities raised previously. The second deposit method via relays is more secure - here is how it works
We use a relayer to forward your deposit from a brand new ETH address into the ETH Bl3nd3r, providing you with the zkSnark Proof and Hash. This masks your initial depositing address, providing greater all-round privacy.
Users will be able to purchase insurance via Nexus Mutual or Opyn, which is being integrated into our DeFi lending platform.With a few clicks you can purchase cover for your assets being mixed.
Users may want to Mix their Ethereum deposits in the Bl3nd3r before depositing to the DeFi lending Platform, which can now be done in one single place.
Once the development phase is completed, our operator addresses for the Bl3nd3r will be set to
0x000000000000000000000000000000000000 on pool instances (0.1 ETH, 1 ETH, 10 ETH, 100 ETH and 1000 ETH).