
on hacking systematically with foundry
tl; drtoday i go over some systems i’ve created in foundry for solving blockchain security challenges. i tend to indulge myself with a pristine code organization && logic. in this particular case, i am pretty proud of my methodology for running exploits, tests, and submission scripts (you can see it for yourself, for instance, with my solution for ethernaut’s wargames). in addition, you can also find some experiments in this repository.🎶 today’s moodhttps://open.spotify.com/track/2B3D38o8GaX...

on running your own goerli validator
tl; drtoday i go over how to set a goerli validator with geth and prysm, both locally or using (docker) containerization. the code in this post is available here.🎶 today’s moodhttps://open.spotify.com/track/1sotD6Cn8aOtUsL0bd5HTJ?si=ec5ea69d52b84dbcwhy run a testnet node validatorall right, anon, if you are serious about being a blockchain leet h4xoor developoor buildoor, you gotta run your own node at some point in your life. this way, you will able to understand the many pieces of the ethe...

on cowsol, my arb solver for cow protocol
tl; drtoday i go over one of my MEV bots, cowsol, which runs arbitrage strategies for CoW protocol. set a nice soundtrack, grab your favorite beverage, and solve the puzzles with me.🎶 today’s moodhttps://open.spotify.com/track/4Y2W4zKa3q72ztbkA0r8Va?si=c79621ab86ca4b95🐮🧩 piece #1: coincidence of wants💡 the cow protocol is a fully permissionless trading protocol that uses this novel idea of batch auctions to find prices and maximize liquidity, the “coincidence of wants”.🫱🏻🫲🏽 put it si...
影森のゴーストシェル



on hacking systematically with foundry
tl; drtoday i go over some systems i’ve created in foundry for solving blockchain security challenges. i tend to indulge myself with a pristine code organization && logic. in this particular case, i am pretty proud of my methodology for running exploits, tests, and submission scripts (you can see it for yourself, for instance, with my solution for ethernaut’s wargames). in addition, you can also find some experiments in this repository.🎶 today’s moodhttps://open.spotify.com/track/2B3D38o8GaX...

on running your own goerli validator
tl; drtoday i go over how to set a goerli validator with geth and prysm, both locally or using (docker) containerization. the code in this post is available here.🎶 today’s moodhttps://open.spotify.com/track/1sotD6Cn8aOtUsL0bd5HTJ?si=ec5ea69d52b84dbcwhy run a testnet node validatorall right, anon, if you are serious about being a blockchain leet h4xoor developoor buildoor, you gotta run your own node at some point in your life. this way, you will able to understand the many pieces of the ethe...

on cowsol, my arb solver for cow protocol
tl; drtoday i go over one of my MEV bots, cowsol, which runs arbitrage strategies for CoW protocol. set a nice soundtrack, grab your favorite beverage, and solve the puzzles with me.🎶 today’s moodhttps://open.spotify.com/track/4Y2W4zKa3q72ztbkA0r8Va?si=c79621ab86ca4b95🐮🧩 piece #1: coincidence of wants💡 the cow protocol is a fully permissionless trading protocol that uses this novel idea of batch auctions to find prices and maximize liquidity, the “coincidence of wants”.🫱🏻🫲🏽 put it si...
影森のゴーストシェル
Share Dialog
Share Dialog

Subscribe to bt3gl's symposium

Subscribe to bt3gl's symposium
<100 subscribers
<100 subscribers
today i go over a PoC to send MEV bundles through flashbots.
https://open.spotify.com/track/6KwSdmAba8BxoxVXPw70LO?si=2aa567b38bc24b8b
A private communication channel (RPC endpoint) between miners and searchers for transparent and efficient MEV extraction through:
Why is this important? Okay, so in the regular Ethereum transaction pool:
users broadcast transactions to the public peer-to-peer network and specify a gas price (how much they are willing to pay for each unit of computation on the Ethereum chain).
miners receive these transactions, order them by gas price, and use a greedy algorithm to produce a block that maximizes the value received through transaction fees.
With Flashbots Auction, however, users have access to a first-price sealed-bid auction which allows them to privately communicate their bid and granular transaction order preference without paying for failed bids.
This is how the game works:
Flashbots connects searchers to miners and allows them to avoid the public tx pool.
Searchers craft "bundles" with transactions they would like to send miners, and send them to Flashbots' MEV-Relay.
mev-relay is a gateway that Flashbots runs which simulates searchers' bundles, and if there are no errors, then forwards them on to miners.
Miners then receive bundles and include them in blocks if it is profitable for them to do so.
💡 Enough of bla bla bla, let’s get some code going.
Before you run the PoC I wrote, you need:
Two test accounts on Ethereum (for instance, you can create them on Metamask). Take note of their private keys: one will be an empty wallet for signing/reputation, and the other will hold funds.
An Alchemy account, then take note of a provider’s URL+KEY for Goerli.
Some imaginary Goerli (fake) money from some faucet, like this one for example.
Install the required Python 3 packages on a virtual environment, as described here, then add the info above into a .env file.
You are ready to run your first Flashbots bundle.
The script below sends a bundle of two transactions that transfer Goerli ETH into a random account:

Running this code should print something like this:

today i go over a PoC to send MEV bundles through flashbots.
https://open.spotify.com/track/6KwSdmAba8BxoxVXPw70LO?si=2aa567b38bc24b8b
A private communication channel (RPC endpoint) between miners and searchers for transparent and efficient MEV extraction through:
Why is this important? Okay, so in the regular Ethereum transaction pool:
users broadcast transactions to the public peer-to-peer network and specify a gas price (how much they are willing to pay for each unit of computation on the Ethereum chain).
miners receive these transactions, order them by gas price, and use a greedy algorithm to produce a block that maximizes the value received through transaction fees.
With Flashbots Auction, however, users have access to a first-price sealed-bid auction which allows them to privately communicate their bid and granular transaction order preference without paying for failed bids.
This is how the game works:
Flashbots connects searchers to miners and allows them to avoid the public tx pool.
Searchers craft "bundles" with transactions they would like to send miners, and send them to Flashbots' MEV-Relay.
mev-relay is a gateway that Flashbots runs which simulates searchers' bundles, and if there are no errors, then forwards them on to miners.
Miners then receive bundles and include them in blocks if it is profitable for them to do so.
💡 Enough of bla bla bla, let’s get some code going.
Before you run the PoC I wrote, you need:
Two test accounts on Ethereum (for instance, you can create them on Metamask). Take note of their private keys: one will be an empty wallet for signing/reputation, and the other will hold funds.
An Alchemy account, then take note of a provider’s URL+KEY for Goerli.
Some imaginary Goerli (fake) money from some faucet, like this one for example.
Install the required Python 3 packages on a virtual environment, as described here, then add the info above into a .env file.
You are ready to run your first Flashbots bundle.
The script below sends a bundle of two transactions that transfer Goerli ETH into a random account:

Running this code should print something like this:

No activity yet