智能合约 () 是一种计算机程序或交易协议,旨在根据合同或协议的条款自动执行、控制或记录事件与行动。 智能合约的目标是减少对可信中介的需求、降低仲裁成本和欺诈损失,并减少恶意与意外例外情况。
维塔利克·布特林在2014年发布的原始以太坊白皮书 中将比特币协议描述为尼克·萨博最初定义的智能合约概念的弱化版本,并提出基于Solidity语言的强化版本,该语言是图灵完备的。此后,多种加密货币支持允许在非信任方之间进行更高级智能合约的编程语言。
智能合约不应与智能法律合同混淆,后者指传统的、自然语言的、具有法律约束力的协议,其部分条款以机器可读代码形式表达与实现。 1998年,该术语被用于描述斯坦福信息总线系统(斯坦福数字图书馆项目组成部分)的权利管理服务层中的对象。
智能合约并非法律协议,而是由计算机程序或事务协议自动执行的交易,例如自动化支付义务的技术手段(如转移加密货币或其他代币)。有学者认为编程语言的命令式或声明式特性会影响智能合约的法律有效性。
在某些司法管辖区,法律学者研究了智能合约的硬性与传统原则(如合同不可预见性)的互动。例如,哥伦比亚法律学界提出将情势变更理论(teoría de la imprevisión)应用于智能合约,以解决通过司法干预逆转智能合约效果的高经济与系统性成本,强调需内化这些成本并为数字环境开发新的程序机制。
自2015年以太坊区块链推出以来,“智能合约”一词已应用于区块链上的通用计算。美国国家标准与技术研究院将“智能合约”描述为“在区块链网络上使用加密签名交易部署的代码和数据集合(有时称为函数和状态)”。 在此解释下,智能合约是使用区块链的任何类型的计算机程序。智能合约也可视为安全的存储过程,因为其执行和编码效果(如双方间的代币转移)无法在不修改区块链本身的情况下被操纵。在此解释中,合约执行由平台控制与审计,而非通过连接平台的任意服务器端程序。
2018年,美国参议院报告指出:“智能合约听起来新颖,但其概念植根于基础合同法。通常,司法系统裁决合同纠纷并执行条款,但采用其他仲裁方式也很常见,尤其在国际交易中。对于智能合约,程序执行编码中内置的合同。” 美国已-{zh-cn:通过;zh-tw:通過}-智能合约使用立法的州包括亚利桑那州、爱荷华州、内华达州、田纳西州和怀俄明州。
2021年4月,英国司法管辖区工作组(UKJT)发布了《数字争议解决规则》(Digital DR Rules),旨在快速解决英国的区块链和加密法律纠纷。
工作原理
与区块链上的价值转移类似,智能合约在区块链上的部署通过从区块链钱包发送交易完成。 该交易包含智能合约的编译代码以及特殊接收地址。 区块链上的智能合约可存储任意状态并执行任意计算。终端客户端通过交易与智能合约交互。此类交易可调用其他智能合约,可能导致状态变更以及将代币从一个智能合约转移到另一个合约或从一个账户转移到另一个账户。 在以太坊上,智能合约通常用名为Solidity的图灵完备编程语言编写,并编译为低级字节码由以太坊虚拟机执行。 由于停机问题及其他安全问题,图灵完备性被视为风险,Vyper等语言刻意避免此特性。 其他缺失图灵完备性的智能合约编程语言包括Simplicity、Scilla、Ivy和Bitcoin Script。
部分语言设计用于支持形式化验证:Bamboo、IELE、Simplicity、Michelson(可通过Coq验证)
|-
| 比特币 || 提供图灵不完备的脚本语言,支持在比特币上创建自定义智能合约,如多签账户、支付通道、托管、时间锁、原子跨链交易、预言机或无运营方的多方彩票。
|-
| 卡尔达诺|| 支持智能合约的区块链平台
|-
| || 支持智能合约的区块链平台
|-
| 波场币 || 支持智能合约的区块链平台
|-
| Tezos|| 支持智能合约的区块链平台
|}
区块链上的进程通常是确定性的,以确保拜占庭容错。 尽管如此,智能合约的现实应用(如博彩和赌场)需要安全随机性。 事实上,区块链技术降低了彩票运营成本,因此对参与者有益。区块链随机性可通过使用区块哈希或时间戳、预言机、承诺方案、RANDAO和Quanta等特殊智能合约,以及混合策略纳什均衡序列实现。 Askemos于200年实现了此方法,最初使用Scheme(后添加SQLite)作为合约脚本语言。
一项利用比特币进行复制资产登记和合约执行的提案称为“染色币”。 不同项目中实现了潜在任意形式财产的复制产权以及复制合约执行。
,UBS正在试验使用比特币区块链的“智能债券”,其中支付流可完全自动化,创建自支付工具。
继承意愿可在死亡证明登记后通过智能合约自动执行。 出生证明也可与智能合约协同工作。
Inc.com的Chris Snook提出,智能合约也可用于处理房地产交易,并应用于产权记录和公共登记领域。
Seth Oranburg和Liya Palagashvili认为智能合约也可用于雇佣合同,特别是临时雇佣合同,他们认为这将使雇主受益。
安全问题
基于区块链的智能合约交易数据对区块链所有用户可见。数据提供交易的加密视图,但这导致漏洞(包括安全漏洞)对所有用户可见却可能无法快速修复。 此类攻击难以快速修复,2016年6月成功针对The DAO执行,当时耗资约万以太币,而开发人员试图达成共识解决方案。 DAO程序设置了黑客可提取资金前的时延;在时限到期前,通过以太坊软件的硬分叉从攻击者处追回资金。 其他高调攻击包括Parity多签钱包攻击和整数下溢/溢出攻击(2018年),总额超过亿。
以太坊智能合约的问题尤其包括其合约语言Solidity中的歧义性及易用但不安全的构造、编译器错误、以太坊虚拟机错误、对区块链网络的攻击、漏洞的不可变性以及缺乏记录已知漏洞、攻击和有问题的构造的中央来源。
法律行业对智能法律合同尚无正式定义。
李嘉图合约是智能法律合同的一种类型。
参见
- 代码及其他网络空间法律
- 去中心化应用
- 以太坊
- 算法监管
- 算法监管
- 李嘉图合约(一种捕获协议各方意图的设计模式)
- 贷款
- 安全多方计算
- 透明度
参考文献
评论 (0)