Blockchains are marvelous pieces of system technology, allowing for trustless, secure, and efficient transfer of data across countless nodes. This is all possible because the data is distributed, making it verifiable, and transparent like a beautiful diamond. Yet, while this transparency empowers the system as a whole, it comes at a great price to the individual user — the lack of anonymity.
On almost all the most populated blockchains, every transaction, every wallet address, every piece of on-chain data is visible to anyone who wishes to see it. That means that like the blockchain, you as an individual are exposed; naked, with your assets written all over you like permanent tattoos. So what can someone do if they wanted privacy? If they wanted to be anonymous? To not be forced to live under a microscope…
Well, if they want those things on Binance Smart Chain, then they’re going to need Swirl.
Swirl is a BSC-deployed fork of Tornado.cash, the strongest privacy protocol on the Ethereum network. It uses various cryptographic methods, including implementations of zero-knowledge(zkSnarks) proofs to achieve privacy functionality. So we’ve taken something that works, which allows 100M USD worth of tokens per day to regain their right to anonymity, customized it in Swirl for the current DeFi landscape, and brought it to Binance Smart Chain. Now, Swirl will allow you to send BSC cryptocurrency with 100% anonymity!
How does Swirl achieve privacy on BSC
Swirl perfects transaction privacy by separating the on-chain link between recipient and destination addresses. It utilizes a smart contract that accepts BNB deposits from one address, and allows a different address to withdraw them. Then, whenever this new address withdraws the BNB, there is no way to link the withdrawal to the deposit, making the process completely private.
In other words, Swirl acts as a proxy to ensure that the transaction is 100% anonymous.
Better yet, it’s also 100% non-custodial, meaning you keep full control over your deposited funds the entire way.
Depositing and Withdrawing
To make a deposit, a user generates a secret and sends its hash (called a commitment) along with a desired deposit amount to the Swirl smart contract. The contract accepts the deposit and adds the commitment to its list of deposits.
Later, that user can make a withdrawal with a different wallet. In order to do that, the user should provide proof that they possess a secret to an unspent commitment from the smart contract’s deposit list. The zkSnark technology allows doing that without revealing which exact deposit matches the secret. The smart contract will then verify the proof and transfer the deposited funds to the private address specified for the withdrawal. No external observer will be able to determine which deposit this withdrawal comes from.
That’s how it works. Simple, clean, private.
Additional Privacy Tips
Make sure to follow common privacy guidelines even when using Swirl. Below, we list some of those:
· Utilize a VPN or proxies to shield your IP address, and don’t forget to switch your IP addresses between when you deposit and withdraw.
· If your browser has it, an incognito tab can be useful.
· The secret is like a note that contains data which can be used to link your deposit to your withdrawal. If you wish to allow someone to audit your transactions, you should keep the secret after it is spent. However, in general, to maximize privacy, you would want to destroy the secret.
· Clear your cache before withdrawing with a new wallet. Certain platforms or dApps can connect your identity through cookies despite using multiple wallets.
·If there is a batch of deposits from one address, and then a batch of the same size of withdrawals to a single address, they are very likely connected. If you need to make multiple withdrawals, try to spread them out and withdraw to addresses not linked with each other.
·Мaking deposits or withdrawals only during waking hours of the time zone can reduce your anonymity.
· Wait for some deposits to come in following yours. If your deposit and withdrawal are back to back, an observer might guess that they belong to the same person. A good rule of thumb is to wait until there have been at least 5 deposits after yours.
· Following up on the previous point, after you deposit, wait until some time has passed before you withdraw. Even if there are multiple deposits following yours, in theory, a malicious observer could have made them while trying to make you believe there have been a large number of deposits from various users. Then, when you withdraw, that user will know it was you. So we recommend waiting at least 24h to be certain there were enough deposits made by multiple people during that time.
Thank you for reading about Swirl, and although we can’t shake any of your hands because we also prefer our anonymity, we believe this will add a much-needed privacy layer to Binance Smart Chain. Hopefully, with this project, we can bring the human right of privacy to this emerging blockchain.
Soon, we’ll have more details about SWIRL’s utility, tokenomics, the liquidity mining program, and more. So follow us to stay updated because in this case, we don’t mind being followed.
Twitter : https://twitter.com/Swirl_Cash