区块链芝士 | 智能合约的局限性
智能合约由人工编写的计算机代码组成。这也带来了许多风险,代码容易受到攻击和漏洞的影响。理想情况下,它们应由经验丰富的程序员编写和部署,特别是涉及敏感信息和大量资金时。
除此之外,有人认为中心化的系统也可以提供智能合约的大部分解决方案和功能。主要区别在于智能合约在分布式的点对点网络中运行,而不是运行在中心化服务器上。因为它们基于区块链系统,所以它们往往是不可篡改的。
在某些情况下,智能合约的不可篡改性优势明显,但其他情况下却很糟糕。例如,由于其智能合约代码存在缺陷,名为“The DAO”的分布式自治组织(DAO)在2016年被黑客攻击时,损失高达数百万枚以太币(ETH)。
由于他们的智能合约是不可变更的,开发人员无法修复代码。这最终导致出现了硬分叉,诞生了第二个以太坊链。简而言之,一条链进行“回退”,并将资金返还给了合法的所有者(这是当前以太坊区块链的一部分)。而另一条链决定不受此次攻击影响,坚持区块链上发生的事情永远不可改变(这个链现在称为以太坊经典)。
需要注意的是,造成该问题并不是以太坊区块链的原因,它是由智能合约的错误执行所引发的。
智能合约的另一个限制与其不确定的法律地位有关。智能合约在大多数国家仍处于灰色地带,且不适应当前的法律监管框架。
例如,许多合约都要求交易双方彼此实名认证且超过18岁。但区块链技术提供的匿名性,加上缺乏中间人,可能会影响这些要求。虽然有潜在的解决方案,但目前看,智能合约的法律可执行性是一项真正的挑战,尤其是在没有边际的分布式网络中。