Use this to get free high performance archive nodes (RPC) on ethereum on arbitrum
Referral code: Encode2024 Referral link: https://www.ankr.com/rpc/?utm_referral=Encode2024
Your submission should be aimed towards shrinking the Ethereum chain. It is acceptable to have a submission that you have only tested on a test chain, or is designed to also work with multiple different chains, as long as it can target the standard EVM.
Compass Labs is running an archive node at 35.197.242.62
. You can access its RPCs by the standard port 8545
. For example:
$ curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":67}' 35.197.242.62:8545
This node has not finished syncing, but if you would like to analyse it’s on disk data, you can access it by ssh:
$ ssh -p 3022 -l attendee 35.197.242.62
...
attendee@a0948d46acc0:~$ ls /mnt/erigon_archive_node_data/
LOCK caplin chaindata diagnostics downloader jwt.hex logs lost+found nodekey nodes snapshots temp txpool
Use Ankr to set up a free Ethereum archive node for this challenge! This one will be fully synced, but only accessible by RPC.
Your submission should be able to take an account address (which may or may not be a contract) and produce some output which could be used to serve JSON-RPCs relating to any transaction that account took part in.
For example, if USDC’s address were given to your program, then you could produce a state file for an Erigon Archive Node, which would then have to be able to respond to requests about any transaction that the USDC contract took part in. Not all RPC methods need to be well defined; for example, the eth_getBlockTransactionCountByNumber RPC method, when called on a block that on mainnet has 50 transactions, one of which involves USDC, could in your solution respond by saying there was 1 transaction in that block; or 50; or error out.
Possible ways to implement this include:
An interesting link on a related, but not identical problem is here: How to efficiently export full Ethereum to S3 | by Anton Bryzgalov.