Skip to content

How it works

What Proof of Audits checks before you sign.

Three inputs meet in one panel: the released audit, the live chain, and your exact transaction.

MetaMaskConfirm transaction

Ethereum Mainnet · Contract interaction

Proof Before Sign

Illustration with example data. Panel text comes from the Snap's own code.

Three inputs, one verdict.

Audit evidence

The firm, report, commit and findings, sent by the audit firm by API or MCP.

Live chain facts

The bytecode hash, proxy type, implementation and upgrade controller on Ethereum mainnet.

Your transaction

Traces the exact call path of the transaction, through proxies and implementations.

The verdicts.

The confirmation panel labels review coverage for the exact call. These are its five labels and the explanation it shows with each.

LabelExplanation in the panel
FULLY REVIEW-COVERED

Every assessed component matches its approved review scope.

PARTIALLY REVIEW-COVERED

Changed components prevent a fully reviewed conclusion.

NOT REVIEW-COVERED

No assessed component is covered by current approved review scope.

UNKNOWN

Review coverage is not established for the assessed components.

No execution evidence was established for this transaction.

INCOMPLETE

Unresolved calls prevent a complete review-coverage conclusion.

The complete execution path was not established.

Two vocabularies.

The confirmation panel shows review coverage (FULLY REVIEW-COVERED to INCOMPLETE). The Snap home page and the install page summarize results as VERIFIED, PARTIAL, CHANGED or NOT VERIFIED.

Result for the transactionSummary shown
VERIFIED_MATCHVERIFIED
DRIFTCHANGED
PARTIAL, EXECUTION_PATH_WARNING, REVIEW_WARNINGPARTIAL
Any other resultNOT VERIFIED

No audit on record.

For contracts without a released audit, shows source verification (which is not an audit), the proxy and its implementation, and who can upgrade it, with a link to request an audit listing.

Shortened example. The real panel also shows call counts and the checked block.
Second example: not a proxy, owned by a wallet

Headlines the panel can show

  • No released audit · source verified (Sourcify), not audited · upgradeable ERC-1967 proxy
  • No released audit · source verification not established · not upgradeable by proxy · owner is a single wallet
  • No released audit · source verified (Sourcify), not audited · upgradeable custom proxy

Approvals and permits.

Warns about unlimited approvals and approvals to a wallet (EOA).

Shortened example. The real panel also shows call counts and the checked block.

ERC-2612 Permit and Permit2 signatures get a contract status lookup. Logins and message signing get no panel.

What gets sent.

  • Proof of Audits never asks for your recovery phrase or private key. When transaction checks are on, the proposed Ethereum mainnet transaction is sent to Proof of Audits for analysis. Nothing is sent while checks are paused.
  • You can pause transaction checks or all Proof of Audits activity.

For teams.

  1. An audit firm publishes the audit.

    Firms send the report, commit and findings to Proof of Audits by API or MCP.
  2. Proof of Audits matches it to the chain.

    We compare the audited build with the bytecode live on Ethereum mainnet and record proxies and upgrade powers.
  3. Your wallet shows the result.

    When you start a transaction, the panel shows the verdict for that exact call, before you confirm.

Where the check stops.

  • The Snap checks Ethereum mainnet only.
  • No record means unknown, never safe.
  • Login and message signatures get no panel.
  • Proof of Audits does not guarantee safety. A reviewed contract can still contain vulnerabilities.

Get the panel in your wallet.