In this track: Meet smart contracts
beginner · 3 MIN READ

Smart contract knowledge check

Connect interfaces, execution, persistent state and trust boundaries.

LET’S PICTURE IT

A rulebook, an instruction form, a notebook and a reporter all play different roles. A contract system may need each of them.

SEE IT FOR YOURSELF
A valid counter call, step by stepStep 1 / 4
A valid counter call, step by stepFunction requestincrement()No argumentsBefore executionstored count0A local teaching example with a defined starting stateIncoming callCheck function dispatchCheck coded conditionsRules passConditions passContinue executionA failed check can revert insteadCalculation0 + 1Result: 1Storage writecount = 1Persists if call succeedsCalculating a local value and storing it are separate stepsPersistent statecount1Later readGetter reports 1No new incrementState, logs and browser display have different roles

This example begins with count zero and a request to call increment(). No real contract is deployed.

Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.

Interface scenario

A website shows transfer(address,uint256) with an amount of 100. The ABI describes how to encode it. The implementation and token metadata determine behavior and display meaning; the argument type alone does not make it 100 ETH.

Execution scenario

An exposed function changes a setting only for an owner. The permission must be enforced in code. Hiding the settings page from ordinary users does not prevent them from preparing a direct call.

External-data scenario

A contract reads a price supplied by an oracle. Verifying a report’s signature can establish which signer authorized it, while freshness and accuracy need their own checks and assumptions.

Upgrade scenario

A proxy keeps the same address while its authorized implementation changes. Inspect the upgrade policy and state-layout compatibility. A familiar address and a verified source badge do not alone establish permanent behavior or safety.

TURN UNDERSTANDING INTO PRACTICEOpen the Calldata decoder →
QUICK CHECK · NO PRESSURE

Which statement is correct?

Your progress stays in this browser.
Keep exploring the original referenceethereum.org ↗

Original explanations by EtherTools. Examples are educational and source-linked; this site is independent of the Ethereum Foundation. Our approach.