以太坊智能合约的运作原理——零基础了解以太坊(九)
第0章 引言
有很多人说以太坊智能合约是区块链技术的未来。今天,我们接着了解什么是智能合约,以及智能合约的运作原理是什么。
第1章 什么是智能合约
像区块链行业很多观点一样,“智能合约”通常是令人混淆的。
区块链衍生新技术智能合约,从字面意思上理解可能会让人产生困惑。
标准的合同描述的是关系条款(通常由法律强制实施),而智能合约是用代码实施。
换句话说,智能合约是完全按照制定者的设置执行的程序。
这个想法在1993年首次提出,一位计算机学家兼加密学家Nick Szabo把它成为是一种数字自动贩售机。他有一个很著名的例子,用户输入数据或值,就可以从机器里拿到某样东西,在这个例子里,就是真实的小吃或软饮。
简单举个例子,以太坊用户通过智能合约可以在特定时间给一位小伙伴发送10个ETH。
在这个例子里,用户创建一个合约,并把数据放到合约里,这样合约就会按照指令执行。
以太坊是一个专门为智能合约搭建的平台。
但是,这些新工具并不是独立使用的。它们还可以构建“去中心化应用”甚至是完全去中心化自治公司。
智能合约如何运作
需要指出,比特币是首个支持基本的智能合约的,网络可以把价值从一个人转移到另外一个人。网络节点只会验证交易是否满足特定的条件。
但是比特币仅限于作为货币。
相比之下,以太坊用一种可以让开发者自己编写程序的语言取代了比特币限制性更强的语言(一种大约只有一百多个脚本的脚本语言)。
以太坊让开发者可以自己编译智能合约或是“自治代理”。这种语言是“图灵完备”的,这意味着它支持范围更广泛的计算指令集。
智能合约可以:
使用“多重签名”账户,只有一定比例的人同意才能动用资金。
管理用户之间的协议,例如一个人向另外一个人购买保险。
为其他合约提供实用程序(类似于软件库的运作方式)
存储关于某个应用的信息,例如域名注册信息或会员记录。
数量大是力量
从最后一点推断,智能合约很有可能需要其他智能合约辅助。
当有人在炎热的夏日对温度下了一个简单的赌注,就可能会触发底层的一系列合约。
合约可以使用外部数据确定天气,另外一个合约可以根据第一个合约接受到的信息在条件满足的时候结算投注。
运行每个合约都需要交易手续费,而费用多少取决于所需的计算能力。
正如我们在《以太坊是如何运作》里解释的,当用户或其他合约向其发送信息和足够的手续费时,以太坊就会运行智能合约。
接着以太坊虚拟机会执行编译成网络可以读取的“字节码”的智能合约。
作者:Alyssa Hertig
图片来源:Maria Kuznetsov
原文链接:https://www.coindesk.com/information/ethereum-smart-contracts-work
第2章 结束语
只要一个一个概念搭建,就能建立起对以太坊系统的全面认识。
翻译:黄世亮
欢迎关注微信公众号:闪电HSL