acuarica / evm

A Symbolic Ethereum Virtual Machine (EVM) bytecode interpreter, parser and decompiler, along with several other utils for programmatically extracting information from EVM bytecode.
https://acuarica.github.io/evm/
MIT License
46 stars 5 forks source link

Replace `ethers` CLI dependency with custom provider and `js-sha3` #100

Closed acuarica closed 5 months ago

acuarica commented 5 months ago

This PR removes ethers as a CLI dependency, leave it only as a dev dependency.

To do so, it replaces EtherscanProvider with a custom JSON-RPC provider using https://cloudflare-eth.com/ RPC. And includes a custom implementation of checksum addresses using js-sha3 (used to compute keccak256 hash).

Internally, we also replace ethers keccak256 usages for js-sha3.