什么是智能合约?有什么用?有什么优缺点?

只要看过一些加密货币相关领域的文章,一定常常看到一个词:智能合约(Smart Contract)。智能合约是什么意思?英文直译是聪明的合约,是这样吗?

智能合约:由程序自动执行的合约

不需要经过人,合约条件被制定之后,由程序自动判定是否符合条件?一旦条件符合由程序自动执行。

举例来说:

1.当我们在一台自动贩卖机买饮料,投进50 元硬币,选择了30 元的饮料,系统自动判定我们付的款大于我们选择的饮料价格,于是放行让饮料被投下来,同时找钱给我们。

2.当我们到无人化管理采用车牌扫描的停车场停车,要离开的时候,系统扫描车牌,侦测到我们共有多少停车费要缴,是否已经完成缴交?判定已完成就打开闸门让我们出去,判定尚未缴费就不打开闸门,并在显示器上显示缴费提醒。

当我们在一台自动贩卖机买饮料,投进50 元硬币,选择了30 元的饮料,系统自动判定我们付的款大于我们选择的饮料价格,于是放行让饮料被投下来,同时找钱给我们。

或是当我们到无人化管理采用车牌扫描的停车场停车,要离开的时候,系统扫描车牌,侦测到我们共有多少停车费要缴,是否已经完成缴交?判定已完成就打开闸门让我们出去,判定尚未缴费就不打开闸门,并在显示器上显示缴费提醒。

这两个案例比较简单,实际上会使用智能合约的情况更复杂,牵涉到更复杂的条件认定和资源调用,但基本概念就是:人只需要制定合约条件,以及把这些条件写好程序并布置在系统环境里,接着由系统自动执行。

智能合约有什么用?可以用在哪些地方?

任何需要判定、验证、执行的事,如果不想用人力来做,都可能是智能合约可以派上用场的时候。

举几个生活中会遇到的情况为例:

保险理赔

购买保险时,保险条款中会注明理赔条件和理赔金额,现阶段的理赔基本上是由人力操作,理赔事件发生时由当事人准备相关证明,向保险公司申请理赔,保险公司审核是否符合条件,然后拨款理赔。

理赔是需要判定、验证、执行的事情,如果有智能合约,当我们在医院被诊断出某些疾病,或是警察局已经建立车祸报案,不须当事人申请理赔,条件一成立就触发合约,自动判定并验证与执行,理赔金额自动汇款到当事人帐户。

银行贷款

向银行申请贷款时,银行会审核我们的条件,判定我们的资格,验证我们的资料,依据条件决定贷款额度和还款条件,现阶段也是多由人力操作。

这也是需要判定、验证、执行的事情,假设由智能合约来操作,系统根据我们提供的相关资料,自动判定可以提供的贷款额度和条件,接着当我们完成抵押设定,自动验证相关资料,通过后自动执行贷款拨款,中间可以省下大量人力与人为失误可能。

NFT 智能合约铸造

币圈在前一两年最火红的议题之一就是NFT,先不讨论NFT 到底是什么又为什么红,简单描述NFT 铸造为什么会需要智能合约。

热门项目发行的NFT 非常抢手,完全供不应求,于是项目方通常会设定一些条件,符合条件的才有铸造NFT 的资格,通常是用所谓白名单的方式,符合条件就可以被加入白名单,名单中的钱包地址才可以铸造NFT。

又是一个需要判定、验证、执行的情况,判定你是否在白名单上?你的钱包中是否有足够铸造NFT 的费用?都符合才执行。

为什么智能合约跟区块链有关?

智能合约的概念很早以前就有人提出,大约在90 年代由Nick Szabo 所提出,只是当时的环境条件还做不到,直到比特币诞生,区块链的概念出现。

如果只是非常简单的任务,例如前述的自动贩卖机出饮料及找钱或停车场开关闸门,这不会有太多问题。但如果是更复杂的合约,牵涉到更多方,需要验证多方资讯,调动多种资源的时候,要让程序自动执行就会有个大问题,就是谁也不信任谁。

保险公司不信任申请人提供的资料,于是需要人工审核,银行不信任申请人提供的证明,于是需要人工审核。不同组织之间彼此不一定信任彼此提供的资料或讯息,就需要花费大量时间审核。

信任是个大问题,要让程序自动执行合约并不难,难的是如何在不信任彼此的情况下让程序自动执行?

这就是「去信任化」的问题。如何让参与的各方相互之间不需要信任依然可以运作?

区块链的三大特性:去中心化、公开透明、不可窜改,一个运作良好的区块链,本身就可以提供信任,当信任由区块链本身提供,就能做到去信任化,这也是区块链技术的重大价值所在。不需要信任彼此,信任这条链的运作机制即可。

虽然说比特币是第一条成功的区块链网路,但当时的比特币区块链还不具备执行智能合约的条件,直到以太坊出现。

第一条可以运行智能合约的区块链:以太坊Ethereum

比特币网路的设计,主要是为了记帐,记比特币的帐。以太坊则不一样,它一开始就是为了让人在上面运作智能合约而设计的区块链。

突然间真的可以运行智能合约了,人们开始摸索这到底可以拿来干嘛用,而后第一个火爆应用出现,也孕育了2017 那年的币圈大牛市,这个火爆的智能合约应用就是ICO。

虽然许多当时的知名项目如今已经殒落,但这确实开启了加密货币领域野蛮生长的时代。像以太坊这种主要用来运作智能合约的区块链,人们称它为平台公链,也有人直接简称公链,这类平台公链后来愈来愈多,百花齐放,不只有跟以太坊一样的Layer 1 公链,也有后来因应扩容需求而生的Layer 2 公链。

先不用搞懂差异也没关系,先知道平台公链指的就是设计来运作智能合约的区块链就好。有如此多的公链蓬勃发展,也意味着人们对于智能合约的需求庞大。

智能合约的优缺点

透过区块链的技术,来做到去信任化,让智能合约得以顺利运行,这样的智能合约有什么优缺点呢?

优点简单讲三个:安全、高效、可客制化

区块链是去中心化运作的一种网路,运作良好的区块链本身安全性就很高,又透过程序自动执行减少人力消耗,合约执行效率也很高,同时智能合约就是由程序代码构成,可以完全依据需求客制化设计与修改。

缺点也很明显:门槛较高、不能逆转

也因为区块链是去中心化的运作,跟中心化方式相比,有时候的进入门槛更高,维护成本也更高,要准备的资源更多,跟直接用人力执行相比,需要有人去写出对应的程序代码,整体的门槛较高。

虽然智能合约的程序可以客制化修改,但那毕竟是针对未来,针对已经发生的事情,程序怎么写就是怎么做,这是不可逆的。不能在事后讲人情、套关系,没有事后修改的弹性。

尽管智能合约似乎很智能,但确实不是所有事情都适合透过智能合约来处理。

智能合约诈骗

如今,智能合约通常是指运作在区块链上的一套程序或应用,也因为币圈还在一个

相对早期的阶段,整体环境还在发展中,相关的规范也还不够成熟,这领域充斥着大量诈骗。

诈骗你的不是智能合约,而是背后那个写出智能合约的人。

目前常见的几种诈骗方式,基本上可以统整为一种:假的!

用假的网站、客服、服务骗你,骗你的帐号密码,骗你的私钥或助记词,跟智能合约相关的诈骗方式,就是骗你的合约授权。

当我们使用例如钱包等工具,在区块链上做相关操作时,需要授权智能合约去操作你钱包中的资产。诈骗方式就是利用假的网站,或是假的币,让你误以为那是真的,然后授权对方的合约去操作你钱包中的加密货币。

针对这种诈骗的破解方式,就是务必小心确认是否来到真的网站,授权合约时仔细检查授权内容是否有问题,遇到任何新项目,多利用coinmarketcap或是coingecko网站反覆确认真伪。

或另外一种情况是,它本来是真的,但后来被骇了变成假的。假设我们过去曾经授权过这个智能合约,因为现在它已被恶意的人给掌握,就可能会造成资产损失。

针对这种情况的破解方式,则是记得要去移除授权,把过去曾经给过这个智能合约的授权给移除,对方就没有办法动用你钱包中的资产了。

最后总结:所以智能合约到底是什么?有什么用?

记得这几句话就好:

智能合约是由程序自动执行的合约,通常是指运作在区块链上的程序或应用程序,由区块链的运作机制来提供安全性,解决信任问题。智能合约有优点也有缺点,并不是所有东西都适合用智能合约来运作。

而对于币圈中的你来说,切记要小心诈骗,不要授权给错误的智能合约去操作你钱包中的资产喔~

本文链接地址:https://www.wwsww.cn/jishu/18942.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。