Hacker News new | ask | show | jobs
by vmception 1485 days ago
> Medjedovic added that he'd taken on “substantial risk” in pursuing this strategy. If he'd failed he would have lost “a pretty large chunk of my portfolio.” (The 3 ETH he stood to lose in fees was worth about $11,000 at the time.)

This is misleading, either intentionally or due to Medjedovic's incompetence.

You can fork the current head of the mainnet blockchain to localhost and try infinite permutations for free to see what the next state of the blockchain will be. And then if you like that state, you can then pay to send the working transaction to the mainnet to make that same state occur, in a sure bet. (nearly sure fire bet as in some cases, someone could replace the mainnet transaction in route, but they wouldn't necessarily know what to look for or change if its a distinct kind of transaction)

Medjedovic either didn't know this, because his skills didn't translate as well as he thinks, or Medjedovic knows this and hasn't come up with a stronger argument to support his actions yet (of which there are plenty) and actually is relying on public sympathy to support his actions.

Either way, there is an opportunity for broader education on how these exploits can be cooked in something akin to a "hyperbolic time chamber" or quantum reality without anyone's knowledge, ready to hop back into our dimension fine tuned and ready to cause maximum effect, all within the ~15 seconds between blocks if necessary, as the state changes per block.

7 comments

If anyone could perfectly predict what was going to happen in the next state then those with this ability would only ever make money and never lose it. Yet this can't happen. In the real world there are sniper bots and all sorts of other things that another agent could do in parallel with your own script, which would lead the outcome to be uncertain.
The main issue is constructing a valid transaction.

An exploiter conducting a big heist and disappearing never has to prove that they can't do it again, because they're rich immediately.

> Yet this can't happen.

You don't even need to perfectly predict the next state to make risk-free attempts; you merely need to submit your transactions using flashbots (which operates a gateway directly to the miners). You pay a portion of your profit to the miners as an incentive to include your transaction, and if your transaction fails for any reason it fails atomically and is not included in the block, meaning you have paid no gas and your attempt is thus risk-free. One caveat is that this only works if the transactions can be assembled into a bundle within the same block.

> would only ever make money and never lose it.

They'd at least risk losing the transaction fees...

> And then if you like that state, you can then pay to send the working transaction to the mainnet to make that same state occur, in a sure bet.

That often isn't true anymore, see https://ethereum.org/en/developers/docs/mev/

MEV is something different though? GPs (excellent) point is that anyone can play out the effects of their transaction locally ad infinitum, and chose to transact once they're convinced of its behavior. Of course, this can't account for the response of other actors, but the point stands that Medjedovic (should have) been taking far less risk than implied by that quote.
Another thing to note is that all the quotes from Medjedovic are directly to a journalist (at Bloomberg, the article was there a few days ago), which leads me to think there are intentional omissions towards the journalist. It is new that this level of detail is reported about happenings in the crypto space, from traditionally and previously non-crypto publications. It had usually been confined to "broad market selloff, here's a bunch of hot takes from our gloomy college friends on how it goes to zero!" instead of "specific incident within a crypto community, here's what happened". Medjedovic on the other hand is only seen as taking advantage of situations, such as a journalist that is perhaps merely enthused by the crypto asset economy at a publication that needs someone looking at it, but maybe not well versed in it or having editors that would notice either.
Medjedovic stood to lose all of the ETH he was paying in transaction fees (which could have easily been 3 ETH) if someone decided to frontrun his transaction. If that was most of his ETH, that does sound "significant" to me.
He used some kind of MEV shielding thing. But I'm not sure if it went directly to miners or did something else.
Yeah, typically MEV shielding == sending directly to a mining pool that promises that not frontrun it. It's not a guarantee though, the miner could decide to still frontrun, or a small reorg could occur, and another actor could replace the transaction.
> It's not a guarantee though, the miner could decide to still frontrun

The transaction bundle will fail if the success criteria is not reached (often a certain level of profit), so the worst that happens is that the profit margin falls to that level or the transaction is not included with zero cost to the sender

> but they wouldn't necessarily know what to look for or change if its a distinct kind of transaction

which means non-trading transactions would look so different that someone playing with higher gas wouldn't know what to replace in the bytecode within the 15 seconds between blocks

and the user also has the choice of sending directly to a miner just like the MEV people do, to skip the mempool

which is looks like he did (but not sure, just noticed his contract mentions MEV)

https://etherscan.io/tx/0x1710f8c91f03d43a51b94fb5db00305cdd...

I took "fail" to mean someone seeing his transaction in the mempool and frontrunning him, exploiting the flaw for themselves before he could. AKA Ethereum's "Dark Forest." Not that the transaction would fail as in a bug or something. I'm sure he knows how to simulate transactions locally if he could figure all this out.
> You can fork the current head of the mainnet blockchain to localhost and try infinite permutations for free to see what the next state of the blockchain will be. And then if you like that state, you can then pay to send the working transaction to the mainnet to make that same state occur, in a sure bet.

You have described mining.

Yeah good observation. But instead of arbitrarily hashing a algorithm used in consensus to find a block, this would be hammering specifically constructed bytecode at a smart contract’s ABI endpoints to see how many other things get effected.
Jesus, and we wonder why grandma is entirely unsuited to putting her savings in this crap.
That's just a complicated way of saying "you can locally test a smart contract that you're coding".

Nobody is suggesting grandmas code their own smart contracts.

This is not the reason to keep grandma's savings away.

This is only slightly different than what goes on in the stock market

But yield farmers and high value targets should open insurance policies

And the insurance pool participants should also be wary ha

Not quite a sure bet. It depends on your magic TX getting picked up from the mempool by the winning node.
* MEV has entered the chat *

This is of course entirely untrue, and anyone who has done even the smallest amount of onchain trading would know this.

He used some form of MEV shielding but not clear in which way (like if it went straight to miners) but its improbable that the transactions he formed would have been able to be frontrun