比特币协议中扩展性局限分析

1、缺乏图灵完备: 那就是说,虽然比特币脚本语言支持的计算方式很多,但是它不是所有的都支持。在主要类别中缺失循环。 它这样做的目的是为了防止对交易的验证出现死循环;理论上,它的脚本是可以克服这个障碍的,因为任何的循环都可以通过 if 语句重复多次底层代码来模拟,但是这样的脚本运行效率非常低下。
2、值的盲区 :一个 UTXO 脚本没有办法提供资金的颗粒度可控的出金操作。比如, 一个预言合约(oracle contract )的其中一个强大的用例就是一个套期保值的合约,A 和 B 都把价值1000$的 BTC 放到合约中,30 天后,这个合约把价值 1000$的 BTC 发给了 A,剩下的发给了B。 这就需要合约要确定 1BTC 以美元计值多少钱。然而,因为 UTXO 是不可分割的,为实现此合约,唯一的方法是非常低效地采用许多有不同面值的 UTXO(例如有 2^k 的 UTXO,其中 K 可以最大到 30)并使预言合约挑出正确的 UTXO 发送给 A 和 B。
3、状态缺失 UTXO 要么被使用了,要么没有被使用;这会使得多阶段的合约和脚本没有机会保持任何其他的内部状态。这使得制作多阶段的期权合约、去中心化的交换协议或两阶段加密承诺协议变得困难(对于安全计算奖金来说是必要的)。这也意味着,UTXO 只能用于构建简单的、一次性的合约,而不是更复杂的“有状态”的合约,比如去中心化的组织,并且使得元协议难以实现。
4、区块链盲区 UTXO 对某些区块链数据视而不见,比如随机数和之前的区块的哈希。这严重限制了博彩和其他一些类别的应用,因为它剥夺了一种潜在的有价值的脚本语言:随机数!也就是在比特币的脚本中是没有随机数的。
以太坊生态系统的建立
因此,我们看到了在加密货币之上构建高级应用程序的三种方法,所以以太坊生态系统应运而生:
一,构建一个新的区块链,
二, 在比特币之上使用脚本,
三,在比特币之上构建一个元协议。
构建一个新的区块链可以无限制扩展功能集,但是这样做非常消耗时间。使用脚本很容易实现和标准化,但在其功能上非常有限,而元协议虽然容易,但在可伸缩性方面却存在缺陷。
在以太坊中,我们打算建立一个替代性的框架,它提供了更大的开发和更强大的轻客户属性,同时允许应用程序共享一个经济环境和区块链安全。
参考文献:
1、百度百科智能合约
2、百科以太坊
3、如何使用remix快速管理智能合约
0 条评论