你好,欢迎收听由刺猬财经推出的《区块链通识课50问》。
几年前,阿尔法狗先后击败了李世石和柯洁,一下子就让大家记住了人工智能的名字。在人工智能的加持下,不仅可以用脸解锁手机,手机上的程序还能猜测我们的喜好,推荐想买的东西、想看的视频和想读的文章。好像人工智能比自己更了解自己。
世界好像已经被智能产品占满了。智能电视、智能冰箱、智能洗衣机,就连电饭煲也有智能的。
在区块链中,也有一个东西带有“智能”,这就是智能合约。
相信大家对合同都不陌生,因为生活和工作中是不能没有合同的。租房买房要有合同、参加工作要签劳动合同、网购商品的三包协议也是合同。合同的本质,是签署双方事先制定了一套规则,当达成了某个条件,就必须履行合同。
合约跟合同二者有什么区别呢?在中文的语义中,合约强调的是合同的内容,合同则是合约的一层包装。但是如果不做深究的话,这两者其实是一样的。
其实智能合约的概念比区块链出现早得多。在人工智能的发展史上,出现过三次热潮和两次低谷,就在第二次热潮期间,计算机学者、同时也是位密码学家尼克·萨博,在1993年首次提了出来,他在1994年完成了《智能合约》这一论文,首次完整地阐述了什么是智能合约——智能合约是一套以数字形式定义的承诺 ,包括合约参与方可以在上面执行这些承诺的协议。简单来说,智能合约通过尼克萨博口中的“承诺”和“执行”,规定了合约的权利和义务,想要获得权利,就必须付出相应的义务。
在比特币还没有产生的90年代,尼克·萨博产生这样的想法是非常超前的。据他自己讲,是自动售货机给了他灵感。只要售货机检测到了给的钱足够,就会把顾客想要的商品吐出来。尼克·萨博认为,要是在计算机世界中,能够推广智能合约,可以极大方便人们的生活。但是超前的理念没有技术实力做后盾,智能合约始终没有成功。尼克·萨博后来还开发了一款名为“比特黄金”的数字货币,同样也没有成功。
因为比特币的区块链系统,还处于区块链的早期,直到以太坊的出现,在区块链上才可以执行更为复杂的功能。二十年之后,尼克·萨博的智能合约终于因为区块链,才焕发出了真正的价值。这是为什么呢?
解答这个问题之前,我们先来看看传统的合约有什么问题?
三国演义的故事家喻户晓,其中一个著名的桥段是火烧赤壁。赤壁之战最终导致魏蜀吴三分天下,如果曹操取得了胜利,那么整个天下都会属于曹操了。孙刘联军之所以能取胜,在于北方士兵不善水战,船只都用铁索连了起来,才让大火可以一股脑击溃了曹操的八十三万兵马。放火的人,是吴军的老将黄盖。老戏骨黄盖还和周瑜唱了一出“一个愿打一个愿挨”的苦肉计,然后黄盖派亲信向曹操送去了一封诈降信。黄盖在信上不但将曹操奉承了一番,还说愿意带上粮草和士兵,随船队归降于曹丞相。吴军中的间隙向曹操密报了黄盖被打却有其事,曹操深信不疑。
但是没想到,就在黄盖归降的当晚,黄盖不但没有带上粮草和士兵,却在船上装满了引火之物。
曹操叫苦不迭,也顾不上派人捉拿黄盖了,只带了数十人逃往了北方。
三国中的真归降也不在少数,比如太史慈归降小霸王孙策,张辽归降曹操,马超归降刘备。这些真真假假的归降有的是口头的盟约,有的是书面的信件,这些盟约和信件将归降变成了一场赌局,弄的双方都心惊胆战。
这就是传统合约的罪过了。
传统合约的风险太高,在战争时期要冒生命危险,在和平时期要冒商业风险。一纸合约总是让人提心吊胆。如果一方反悔,单方面撕毁了条约,事先又没定好惩罚措施,另一方只能吃哑巴亏。
口头的约定因为没有白纸黑字做凭证,当事人如果抵赖,不承认做过约定,那就麻烦了。比如借给了朋友钱,对方就是不承认借过,到最后不仅钱没了,朋友也没了。或者,还钱的日子总是一拖再拖,也很让人无奈。
所以传统合约想要真的有效,往往需要担保人。派往吴军大营的密探给曹操做了担保,所以曹操才会相信黄盖。
但是如果将合约和区块链结合起来,就可以成为智能合约。智能合约和传统合约相比,因为有了区块链的去中心化和不可篡改特性的帮助,传统合约才真正变成了智能合约。
合约一旦在区块链上成功部署,就无法被任何人篡改,因为这份合约已经通过区块链网络,复制到了网络中每个人的账本上。如果有人抵赖的话,不需要第三方担保人,因为每个人手持账本的人都是担保人:账本上明明是这么写的,怎么赖得掉呢?
赖账的人可以掌握区块链网络中的多数算力,才能修改合约内容。但是要掌握多数算力的条件,必须付出巨大的财力和人力,得不偿失。这样就能保证智能合约无人可以修改了。
计算机领域有句著名的格言——代码即法律。这是因为代码是公正客观的,代码如果写错了,无论是任何人,也不能得到正确的结果。在计算机的世界里,代码就如同现实生活中的法律条文一样,不仅严格规范了流程,还会按照流程严格执行。
区块链上的智能合约所拥有的效力,就跟法律条款差不多。并且因为不要第三方机构担保,成本更低,效率更高。可以应用的场合比传统合约更多。就比如在国际贸易上,中国每次购买空客或波音的飞机,金额都是几百亿美元起步。这种级别的贸易,就连跨国银行也没有能力做担保了,只有靠国家承担信用了。成本不仅非常高,而且流程长手续复杂。智能合约的出现,使得区块链上的每个机构都能互相担保,就解决了这种很难找到第三方作保的问题。
但是,因为智能合约和区块链的结合并不是万能的,因为合约的程序毕竟是由人来写的,而人是不可能杜绝犯错误的。
我们在上一讲中提到过公有链中的以太坊,智能合约就曾给以太坊带来过大麻烦,以太坊不得不以硬分叉的方式解决问题,这是后话,后面会专门介绍。下一讲,我们先来介绍以太坊,大家再见。
本文来自,仅作分享,存在异议请联系平台删除。本文观点不代表刺猬财经 - 刺猬区块链资讯站立场。