首页  >  要闻 >  区块链 >  区块链应用落地的六大挑战之智能合约代码如何审核
区块链应用落地的六大挑战之智能合约代码如何审核
 Relay Bits    
2019年11月05日 03:00
  收藏
   

挑战四:需要审核智能合约的代码

DAPP的智能合约代码会写在区块链上,这意味着代码是公开的,可供大众检视,但一般民众看不懂代码,如果真的要确保代码没有问题,势必得要找一个公正的第三方审核代码的安全性。

等等,区块链本身不是就是要「去信任」(trustless)吗?怎么这时候又要找第三方了?

先别说DAPP,退一万步来说,事实上当我们在使用区块链系统的时候,本身都必须建立在对整条链的信任上,我们必须信任BTC跟以太坊的代码没有问题才会去使用它。像BTC或以太坊这种大型开源项目,自然会有很多工程师去审核代码,算是比较安全的,但对于各种智能合约的应用来说,就不是这么一回事了,所以现在才会出现各种智能合约的审查公司(smart contract auditor)。不过这么一来,就只是把信任转嫁给这些审查公司而已,从这个角度来看,区块链永远不可能做到实质含意上的「去信任」。

智能合约审查

再者,代码审核这件事本身是很困难的,即便现在检查觉得没问题,也难保之后不会出事。举2016年以太坊著名的The DAO攻击事件为例,The DAO在当时是区块链有史以来最大的众筹项目,但因为被黑客发现其智能合约的漏洞,盗走了约370万个以太币。由于影响者众,当时以太坊创办人V神不得不跳出来主持大局,宣布将发布新版本的软件,把账本回滚到尚未被攻击的状态,有少部分人认为此举违反了区块链「去中心化」的精神,不愿意更新版本,于是留在原地,这就是以太坊首次硬分叉——以太坊经典(Ethereum Classic)的由来。

像The DAO这么火红的项目,其募资的智能合约自然会经过严格的审核,可惜即使经过顶尖程序专家与社群的检视,仍然被黑客发现重大缺陷。智能合约的核心精神——代码即法律(code is law),虽然立意良好,但实务上要执行,还是要克服很多技术以外的问题。

点击关注币海启行微信公众号,了解更多

编辑: Relay Bits
更多财经请关注 WX: Chaocaijing123456
币海财经: 全球财讯门儿清 https://www.bihai123.com/
声明: 本文由入驻币海编者上传,观点仅代表编者本人,不代表币海财经赞同其观点或证实其描述,请自行判断。

延伸阅读