Skip to content

Grants etherscan more functionality, including full diamond standard support & Herodotus proving services

License

Notifications You must be signed in to change notification settings

HerodotusDev/hetherscan

Repository files navigation

GPLv3 licensed

Hetherscan

Hetherscan is a superset of Betherscan by tiagofneto, focusing on adding Diamond Contract support and various ways to interact with the Herodotus Storage Proofs API from within the block explorer.

Hetherscan is a browser extension designed to enhance the user experience on block explorer platforms. By integrating additional information directly into the pages, Hetherscan aims to provide a more comprehensive view of blockchain data, making it easier for developers and advanced users to gather all the information they need without the need to navigate away from the explorer.

Features

Hetherscan adds new data fields & features to various sections of block explorers, detailed as follows:

Accounts

Smart Contracts

  • Storage root: Root of the storage Trie
  • Code hash: Keccak256 hash of the EVM code of the account
  • 🛰️ Prove Account Properties: Select the properties you want to prove and prove them with Herodotus Storage Proofs API with a single click
  • 🛰️ Prove ETH Balance: Prove the ETH balance of the account with Herodotus Storage Proofs API
  • 🛰️ Read as Diamond: Treat the contract as a Diamond Contract and read any of it's facets' functions
  • 🛰️ Write as Diamond: Treat the contract as a Diamond Contract and write to any of it's facets' functions
  • 🛰️ Diamond Config: Allows for configuring the function selector and the function name that will be used to get all facet addresses of the Diamond contract (useful for custom Diamond implementations & variations)

EOAs

Blocks

  • State root: Root of the state Trie
  • Transactions root: Root of the transactions Trie
  • Receipts root: Root of the receipts Trie
  • Mix hash: Used to verify the correctness of a block's Proof of Work. In Proof of Stake consensus, corresponds to the RANDAO value of the previous Beacon Chain block
  • Logs Bloom: Bloom filter of indexable information from the logs entry of the transactions receipts
  • Header RLP: RLP encoded block header
  • 🛰️ Prove header properties: Select the properties you want to prove and prove them with Herodotus Storage Proofs API with a single click

Transactions

  • Signature (v, r, s): Components of the digital signature (ECDSA) of the transaction

Supported explorers

Ethereum:

Polygon:

Binance Smart Chain:

Fantom:

Optimism:

Gnosis:

Linea:

Scroll:

Frax:

Avalanche:

Disclaimer

This extension is an independent project and has not been authorized, sponsored, or otherwise approved by any block explorer platforms. It is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. Use it at your own risk.

Contributing

Contributions are welcome! Please feel free to submit a PR.

Development

  1. Clone the repository
  2. Run bun install to install the dependencies
  3. Run bun run build to build the extension, or bun dev to build the extension and watch for changes
  4. Load the extension in Chrome by navigating to chrome://extensions/, enabling "Developer mode" in the top right corner, and clicking "Load unpacked". Select the dist folder.
  5. To see changes on the website, you need to reload the extension in Chrome & the website.

License

This project is licensed under the GPLv3 license - see the LICENSE file for details.