网赚论坛
标题:
解决扩容问题的另一种思路
[打印本页]
作者:
rongxuan
时间:
2017-11-21 00:53
标题:
解决扩容问题的另一种思路
比特币扩容问题已经争论了一年多,当前已经形成core和classic两派阵营,我个人的态度是我觉得两边的担忧都是有道理的,我能理解双方各自对比特币的信念,同时我认为我们应该能找到第三条让双方相容的共识之路。
core的担忧是什么?比特币主链不可能承载所有交易,必须在主链上建立新的协议比如闪电网络来处理扩容问题,一旦有了在没有达成共识之前提高区块上限的先例,后续必然会不断提高区块上限值,导致比特币中心化。
classic担心什么?在闪电网络等方案可用前,先提高区块上限,否则主链再不扩容会导致用户离开比特币转向其他竞争链。classic的最新长期线路图希望用最近的一批区块的大小来计算上限值,相当于给了矿工决定区块大小的权利。
在我看来双方的担忧都是有道理的,但是双方依然存在达成共识的基础,我认为基础就是双方其实都是同意,在不影响比特币中心化的前提下是可以对主链区块适当扩容的,只是大家没有找到一套有效的方法来说明到底多大的区块上限是适当的。于是在长时间的讨论和妥协之下双方勉强同意了2M的方案。
但是2M只是当前的一个妥协的方案,一两年后双方依然还会再次对扩容问题对抗,只有找到一套有效的方法来说明到底多大的区块上限是适当的才能彻底消除双方的分歧。
当前还有一种看法是我们不需要让双方达成共识,我们应该让比特币的开发去中心化,两个团队都发布自己的软件,让矿工来决定运行那边的。加文为此还发文告诉大家,一旦算力投票结束,在28天的等待期内大部分的用户和服务商一定会切换到算力占据优势的一方,另一方因为没有用户支持而币价归零就消亡了,因此硬分叉并不可怕。
而我个人并不这么乐观,core和classic双方都有很强信念的支持者,这些支持者不会因为自己这一方算力和用户不占据优势就放弃,他们担心另一方最终会发生自己担忧的情况导致比特币失败,而希望自己做一个备份的区块链一致延续下去,这就形成了两条事实上的区块链,尽快其中一条承认的人很少。这样的情况其实是最糟糕的,比特币还没有进入主流社会就分裂成了两个,以后如何向公众保证不会再分裂成四个甚至更多个呢?因此这种情况的出现我认为是最危险的。
综上所述,我认为我们必须找到共识之路才能解决此次扩容危机。我们一定需要找到一套有效的方法来说明到底多大的区块上限是适当的。
那么到底多大的区块上限是适当的呢?我们知道区块越大传播到全网多数节点的需要的时间越长,节点验证的时间也越长,因此会增加孤块率。在能接受的孤块率(比如1%,每天1到2块)的前提下,可以大致估算出一个区块在全网多数节点传播和验证的最大时间,详细时间的计算值请高手指教,这里我们先假设是10秒,即为了让孤块率控制在1%,最大的区块必须在10秒内传播到全网多数节点并完成验证。那区块上限是适当值的问题就变成,在当前的网络环境、硬件条件和软件效率下,10秒内最大能让多大的区块传播到全网多数节点并完成验证呢?
如何计算10秒内最大能让多大的区块传播到全网多数节点并完成验证呢?肯定不能让挖矿节点来决定,因为挖矿节点一旦集中到专门挖矿骨干网络上,他们产生的区块估计连那些不能连接到他们的专用网络的普通节点都验证不了,这也是我不同意classic长期线路图的原因。那能否让全网的全节点来决定呢?答案也是否定的,因为如果有人故意制造大量低速连接的全节点就可以拖慢全网。
对这个问题我的解决方案是这样的,类似于目前互联网的全球共有13台根域名服务器的架构,我认为比特币网络也需要一批这样的特殊节点来通过测试确定区块的上限值。这批节点挑选的程序和方法是公开的可以修改的,节点的硬件配置,网络环境和软件版本也是公开和可修改的。我们可以每一年或每一万个区块来挑选一批这样的节点用最新的网络、硬件和比特币新版本程序测试可接受的区块上限值,并将这个上限值用于下一年或下一万个区块中。
这些节点的选择应该满足一些基本的准则,比如应该分布到六大州主要国家,应该使用当地主要的网络连接方式,服务器硬件配置不应该超过当时100美金每月的云服务能提供的配置,比特币软件应安装最新的可用于生产环境的版本等等。具体的节点选择和分配的办法可以再详细讨论,测试的方案细节也可以再商讨,我只是希望大家能从原则上认同这个方案达成共识,避免社区因为硬分叉而分裂。
欢迎光临 网赚论坛 (http://www.caifuba.net/)
Powered by Discuz! X3.1