只要看过一些加密货币相关领域的文章,一定常常看到一个词:智能合约(Smart Contract)。智能合约是什么意思?英文直译是聪明的合约,是这样吗?
智能合约:由程序自动执行的合约
不需要经过人,合约条件被制定之后,由程序自动判定是否符合条件?一旦条件符合由程序自动执行。
举例来说:
2.当我们到无人化管理采用车牌扫描的停车场停车,要离开的时候,系统扫描车牌,侦测到我们共有多少停车费要缴,是否已经完成缴交?判定已完成就打开闸门让我们出去,判定尚未缴费就不打开闸门,并在显示器上显示缴费提醒。
当我们在一台自动贩卖机买饮料,投进50 元硬币,选择了30 元的饮料,系统自动判定我们付的款大于我们选择的饮料价格,于是放行让饮料被投下来,同时找钱给我们。
或是当我们到无人化管理采用车牌扫描的停车场停车,要离开的时候,系统扫描车牌,侦测到我们共有多少停车费要缴,是否已经完成缴交?判定已完成就打开闸门让我们出去,判定尚未缴费就不打开闸门,并在显示器上显示缴费提醒。
这两个案例比较简单,实际上会使用智能合约的情况更复杂,牵涉到更复杂的条件认定和资源调用,但基本概念就是:人只需要制定合约条件,以及把这些条件写好程序并布置在系统环境里,接着由系统自动执行。
智能合约有什么用?可以用在哪些地方?
任何需要判定、验证、执行的事,如果不想用人力来做,都可能是智能合约可以派上用场的时候。
举几个生活中会遇到的情况为例:
保险理赔
购买保险时,保险条款中会注明理赔条件和理赔金额,现阶段的理赔基本上是由人力操作,理赔事件发生时由当事人准备相关证明,向保险公司申请理赔,保险公司审核是否符合条件,然后拨款理赔。
理赔是需要判定、验证、执行的事情,如果有智能合约,当我们在医院被诊断出某些疾病,或是警察局已经建立车祸报案,不须当事人申请理赔,条件一成立就触发合约,自动判定并验证与执行,理赔金额自动汇款到当事人帐户。
银行贷款
向银行申请贷款时,银行会审核我们的条件,判定我们的资格,验证我们的资料,依据条件决定贷款额度和还款条件,现阶段也是多由人力操作。
这也是需要判定、验证、执行的事情,假设由智能合约来操作,系统根据我们提供的相关资料,自动判定可以提供的贷款额度和条件,接着当我们完成抵押设定,自动验证相关资料,通过后自动执行贷款拨款,中间可以省下大量人力与人为失误可能。
NFT 智能合约铸造
币圈在前一两年最火红的议题之一就是NFT,先不讨论NFT 到底是什么又为什么红,简单描述NFT 铸造为什么会需要智能合约。
热门项目发行的NFT 非常抢手,完全供不应求,于是项目方通常会设定一些条件,符合条件的才有铸造NFT 的资格,通常是用所谓白名单的方式,符合条件就可以被加入白名单,名单中的钱包地址才可以铸造NFT。
又是一个需要判定、验证、执行的情况,判定你是否在白名单上?你的钱包中是否有足够铸造NFT 的费用?都符合才执行。
为什么智能合约跟区块链有关?
智能合约的概念很早以前就有人提出,大约在90 年代由Nick Szabo 所提出,只是当时的环境条件还做不到,直到比特币诞生,区块链的概念出现。
如果只是非常简单的任务,例如前述的自动贩卖机出饮料及找钱或停车场开关闸门,这不会有太多问题。但如果是更复杂的合约,牵涉到更多方,需要验证多方资讯,调动多种资源的时候,要让程序自动执行就会有个大问题,就是谁也不信任谁。
保险公司不信任申请人提供的资料,于是需要人工审核,银行不信任申请人提供的证明,于是需要人工审核。不同组织之间彼此不一定信任彼此提供的资料或讯息,就需要花费大量时间审核。
信任是个大问题,要让程序自动执行合约并不难,难的是如何在不信任彼此的情况下让程序自动执行?
这就是「去信任化」的问题。如何让参与的各方相互之间不需要信任依然可以运作?
区块链的三大特性:去中心化、公开透明、不可窜改,一个运作良好的区块链,本身就可以提供信任,当信任由区块链本身提供,就能做到去信任化,这也是区块链技术的重大价值所在。不需要信任彼此,信任这条链的运作机制即可。
虽然说比特币是第一条成功的区块链网路,但当时的比特币区块链还不具备执行智能合约的条件,直到以太坊出现。
第一条可以运行智能合约的区块链:以太坊Ethereum
比特币网路的设计,主要是为了记帐,记比特币的帐。以太坊则不一样,它一开始就是为了让人在上面运作智能合约而设计的区块链。
突然间真的可以运行智能合约了,人们开始摸索这到底可以拿来干嘛用,而后第一个火爆应用出现,也孕育了2017 那年的币圈大牛市,这个火爆的智能合约应用就是ICO。
虽然许多当时的知名项目如今已经殒落,但这确实开启了加密货币领域野蛮生长的时代。像以太坊这种主要用来运作智能合约的区块链,人们称它为平台公链,也有人直接简称公链,这类平台公链后来愈来愈多,百花齐放,不只有跟以太坊一样的Layer 1 公链,也有后来因应扩容需求而生的Layer 2 公链。
先不用搞懂差异也没关系,先知道平台公链指的就是设计来运作智能合约的区块链就好。有如此多的公链蓬勃发展,也意味着人们对于智能合约的需求庞大。
智能合约的优缺点
透过区块链的技术,来做到去信任化,让智能合约得以顺利运行,这样的智能合约有什么优缺点呢?
优点简单讲三个:安全、高效、可客制化
区块链是去中心化运作的一种网路,运作良好的区块链本身安全性就很高,又透过程序自动执行减少人力消耗,合约执行效率也很高,同时智能合约就是由程序代码构成,可以完全依据需求客制化设计与修改。
缺点也很明显:门槛较高、不能逆转
也因为区块链是去中心化的运作,跟中心化方式相比,有时候的进入门槛更高,维护成本也更高,要准备的资源更多,跟直接用人力执行相比,需要有人去写出对应的程序代码,整体的门槛较高。
虽然智能合约的程序可以客制化修改,但那毕竟是针对未来,针对已经发生的事情,程序怎么写就是怎么做,这是不可逆的。不能在事后讲人情、套关系,没有事后修改的弹性。
尽管智能合约似乎很智能,但确实不是所有事情都适合透过智能合约来处理。
智能合约诈骗
如今,智能合约通常是指运作在区块链上的一套程序或应用,也因为币圈还在一个
相对早期的阶段,整体环境还在发展中,相关的规范也还不够成熟,这领域充斥着大量诈骗。
诈骗你的不是智能合约,而是背后那个写出智能合约的人。
目前常见的几种诈骗方式,基本上可以统整为一种:假的!
用假的网站、客服、服务骗你,骗你的帐号密码,骗你的私钥或助记词,跟智能合约相关的诈骗方式,就是骗你的合约授权。
当我们使用例如钱包等工具,在区块链上做相关操作时,需要授权智能合约去操作你钱包中的资产。诈骗方式就是利用假的网站,或是假的币,让你误以为那是真的,然后授权对方的合约去操作你钱包中的加密货币。
针对这种诈骗的破解方式,就是务必小心确认是否来到真的网站,授权合约时仔细检查授权内容是否有问题,遇到任何新项目,多利用coinmarketcap或是coingecko网站反覆确认真伪。
或另外一种情况是,它本来是真的,但后来被骇了变成假的。假设我们过去曾经授权过这个智能合约,因为现在它已被恶意的人给掌握,就可能会造成资产损失。
针对这种情况的破解方式,则是记得要去移除授权,把过去曾经给过这个智能合约的授权给移除,对方就没有办法动用你钱包中的资产了。
最后总结:所以智能合约到底是什么?有什么用?
记得这几句话就好:
而对于币圈中的你来说,切记要小心诈骗,不要授权给错误的智能合约去操作你钱包中的资产喔~
原创文章,作者:惊蛰财经,如若转载,请注明出处:http://www.xmlm.net/jibi/31610.html