A smart contract is a program stored and executed by a blockchain. When a transaction calls it, network nodes run the code under the chain’s rules and may update on-chain state. The name can be misleading: a smart contract is software and is not automatically a legally enforceable contract.
How It Works
Developers write code, compile or deploy it to a blockchain, and users or other programs send transactions that call its functions. On Ethereum, smart contracts commonly run in the Ethereum Virtual Machine (EVM). The network processes the same transaction against the same prior state, and a valid transaction pays gas for computation and storage. A contract cannot independently fetch arbitrary web data; it needs an oracle or another explicit data source.
Upgrades and Administrative Control
Code deployed to an address is usually not edited in place. Some systems use a proxy that keeps the address and stored state while directing calls to replaceable implementation code. That design can make upgrades possible, but it introduces trust and failure points: an owner, multisignature group, governance process, or upgrade key may be able to change behavior. Other chains may use different program-authority models. Before using a protocol, check whether its code or parameters can change, who controls that ability, and what delay or recovery process exists.
Uses and Limits
Smart contracts support token transfers, decentralized exchanges, lending, games, identity tools, and other on-chain services. They can automate rules, but they do not guarantee that the rules are fair, the interface is honest, or the underlying project will remain available. Bugs, compromised keys, faulty assumptions, oracle errors, and upgrade powers can all cause losses.
Common Misconceptions
- “A smart contract is always immutable.” The deployed bytecode may be fixed while a proxy, administrator, or protocol mechanism changes the implementation or parameters.
- “An audit proves the code is safe.” An audit is a review with a defined scope and date; it cannot guarantee that every bug or future change is harmless.
- “The code is a legal contract.” Software can implement an agreement, but legal status depends on applicable law and facts outside the code.
- “The contract knows real-world facts.” It only processes data available to the chain, often supplied through an oracle.
Social Media Sentiment
A small February 2026 r/ethdev discussion about AI smart-contract audit tools included reports of both false positives and useful findings. Participants emphasized that tool output needs code context and human review; this single developer thread is anecdotal, not evidence that AI audits reliably secure contracts.
Last updated: 2026-10
Related Terms
See Also
- Why smart contract audits fail
- Why DAO governance votes can fail
- Does Ethereum TPS include Layer 2 transactions?
Looking to exchange supported digital assets? Explore ChangeNOW.
Sources
- Ethereum.org, smart contracts — The documentation explains what contracts are, how they are deployed, and their role on Ethereum.
- Ethereum.org, upgrading smart contracts — This guide describes proxy patterns and the trade-offs involved in changing contract behavior.
- Ethereum.org, verifying smart contracts — The guide explains how published source code can be compared with deployed bytecode.
- Solidity documentation, security considerations — The language documentation outlines common risks and cautions for contract developers.
- r/ethdev discussion about AI audit tools — This small developer discussion is used only as an anecdotal example of reported tool limitations and uses.