OpenChainGraph Suite · ART-610 · EVM-Standard Math

ERC-4626 Vault Share Math

Recomputes tokenized-vault conversions from a declared total_assets and total_supply, applying the rounding direction ERC-4626 mandates for each function and showing you which direction produced each number and what the opposite direction would have given. Also computes a deposit-then-redeem round-trip loss bound, the exchange-rate drift between two declared snapshots, and a declared fee. Every quantity is exact uint256 integer arithmetic, the same integer semantics Solidity uses. There is no floating point anywhere in it.

ERC-4626 (Final, 2021-12-22)Exact uint256 integer mathDeclared inputs, no chain reads
๐Ÿ”’ All inputs are processed locally in your browser. No data is transmitted. Do not enter real personal data โ€” use synthetic or anonymised inputs only.
What This Does and Does Not Tell You

ERC-4626 mandates a rounding direction per function, and the reason is stated in the standard's own security considerations: it is considered most secure to favour the vault over its users, so amounts issued to a user round down and amounts a user must supply round up. Getting exactly one of those backwards is how a vault quietly leaks value, one wei at a time, which is why this tool reports each direction separately rather than a single verdict.

What it cannot tell you: whether the numbers you typed match any deployed vault, whether that vault's own implementation applies these directions, whether a rate change between two snapshots came from yield, a loss, a donation or an attack, or whether the fee basis points you declared are what anyone actually charges. It never fetches on-chain state and is never a party to a transaction. A round-trip loss or a zero-share mint reported here is a property of the numbers you supplied under the standard's arithmetic, not an audit of a deployment.

Vault State
OpenZeppelin virtual shares and assets. Uncheck for the naive formula, which is the shape a first-depositor inflation attack drains.
Only meaningful when virtual_amounts is on. A larger offset bounds an inflation-attack loss more tightly.
Both are carried into the receipt verbatim for your own records. Neither selects any behaviour: the same declared state computes identically under any label.
Conversions, Round Trip, Drift and Fee
ERC-4626 fixes the rounding direction per operation, so there is nothing to select here. The direction used is reported alongside each result.
Deposits this many assets, then immediately redeems the shares minted, evaluated against the post-deposit state.
ERC-4626 mandates no fee formula. This applies the OpenZeppelin ERC4626Fees shapes, rounding up.
Conversions
Round Trip
Exchange-Rate Drift
Fee
Rounding Table Applied (ERC-4626)
Execution Hash (SHA-256)