wswap.site

How to Verify an Oracle's Resolution Data On-Chain

To verify an oracle's resolution data on-chain, you read the relevant blockchain transaction where the oracle submitted its outcome, cross-check that data against the prediction-markets/prediction-market-smart-contract-exploit-risk/">smart contract's stored resolution, and confirm it matches the real-world event you expected. The process is straightforward but requires attention to the specific market contract and the oracle type used.

What resolution data looks like on-chain

When an oracle resolves a prediction market, it submits a transaction that calls a function on the market's smart contract. That function passes an outcome identifier - usually a single byte or a bytes32 hash - corresponding to a specific result (e.g., "Yes" or "No" for a binary market). The contract then updates its internal state, locking the outcome so traders can redeem their shares.

On Ethereum or Polygon, you can see this transaction by searching the market contract address on a block explorer like Etherscan or Polygonscan. Look for the function name such as resolve, setOutcome, or reportPayouts, depending on the platform. The input data typically contains the outcome value.

Steps to Verify the Resolution

1. Find the Market Contract and Resolution Transaction

2. Read the Outcome Parameter

3. Verify the Oracle Source

4. Confirm the Contract State Reflects the Resolution

Tools That Help

What to watch for

A Practical Example

Suppose you see a market "Will BTC exceed $50k on Dec 31, 2026?" resolved as "Yes". On Polymarket, the resolvers contract calls reportPayouts with an outcome array [0, 1] (0 for No shares, 1 for Yes shares). You verify:

  1. The transaction hash on Polygonscan shows input 0x... decoded as outcome: [0, 1].
  2. The sender is the UMA oracle contract (address confirmed from UMA's docs).
  3. You call getOutcome() on the market contract and get true (resolved) with value 1.
  4. You check Bitcoin price data for Dec 31, 2026 from a trusted source. If it exceeds $50k, the oracle matches reality.

If any step fails - mismatched outcome, wrong sender, or unresolved contract - the oracle data is questionable. Contact the market creator or check platform dispute channels.

Why Verification Matters

Smart contracts execute exactly as written, but oracles are subject to manipulation or error. Verifying on-chain gives you cryptographic proof of the resolution, independent of the platform's frontend. This is the only way to be certain your share redemptions will work correctly.

Not financial advice. wswap.site publishes market data and general information about digital assets. Crypto assets are volatile and you can lose everything you put in. Nothing here is a recommendation to buy, sell or hold, and we make no price predictions.

Prices are sourced from third parties and may be delayed or wrong. Verify anything you intend to act on against a primary source.

Back to prediction markets