网赚论坛

 找回密码
 免费注册
查看: 263|回复: 0
打印 上一主题 下一主题

【一期二团Day-4申龙斌】举例说明智能合约

[复制链接]

25

主题

44

帖子

100

积分

Ⅰ级财主

Rank: 1

积分
100
跳转到指定楼层
楼主
发表于 2017-10-21 13:56:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
智能合约这个概念早在1993年就提出来了,可惜由于那时的互联网和技术水平,无法落地。合约(Contract)这个词比较好理解,可以理解为合同,利益双方签订的协议。“智能”这个词就用得太滥了,智能电视、智能手机、智能油田等等,都没有统一的定义,好像是“先进”的代名词。把“智能”两个字用在“合约”上,可以简单地理解为让合同能够自动执行。


先举个例子:假设李笑来与罗振宇打赌,在2017年9月份的BTC价格一定会超过4万,如果没过4万,笑来给罗胖100BTC;如果超过4万,罗胖给笑来100BTC(据说罗胖在2016年买了100BTC给女儿当嫁妆)。注意这只是我编的一个小故事,为了加深对智能合约的理解,最近BTC行情太火,我写这一段的时候,1BTC价格已经超过3万,回落为2.9万元。


这件事很简单,用传统的手段,双方需要签一份书面合同,一式两份,签字后各自收好。如果只是口头协议,则需要找个第三方当见证人,因为增加了中间环节,还需要修改合同,从赌注里拿出1个BTC给公证人。到了9月30日24:00,大家聚在一起,查一下BTC的实时行情后立马见分晓,输家马上转帐,合同执行完毕。


现实世界里,这只是一个小合同,真正的合同涉及订立、履行、变更、终止等多个步骤,如果引入第三方,还有审查、监督等事务。假设云币网价格过4万,而OKcoin不到4万,又产生了新的分歧;假设一方拒不付钱呢?假设大家把钱都押在第三方,第三方跑路了呢?类似的细节非常非常多。


而把上面的例子放在区块链世界里,就好办了。把上面的合约写成一段程序代码,放在区块链里,双方进行数字签名,各把100BTC锁定在区块链上,合约开始生效。9月30日24:00,程序自动抓取行情数据,超过4万,罗胖的100BTC立刻转到笑来的比特币地址中,反之亦然。整个过程不需要第三方,那段程序可以算做第三方。


从这个例子中,可以看出,智能合约相当于把合同编写成了程序代码,签订后由于区块链的数字签名、不可篡改性等特点,谁也不能抵赖,并且自动根据双方的履行情况强制执行。


人们普遍认为比特币算是区块链1.0,智能合约则是区块链2.0时代。1.0时代解决了不信任去中心化网络中的价值可信传递,2.0则让双方(或多方)的价值转移完全程序化、自动化了。


区块链的出现让1993年提出的智能合约概念落地,比特币系统内部是用程序代码来锁定、解锁BTC的,只不过功能太弱。这种语言是非图灵完备的、基于逆波兰表示法的、堆栈式的命令型语言,没学过编程的请忽略上面这一句看似外星人的语言吧,学过编程的则可以好好读读《精通比特币》里第5章中对于该脚本语言的介绍。


而以太坊则是第一个可以运行智能合约的区块链平台,你设立一堆规则(表现为一组IF...THEN...的程序代码)就可以发行一种代币(Token),发行ICO的门槛变得相当低。智能合约的签订、执行都要消耗数字货币(Coin),想活在未来,是不是需要持有一些筹码?难怪最近的ICO火得一塌糊涂。

----------
关注微信公众号:申龙斌的程序人生
开始区块链生存训练
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

广告合作|Archiver|手机版|小黑屋|财富吧

GMT+8, 2026-7-22 21:14 , Processed in 0.358801 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.1

© 2014-2021 财富吧

快速回复 返回顶部 返回列表