完全理解以太坊ETH(二)——智能合约

in #cn7 years ago (edited)

Crazy Social Engineer. Cypherpunk Follower in China. 丧心病狂的社会攻城狮,加密朋克追随者。Weibo.com@Warrior比特币玩家,twitter『Bitcoin Warrior!』。

以太坊是一个可编程的区块链平台。与比特币一样,以太坊基于分布式计算机组成的点对点网络协议,但以太坊并没有为用户提供任何预设的功能(如交易),而是让用户在其基础上自行开发功能。开发好的代码储存在区块上并提供给所有人使用,这就是“智能合约”。

比特币网络中有大量计算机节点负责维护和更新区块链,在以太坊中也存在类似的节点,它们被统称为EVM(以太坊虚拟机)。可以把EVM看作一台超级计算机,拥有网络中所有节点的计算能力,该计算能力用于在区块链上运行智能合约。跟比特币中的矿工费类似,EVM向用户收取一些以太坊代币作为回报,以奖励为智能合约提供计算能力的节点,这个费用被称为“gas”。所以以太坊代币的核心意义不是作为一般等价物的货币,而是如同石油一样驱动以太坊网络的动力。
以太坊概念图

智能合约

智能合约的想法最初是由尼克·萨博在1994年提出的,他认为代码完全能够控制一系列的逻辑关系、参数以及关联的行动。在以太坊中,智能合约由专用的Solidity语言编写,然后上传到区块并永久存在。因为区块链数据是安全不可变的,所以人们可以确信以太坊上的智能合约如预期般执行,代码的强制执行性使得赖账和毁约不可能发生。

V神(Vitalik Buterin)在以太坊白皮书中对智能合约的描述为:

“智能合约不应被视为应履行或遵守的义务,它们更像是居住在EVM中的机器人,当收到外部条件(消息或交易)时就自动执行特定的代码并修改相关地址的余额或其它信息。”
智能合约可用于各种不同的交易,尤其适合双方义务容易量化的简单交易,比如金融产品(衍生产品,期货、期权等)、小额支付、物联网数据交换,或者按时间计费的内容付费业务。

以抗旱保险作为智能合约的一个具体例子:

  • 如果,来自KNMI(荷兰皇家气象研究所)的传感器表明,过去3个月内的降雨量不到6毫米,而且;
  • 如果,农民一直如期缴纳保险费;
  • 那么,将一定金额的钱作为保险费发给农民。
    抗旱保险
    在这个例子中,KNMI传感器的信息作为外部条件来决定保险是否赔偿。这种外部条件可以来自传感器,也可以来自区块链上的数据(比如交易记录),但是都有一个特征——它们是任何人都可获取的公开事件。这意味着每个人都可以验证这个保险是否如约执行,没人能做小动作,智能合约的强大之处就在于此。

​(未完待续)

本文由币乎社区(bihu.com)内容支持计划赞助

Coin Marketplace

STEEM 0.26
TRX 0.20
JST 0.038
BTC 96240.27
ETH 3591.45
USDT 1.00
SBD 3.91