智能合约
智能合约(英语:Smart contract)是一种智能协议,在区块链内制定合约时使用,当中内含了程式码函式 (Function),亦能与其他合约进行互动、做决策、储存资料及传送以太币等功能。智能合约主力提供验证及执行合约内所订立的条件。[1]智能合约允许在没有第三方的情况下进行可信交易。这些交易可追踪且不可逆转。[2]智能合约概念于1994年由一名身兼电脑科学家及密码学专家的学者尼克·萨博首次提出。[3][4]
智能合同的目的是提供优于传统合同方法的安全,并减少与合同相关的其他交易成本。
安全问题
智能合约是“执行合约条款的计算机交易协议”。[5] 区块链上的所有用户都可以看到基于区块链的智能合约。但是,这会导致包括安全漏洞在内的所有漏洞都可见,并且可能无法迅速修复。[6]
这样的攻击难以迅速解决,例如,2016年6月The DAOEther的漏洞造成损失5000万美元,而开发者试图达成共识的解决方案。[7] DAO的程序在黑客删除资金之前有一段时间的延迟。以太坊软件的一个硬分叉在时限到期之前完成了攻击者的资金回收工作。[8]
以太坊智能合约中的问题包括合约编程Solidity、编译器错误、以太坊虚拟机错误、对区块链网络的攻击、程序错误的不变性以及其他尚无文档记录的攻击。[9]
2018年4月22日, BeautyChain智能合约出现重大漏洞,黑客通过此漏洞无限生成代币,导致 BitEclipse (BEC)的价值接近归零。[10][11] 同月25日,SmartMesh出现疑似重大安全漏洞,宣布暂停所有SMT交易和转账直至另行通知,导致损失约1.4亿美金。[12] 28日,EOS被指可能存在BEC代币合约类似的整数溢出漏洞,但没消息详细说明。5月24日, BAI交易存在大量异常问题, 损失金额未知。 [13] 8月22日, GODGAME 合约被黑客入侵,GOD智能合约上的以太坊总数归零。[14]
案例
部署智能合约的案例有:
- 以太坊在其区块链上运行了一种近乎图灵完备的语言,这是一个突出的智能合约框架。[9][15]
- RootStock (RSK) 是一个智能合约平台,通过侧链技术连接到比特币区块链。 RSK兼容为以太坊创造的智能合约。[16][17][18][19][20][21]
- EOS (页面存档备份,存于互联网档案馆)的EOS.IO合约(也称为应用程序)作为预编译的Web Assembly (页面存档备份,存于互联网档案馆)(又名WASM)部署到区块链中。
- 智能法律合约语言[22]于2018年出现,中国电子学会 (页面存档备份,存于互联网档案馆)于2020年12月正式确立相关技术标准[23]。
流行文化
卡尔·施罗德的2002年小说《续航力》提出了一种“权利经济”,其中所有的物理对象都有合同要求的纳米标记,这样就可以对专有信息的所有用途实施付款,例如,深空军事任务必须不断证明每艘船舶的效益比率否则将停止工作。
参考资料
- ^ Schueffel, Patrick; Groeneweg, Nikolaj; Baldegger, Rico. The Crypto Encyclopedia: Coins, Tokens and Digital Assets from A to Z. Bern, 瑞士: Growth Publisher. 2019 [2020-02-18]. (原始内容存档于2020-05-29).
- ^ Smart Contracts, Explained. Cointelegraph. 2017-10-31 [2018-01-21]. (原始内容存档于2018-01-21).
- ^ 陈 恭. 智能合約的發展與應用 (PDF). [2019-02-20]. (原始内容存档 (PDF)于2019-02-20).
- ^ Nick Szabo -- Smart Contracts: Building Blocks for Digital Markets. www.fon.hum.uva.nl. [2017-07-29]. (原始内容存档于2018-04-27).
- ^ Tapscott, Don; Tapscott, Alex. The Blockchain Revolution: How the Technology Behind Bitcoin is Changing Money, Business, and the World. May 2016: 72, 83, 101, 127. ISBN 978-0670069972.
- ^ Peck, M. Ethereum’s $150-Million Blockchain-Powered Fund Opens Just as Researchers Call For a Halt. IEEE Spectrum. Institute of Electrical and Electronics Engineers. 2016-05-28 [2018-01-21]. (原始内容存档于2016-05-30).
- ^ DuPont, Quinn. Experiments in Algorithmic Governance: A history and ethnography of “The DAO,” a failed Decentralized Autonomous Organization (PDF). 2017 [2017-07-29]. (原始内容 (PDF)存档于2017-07-30).
- ^ Coy, Peter; Kharif, Olga. This Is Your Company on Blockchain. Bloomberg Businessweek. 2016-08-25 [2016-12-05]. (原始内容存档于2016-09-14).
- ^ 9.0 9.1 Atzei, Nicola; Bartoletti, Massimo; Cimoli, Tiziana, A survey of attacks on Ethereum smart contracts (PDF), 6th International Conference on Principles of Security and Trust (POST), European Joint Conferences on Theory and Practice of Software, 2017 [2018-01-21], (原始内容存档 (PDF)于2017-07-10)
- ^ Yuan, Michael. Building a safer crypto token. CyberMiles. 2018-04-25 [2019-02-11]. (原始内容存档于2019-01-25).
- ^ De, Nikhilesh. Crypto Exchanges Pause Services Over Contract Bugs. CoinDesk. 2018-04-25 [2019-02-11]. (原始内容存档于2019-01-25) (美国英语).
- ^ SMT Security Update. SmartMesh. 2018-04-26 [2019-02-11]. (原始内容存档于2019-01-25) (美国英语).
- ^ Abnormal BAI Trading Activities(2018-05-24 ). KKcoin. [2019-02-13]. (原始内容存档于2019-02-13) (美国英语).
- ^ 游戏平台God.Game称遭黑客攻击,智能合约中以太坊总量归零. bcsec.org. [2019-02-19]. (原始内容存档于2019-02-19).
- ^ Vitalik Buterin on Tweeter (verified). 2017-04-18. (原始内容存档于2017-12-11).
- ^ RSK – Rootstock Open-Source Smart Contract Bitcoin Technology?. [2018-01-21]. (原始内容存档于2017-10-19).
- ^ Digrate Express rating report on Project Rootstock (PDF). [2018-01-21]. (原始内容 (PDF)存档于2017-10-20).
- ^ Thomas Bocek. Digital Marketplaces Unleashed. Springer-Verlag GmbH. 2017-09-15: 169-184 [2018-01-21]. ISBN 978-3-662-49274-1. (原始内容存档于2017-10-20).
- ^ A Solution for the Problems of Translation and Transparency in Smart Contracts (PDF). [2018-01-21]. (原始内容存档 (PDF)于2017-10-20).
- ^ Trust in Smart Contracts is a Process, As Well (PDF). [2018-01-21]. (原始内容存档 (PDF)于2018-04-03).
- ^ Scripting smart contracts for distributed ledger technology (PDF). [2018-01-21]. (原始内容存档 (PDF)于2017-10-20).
- ^ He X, Qin B, Zhu Y; et al. Spesc: A specification language for smart contracts. 2018 IEEE 42nd Annual computer software and applications conference (COMPSAC). IEEE, 2018, 1: 132-137.
- ^ Chinese Institute of Electronics, Formal Expression of Blockchain Smart Contract, group standard. Formal Expression of Blockchain Smart Contract (PDF) T/CIE 095-2020.[失效链接]