Skip to content

Explorer

Verified contracts

Open in

OrbitWan compiles a contract’s published source with the exact compiler it was built with, and compares the result with the code the chain runs. The code on the chain decides the result, and OrbitWan never marks a contract verified on request.

Mark Meaning
Exact Match The compiled code is identical to the code on chain, byte for byte, so the published source is the real source
Similar Match Identical once the compiler’s metadata hash is set aside. The logic is the same, but the source text is not proven identical
Proxy The address is a proxy: its logic lives in a separate contract, which is linked

The metadata hash is a fingerprint the compiler adds to the code. It changes with the source files’ text, comments included, and with the compiler settings. Values a contract writes into its code when it is deployed are always taken as the chain holds them.

An address page shows a contract’s source and its mark on the Contract tab. Every verified contract is listed at orbitwan.io/verified, and every contract OrbitWan deploys is verified on orbitwan.io and on Sourcify.

Check it yourself

Terminal window
curl -O https://orbitwan.io/verify.sh
bash verify.sh 0xADDRESS

The script fetches the source and compiler settings OrbitWan stored for the contract, downloads that official Solidity compiler and checks its checksum, compiles, reads the contract’s code from a Wanchain node and compares the two. It prints EXACT MATCH, SIMILAR MATCH or FAIL, with the first byte that differs. It needs bash, curl, jq and python3.

To read the code from a node of your choice, add its URL:

Terminal window
bash verify.sh 0xADDRESS --rpc https://your-wanchain-node

Read a verdict as JSON

Terminal window
curl https://orbitwan.io/idx/contract/0xADDRESS
Field What it holds
verified true or false
match_type full for Exact Match, partial for Similar Match
contract_name The compiled contract’s name
abi The contract’s ABI
sources Every source file, as published
stdjson_input The exact compiler input. Compiling it again is the whole proof
match_details What was set aside in the comparison, and why
provenance The source repository and commit, the compiler version and settings, and the hashes of the code on chain and compiled
proxy For a proxy, its pattern and the contract it points to