Tests
- Panoramix is probably the most well-known one thanks to etherscan.io integrating it. It'll return "python-like" code that is actually quite nice to read. Unfortunately it often ends up having "timeouts" causing the decompiled code to just abruptly stop.
- Dedaub's Decompiler is my personal favorite. When it produces something, it does produce "solidity-like" code that is well readable. But sometimes it just fails to yield anything at all. And even when it does work it struggles whenever memory handling gets involved, requiring some educated guessing.
- ethervm.io's Decompiler is another online service which similar to Panoramix always delivers a result, but it also has the tendency to skip big parts of the code due to "could not resolve jump destination" errors and the like.
- Heimdall does not have an online s
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// lessons: implement as &self, so we can use with Arc normally | |
use std::collections::HashMap; | |
use std::hash::Hash; | |
use std::sync::RwLock; | |
struct Entry (RwLock<i32>); | |
// The example is non hash, we can cast hashed_key to usize | |
struct ConcurrentHashMap { | |
inner: Box<Vec<RwLock<HashMap<i32, Entry>>>>, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
mod withdrawal { | |
use crate::{constants::GWEI_TO_WEI, serde_helper::u64_hex, Address}; | |
use alloy_rlp::{ | |
RlpDecodable, RlpDecodableWrapper, RlpEncodable, RlpEncodableWrapper, | |
}; | |
use reth_codecs::{main_codec, Compact}; | |
use std::{mem, ops::{Deref, DerefMut}}; | |
/// Withdrawal represents a validator withdrawal from the consensus layer. | |
pub struct Withdrawal { | |
/// Monotonically increasing identifier issued by consensus layer. |
I hereby claim:
- I am 0xqd on github.
- I am nxqd (https://keybase.io/nxqd) on keybase.
- I have a public key ASBtX0iHAefesUGfxLC3navhkdZpJEqhuaH7tHmw3tdR4Ao
To claim this, I am signing this object:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
mod log { | |
use crate::{Address, Bloom, Bytes, B256}; | |
use alloy_primitives::Log as AlloyLog; | |
use alloy_rlp::{RlpDecodable, RlpEncodable}; | |
use reth_codecs::{main_codec, Compact}; | |
/// Ethereum Log | |
pub struct Log { | |
/// Contract that emitted this log. | |
pub address: Address, | |
/// Topics of the log. The number of logs depend on what `LOG` opcode is used. |
Syncing an Ethereum node is largely reliant on IOPS, I/O Per Second. Budget SSDs will struggle to an extent, and some won't be able to sync at all.
This document aims to snapshot some known good and known bad models.
For size, 2TB come recommended as of mid-2022. 1TB can work for now but is getting tight.
High-level, QLC and DRAMless are far slower than "mainstream" SSDs.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let globalCache = { | |
circulatingSupply: "0", | |
}; | |
const REGISTRY = { | |
vegaTokenAddr: "0x4EfDFe8fFAfF109451Fc306e0B529B088597dd8d", | |
deployedBucketAddresses: { | |
Private: "0x4464B3917d9A249ff99D8Aa89E5a35D373Af2305", | |
Advisors: "0x4d91BaCD3F2CC3BCB18F0027381C7F1c44363C88", | |
Development: "0x1dAA4943280C85be711A6bDbACb7b73c66601B6d", |
I hereby claim:
- I am rhacker on github.
- I am nxqd (https://keybase.io/nxqd) on keybase.
- I have a public key ASAPBlscWn09Z8RLHhVlUQA2XNwfQWTT1yY0jyC2AY2_lwo
To claim this, I am signing this object:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-Xms1024m | |
-Xmx3072m | |
-Xss64m | |
-Dfile.encoding=UTF-8 | |
-Djava.net.preferIPv4Stack=true | |
-Dsun.io.useCanonCaches=false | |
-XX:+AggressiveOpts | |
-XX:+AlwaysPreTouch | |
-XX:+CMSClassUnloadingEnabled | |
-XX:+CMSIncrementalMode |
NewerOlder