Tool 11 · Utilities · Free

Web3 Unit & Encoding Utilities

The conversions you reach for mid-review: wei to ether without floating-point error, hex and binary, bytes32 to string, EIP-55 checksum validation, function selectors and keccak256. All BigInt-based, all local.

At a glance

Panels6
PrecisionBigInt — no rounding
keccak256Hand-written, verified
UploadsNone
CostFree

Web3 Unit Converter

Run it

Runs locally

Type in any field; the rest update instantly. Arbitrary precision — no floating-point rounding.

How it works

What this tool does, and what it can't.

Everything here uses BigInt, so a wei value near uint256 max converts to ether and back without losing a single unit. Most online converters use floating-point and silently corrupt large numbers — which matters when the number is somebody's balance.

The keccak256 implementation is hand-written (about 4KB, no dependency) and verified against the standard test vectors plus real ERC-20 selectors. It powers the EIP-55 checksum validator and the selector calculator.

The selector panel flags collisions between different signatures. That is not a curiosity: selector collisions are how a function gets shadowed in a transparent proxy and how a diamond's routing table becomes ambiguous.

FAQ

Questions about this tool.

More in the methodology and the glossary.

1018 — 1,000,000,000,000,000,000. One gwei is 109 wei, and gas prices are conventionally quoted in gwei.

A mixed-case encoding of an Ethereum address where the capitalisation is derived from the hash of the lowercase address. It costs nothing and catches most typos and tampering, which is why wallets warn on a mismatch. An all-lowercase address is valid but carries no checksum to verify.

The first four bytes of keccak256 of the canonical signature — the function name plus parameter types with no spaces and no parameter names. transfer(address,uint256) gives 0xa9059cbb.

OpenZeppelin's AccessControl identifies roles by bytes32, usually keccak256("MINTER_ROLE"). Converting between the string and the hash is how you check which role a transaction actually granted.

Not quite. Ethereum uses the original Keccak submission, which pads with 0x01; NIST's finalised SHA3-256 pads with 0x06. Same permutation, different digest. Using a SHA3-256 library where keccak256 is required is a classic integration bug.

Beyond automation

No tool reads your specification. We do.

The findings that drain protocols come from state assumptions, economic design and cross-contract interaction — none of which a scanner sees. Free scoping in under two working days.