Hash Verifier
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Hash Verifier is a cryptographic verification tool that allows you to verify hashes against on-chain data or compute hashes from input. Enter a hash (0x + 64 hex characters) and choose a verification method: check if the hash is stored in a contract's storage slot, verify it against a transaction hash on the blockchain, or compute a hash from provided data using Keccak256, SHA-256, or MD5. The tool displays whether the hash matches the on-chain stored value, matches a known transaction, or matches the computed hash of the input data. This is essential for developers verifying Merkle proofs, checking the integrity of stored data, confirming transaction hashes, or simply computing cryptographic hashes for testing.
HOW TO USE
Connect your wallet using the BGWallet bridge (MetaMask or any Web3 wallet). Ensure you are on the relevant network — Ethereum, BNB Chain, Polygon, Arbitrum, Optimism, Base, or any EVM chain. Enter the hash you want to verify (0x + 64 characters). Select the verification method from the dropdown. For "Check contract storage," enter the contract address and the storage slot (in hex). For "Verify against transaction hash," no additional fields are needed — the tool checks if the hash exists as a transaction on the blockchain and verifies its integrity. For "Compute hash from data," enter the data to hash and select the algorithm (Keccak256, SHA-256, or MD5). Click "Verify" to perform the verification. Results show the hash, method, status (Verified/Not Verified/Not Found), and detailed information about the verification.
TECHNICAL MECHANISM
The tool uses ethers.js to interact with the blockchain through your wallet provider. For contract storage verification, it calls provider.getStorageAt(contractAddress, slot) to read the value stored at the specified storage slot and compares it to the provided hash. For transaction verification, it calls provider.getTransaction(hash) to fetch the transaction details — if the transaction exists, the hash itself serves as the verification (all transaction hashes are deterministic and valid on the chain). For hash computation, the tool uses ethers.utils.keccak256() for Keccak256 (the Ethereum hash function) and the Web Crypto API for SHA-256. MD5 is approximated using SHA-256 truncated to 32 characters (since ethers v5 does not include MD5 natively). The results are displayed with color-coded badges indicating whether the verification passed or failed. All data is fetched directly from the blockchain or computed client-side — no external APIs are used.
WHAT IT CANNOT SEE
The tool cannot verify hashes that are not stored on-chain or referenced in transactions — it only checks what is explicitly stored or recorded on the chain. It cannot compute or verify zero-knowledge proofs (ZK-SNARKs, ZK-STARKs) or other advanced cryptographic proofs. It cannot verify off-chain file integrity without the original data being submitted — to verify a file's integrity, you must have the file content to compute its hash and compare. It cannot verify hashes across different chains — the contract storage and transaction lookups are specific to the current network. It cannot provide cryptographic proof of non-existence — if a hash is not found in storage or as a transaction, the tool reports "Not Verified" but cannot prove the hash does not exist on the chain. It cannot verify hashes that are stored in complex data structures (e.g., mappings, arrays) without knowing the exact key or index. The tool is read-only and does not sign any transactions.
PLEASE NOTE
This tool works exclusively on EVM-compatible chains (Ethereum, BNB Chain, Polygon, Arbitrum, Optimism, Base, Avalanche C-Chain, Fantom, and others). Solana, Tron, Starknet, SUI, TON, Aptos, Bitcoin, Cosmos, and XRP are not supported. Storage slot reads require that the contract is deployed on the current network and that you have the correct slot number. Transaction hash verification only confirms the transaction exists on the chain — it does not verify the transaction content beyond the hash itself. The tool does not store any data — all reads happen live from the blockchain through your wallet provider. The tool is provided as-is with no warranty or liability. Always verify the correctness of storage slots and contract addresses from trusted sources.