# Smart Contract

> 智能合约是一种由计算机程序自动执行的协议，使交易可追溯且不可逆，主要用于去中心化应用。

- Canonical URL: https://dev.iq.wiki/zh/wiki/smart-contract
- Categories: Glossary
- Created: 2022-07-19T06:20:05.697Z
- Last updated: 2026-06-02T14:15:48.012Z
- Source: IQ.wiki — the world's largest blockchain and crypto encyclopedia (https://iq.wiki)

---

**智能合约**是一种存储在区块链上的自执行计算机程序，当满足预定条件时会自动运行。各方之间协议的条款被直接写入代码行中，由于这些代码存在于分布式、去中心化的区块链网络中，该过程实现了协议执行的自动化，并允许所有参与者在没有中间人参与的情况下确定结果。一旦完成，交易即具有可追溯性和不可逆性。[\[2\]](#cite-id-5mlttgp8o8x)[\[5\]](#cite-id-b8zcecqmro)[\[1\]](#cite-id-3l63eaqe5x2)

智能合约旨在减少对可信中间人的依赖，降低仲裁成本和欺诈损失，并最大限度地减少恶意和意外异常。智能合约与[加密货币](https://iq.wiki/wiki/cryptocurrency)紧密相连，是 [Web3](https://iq.wiki/wiki/web3) 应用程序的基础构建块，包括[去中心化金融](https://iq.wiki/wiki/defi) (DeFi) 和[非同质化代币](https://iq.wiki/wiki/non-fungible-token-nft) (NFT) 应用程序。[\[1\]](#cite-id-3l63eaqe5x2)[\[2\]](#cite-id-5mlttgp8o8x)



## 历史

“智能合约”这一概念和术语最早由美国计算机科学家[尼克·萨博](https://iq.wiki/wiki/nick-szabo)（Nick Szabo）于1994年提出，他将其定义为“一种执行合约条款的计算机化交易协议”。[\[1\]](#cite-id-3l63eaqe5x2)[\[2\]](#cite-id-5mlttgp8o8x) 1998年，萨博还设计了一种名为“比特金”（Bit Gold）的虚拟货币，这比[比特币](https://iq.wiki/wiki/bitcoin)的出现早了十年。萨博经常被传言是[比特币](https://iq.wiki/wiki/bitcoin)的匿名发明者[中本聪](https://iq.wiki/wiki/satoshi-nakamoto)（Satoshi Nakamoto），但他对此予以否认。[\[1\]](#cite-id-3l63eaqe5x2)[\[6\]](#cite-id-29n01f4imjEdM9Di)

2009年[比特币](https://iq.wiki/wiki/bitcoin)区块链的推出支持了第一个“协议智能合约”，它建立了一套转移BTC必须满足的条件，例如发送者必须使用正确的私钥签名。到2012年，[比特币](https://iq.wiki/wiki/bitcoin)网络演进到支持多重签名（multisig）交易，这是一种更高级的智能合约形式，需要多个私钥才能批准交易。[\[1\]](#cite-id-3l63eaqe5x2)

智能合约的现代纪元始于2013年[维塔利克·布特林](https://iq.wiki/wiki/vitalik-buterin)（Vitalik Buterin）发布的[以太坊](https://iq.wiki/wiki/ethereum)白皮书，该白皮书提出了一种新型区块链，用于实现更通用、可编程的智能合约。[以太坊](https://iq.wiki/wiki/ethereum)于2015年上线，作为一个“世界计算机”运行，能够同时运行许多独立且复杂的智能合约，显著扩展了它们的功能。[\[1\]](#cite-id-3l63eaqe5x2)[\[3\]](#cite-id-m1k658u6xqh)

## 智能合约的工作原理

#

## 基本机制

智能合约运行在嵌入区块链的专用虚拟机上，遵循“如果/当 x 事件发生时，则执行 y 操作”的逻辑。[\[1\]](#cite-id-3l63eaqe5x2) 通过在去中心化网络而非中央服务器上运行，它们使多方能够达成共享且不可篡改的结果，而无需相互信任。单个智能合约可以包含各种条件，一个应用程序可以使用多个智能合约来促进一系列互连的流程。[\[5\]](#cite-id-b8zcecqmro)

由于智能合约运行在区块链之上，它们会严格按照编程自动且确定性地执行。这保证了合约的结果不能被任何单方更改。开发中使用了多种编程语言，其中 [Solidity](https://iq.wiki/wiki/solidity)（用于 [以太坊](https://iq.wiki/wiki/ethereum) 及其兼容链）、Vyper 和 Rust 是最突出的几种。[\[1\]](#cite-id-3l63eaqe5x2)[\[3\]](#cite-id-m1k658u6xqh)

#

## 优势

* **安全性与可靠性：** 去中心化执行消除了单点故障，并使结果具有抗篡改性。逻辑由节点网络处理和验证，确保了高运行时间并严格按照代码执行。 [\[1\]](#cite-id-3l63eaqe5x2)
* **效率与准确性：** 一旦满足条件，合约会立即执行。自动化消除了对手动文书工作的需求，并排除了人为错误的可能性。 [\[5\]](#cite-id-b8zcecqmro)
* **信任与透明度：** 由于没有第三方参与，且加密的交易日志在参与者之间共享，信息无法为了个人利益而被更改。 [\[5\]](#cite-id-b8zcecqmro)
* **成本节约：** 它们消除了对中间机构处理交易的需求，从而省去了相关的费用和时间延迟。 [\[5\]](#cite-id-b8zcecqmro)

## 局限性与风险

* **不可篡改性：** 智能合约一旦部署，其代码就无法轻易更改。虽然这是一种安全特性，但也导致修复漏洞变得困难。一种常见的解决方法是使用“可升级”的代理合约，将用户引导至新的、经过更新的合约。 [\[1\]](#cite-id-3l63eaqe5x2)
* **智能合约风险：** 合约代码中的缺陷、漏洞或利用程序可能导致安全漏洞和资金损失。由于合约严格按照编写的内容执行，错误的程序将产生错误的结果。这种风险使得全面的安全审计成为开发过程中至关重要的一部分。 [\[1\]](#cite-id-3l63eaqe5x2)[\[2\]](#cite-id-5mlttgp8o8x)

这种风险的一个著名案例是2016年6月对The DAO的攻击，该事件导致5000万美元的以太币被盗。最终，通过对[以太坊](https://iq.wiki/wiki/ethereum)区块链进行一次极具争议的硬分叉，追回了攻击者的资金，才使该事件得以平息。 [\[4\]](#cite-id-zhqtp26hlxn)

#

## 预言机问题与混合智能合约

区块链本质上是孤立的系统，无法原生访问外部的链下数据，例如现实世界的资产价格、天气数据或体育赛事结果。这被称为“预言机问题”（oracle problem），在没有补充解决方案的情况下限制了智能合约的应用范围。[\[1\]](#cite-id-3l63eaqe5x2)

为了克服这一限制，智能合约使用“预言机”，这是一种将区块链连接到外部系统的安全中间件服务。预言机提供链下数据和计算资源，从而实现了将链上代码与链下基础设施相结合的“混合智能合约”。这种连接使智能合约能够对现实世界的事件做出反应，极大地扩展了其潜在的应用场景。[\[1\]](#cite-id-3l63eaqe5x2)[\[5\]](#cite-id-b8zcecqmro)

## 实现与平台

并非所有区块链都具备运行复杂、可编程智能合约的原生能力。关键的区别在于底层网络通过内置虚拟机执行和存储任意应用逻辑的能力。

支持高级智能合约的知名平台包括：

* **以太坊 (Ethereum)：** 在其[区块链](https://iq.wiki/wiki/blockchain)上实现了一种近乎图灵完备的语言，是最突出的智能合约框架。
* **其他兼容区块链：** 大量区块链生态系统与[以太坊](https://iq.wiki/wiki/ethereum)虚拟机 (EVM) 兼容，包括 [Arbitrum](https://iq.wiki/wiki/arbitrum)、[Avalanche](https://iq.wiki/wiki/avalanche)、[Base](https://iq.wiki/wiki/base) 和 [BNB Chain](https://iq.wiki/wiki/binance-smart-chain)。
* **比特币 (Bitcoin)：** 基础[比特币](https://iq.wiki/wiki/bitcoin)区块链提供了一种非图灵完备的脚本语言 (Script)。虽然这允许创建多重签名账户、支付通道和托管等自定义逻辑，但它不具备类似于[以太坊](https://iq.wiki/wiki/ethereum)的原生可编程智能合约能力。像 Rootstock (RSK) 这样的二层 (Layer-2) 解决方案为[比特币](https://iq.wiki/wiki/bitcoin)网络带来了兼容以太坊的智能合约功能。

总的来说，这些平台为各种去中心化应用提供了高度定制化逻辑的创建支持。[\[1\]](#cite-id-3l63eaqe5x2)

## 用例与应用

#

## 金融产品 (DeFi)

[去中心化金融](https://iq.wiki/wiki/defi) (DeFi) 涵盖了利用智能合约复制传统金融产品（如货币市场、期权、[稳定币](https://iq.wiki/wiki/stablecoin)、交易所和资产管理）的应用。这些应用采用无需许可的组合性来结合各项服务，从而创造出新的金融原语。DeFi 中的智能合约可以安全地管理用户资金，将其进行托管，并根据预定条件在用户之间进行分配。例如，[BarnBridge](https://iq.wiki/wiki/barnbridge) 为寻求固定资产风险敞口的用户自动进行交易，而 [Aave](https://iq.wiki/wiki/aave) 则通过智能合约促进无需许可且去中心化的借贷业务。[\[1\]](#cite-id-3l63eaqe5x2)[\[3\]](#cite-id-m1k658u6xqh)

#

## 权益管理（代币）

代币智能合约用于在区块链网络上创建、跟踪并分配特定数字代币的所有权。代币合约将其发行的代币程序化，为持有者提供各种功能，例如 [dApp](https://iq.wiki/wiki/decentralized-application) 中的实用性/保险（[实用代币](https://iq.wiki/wiki/utility-token)）、协议中的投票权重（[治理代币](https://iq.wiki/wiki/governance-tokens)）、公司股权（证券代币）、对独特现实世界或数字资产的所有权声明（[非同质化代币](https://iq.wiki/wiki/non-fungible-token-nft)）等。例如，FIL 代币用于支付 [Filecoin](https://iq.wiki/wiki/filecoin) 的去中心化存储服务，而 [COMP](https://iq.wiki/wiki/comp) 代币则允许用户参与 [Compound 协议](https://iq.wiki/wiki/compound) 的治理。[\\[1\\]](#cite-id-3l63eaqe5x2)

#

## 游戏与NFT

基于[区块链](https://iq.wiki/wiki/blockchain)的游戏使用智能合约来确保游戏内操作的不可篡改执行。其中一个例子是 [PoolTogether](https://iq.wiki/wiki/pooltogether)，这是一款无损储蓄游戏，用户将其资金[质押](https://iq.wiki/wiki/staking)到一个共享池中，随后资金被转入货币市场赚取利息。在预定周期结束后，游戏结束，一名赢家将随机获得所有累计利息，而其他所有人都可以提取其原始存款。[\[1\]](#cite-id-3l63eaqe5x2)

同样，限量版 NFT 可以拥有公平的分配模型，角色扮演游戏（RPG）可以利用随机性支持不可预测的战利品掉落，从而确保所有用户都有公平的机会获得稀有数字资产。许多项目通过 [Chainlink](https://iq.wiki/wiki/chainlink) 可验证随机函数（VRF）获取随机性——这是一种使用密码学证明其不可篡改的随机数生成器（RNG），这意味着 RNG 过程是可公开审计的。[\[1\]](#cite-id-3l63eaqe5x2)

#

## 保险

参数化保险将赔付直接与预定义事件挂钩，利用智能合约根据数据输入进行防篡改的创建和执行。例如，作物保险可以通过智能合约实施，保单与季节性降雨等特定天气条件相关联。保单完成后，如果受信任的预言机数据确认满足预定义条件，智能合约将自动发放赔付。像 Arbol 这样的平台使用智能合约和预言机进行基于天气的参数化保险。这种模式确保了及时的赔付并减少了管理开销，同时通过智能合约向公众开放了保险的供应端，用户可以将资金存入[资金池](https://iq.wiki/wiki/liquidity-pool)以赚取保费。[\[1\]](#cite-id-3l63eaqe5x2)[\[2\]](#cite-id-5mlttgp8o8x)

## 投票与治理

智能合约可以通过将决策的规则和程序直接编码到合约代码中，应用于[DAO](https://iq.wiki/wiki/dao)（去中心化自治组织）的投票和治理。DAO 的参与者随后可以与智能合约交互，进行投票、提议更改或参与治理决策。这确保了投票过程的透明性、不可篡改性和防篡改执行，增强了 DAO 治理的民主和去中心化特性。智能合约可以自动统计选票、执行投票规则，并根据预定义条件执行决策，为管理 DAO 事务提供了一种高效且无需信任的机制。[\[5\]](#cite-id-b8zcecqmro)

#

## 区块链众筹

智能合约可应用于[区块链](https://iq.wiki/wiki/blockchain)众筹，通过自动化筹款流程并确保捐款处理的透明与安全。通过在智能合约中编码的一套预定义规则，参与者可以向众筹活动发送捐款。随后，智能合约会根据特定条件（如达到筹款目标或预定时间表）自动管理资金的释放。由于合约的执行在区块链上是可验证的，这消除了对中间机构的需求，并增强了参与者之间的信任。此外，智能合约还可以根据合约内设定的条款，促进向贡献者分发代币或奖励。[\[5\]](#cite-id-b8zcecqmro)

#

## 其他行业

智能合约的潜在应用延伸至众多其他领域，包括用于在交货时自动支付的供应链管理、房地产交易、股票和大宗商品交易，以及用于在征得患者同意的情况下管理敏感数据的医疗保健。 [\[2\]](#cite-id-5mlttgp8o8x)
