4 ms·
> Exchanges don't read custom smart contract inputs to flag source of funds to prevent you from cashing out, for now This will probably happen eventually but I
by from 4y ago
> Exchanges don't read custom smart contract inputs to flag source of funds to prevent you from cashing out, for now
This will probably happen eventually but I imagine it would be pretty easy to circumvent. There are lots of convoluted ways of transferring ETH that I'm not sure Chainlysis would pick up on. Stuff like:
1. Withdraw from Tornado to address A
2. From address A, call a contract that flashloans the amount you just withdrew minus the fee from dydx to a new address B
3. Repay flashloan with funds from address A, but address B keeps the ETH that was "from" dydx.
or
1. Withdraw from Tornado to address A
2. From address A, convert ETH to WETH
3. From address A, transfer WETH to Uniswap v2 DAI/WETH pool
4. From a new address B, call skim() on the Uniswap contract and get all the WETH you just transferred to it, but now it looks like it was from Uniswap.
Both of these rely on the fact that they probably aren't going to flag all the funds in a defi protocol just because one of its users used Tornado Cash.
- yieldcrv 4y ago> 3. From address A, transfer WETH to Uniswap v2 DAI/WETH pool > 4. From a new address B, call skim() on the Uniswap contract and get all the WETH you just transferred to it, but now it looks like it was from Uniswap. the second one is dangerous! are you suggesting to just transfer WETH to the pool address without using the pool's swap function? that means anyone can see the imbalance and skim before you do! and if you did a composable or flash loan style transaction to do it all in a single transaction, that just makes it more obvious (eventually) that the same party was involved and even that could be frontrun! which is actually kind of funny because maybe you could frontrun yourself for plausible deniability, and put MEV protection around that transaction!
- from 4y ago> the second one is dangerous! are you suggesting to just transfer WETH to the pool address without using the pool's swap function? Yeah. I meant to add that it should be done atomically in one transaction but come to think of it just using flashbots and having it as 2 transactions would make it look more legitimate. The way you suggested by pumping a token is also pretty good but depending on how many initial holders there are you may lose some money in the process. I watched the Tornado Cash 100 ETH address for a while and I think I saw a guy doing something like this.
- yieldcrv 4y ago> The way you suggested by pumping a token is also pretty good but depending on how many initial holders there are you may lose some money in the process. I watched the Tornado Cash 100 ETH address for a while and I think I saw a guy doing something like this. Don't have initial holders. Create the liquidity pool yourself (in any of your identities) and have that be the only place to get the tokens. In the Uniswap V2 style of liquidity pool, the token can't go below the initial price (or ratio) you set. Anybody that buys in, even bots, will just push the price up, anybody that sells can only push it back down to the initial ratio. Part 1: Ident A - any money: Create token, create liquidity pool Ident B - clean money: Buy as much token as you want Ident C, D, E ... n - tornado cash withdrawals: Buy all the token, depositing Ether into the liquidity pool, removing token from liquidity pool. Part 2: Ident B - clean money: sells the tokens back into the liquidity pool, receives more ether. I could see how you could lose money if too many bots and onlookers bought in before one of your idents deployed the tornado Ether, the tornado cash withdrawals need to already be finished then and waiting to buy. Any address that misses a pump due to bots can just be sidelined until creating the next token to pump.
- yieldcrv 4y agoand you can always just pretend to be an early speculator in a new token, using clean money you earned from employment but that token was pumped by all your tornado cash withdrawals to virgin addresses you control just sell your clean money tokens back into the liquidity pool and walk away, this is indistinguishable from everything that happens today. who cares if Chainlink was pumped by Tornado Cash funds, for example of something relatable.