BCH社区正处于讨论中的13项技术提案探讨
扫描二维码
随时随地手机看文章
在BCH社区每隔一段时间都会有不同的技术方案被提出,有些是用于解决现有问题,有些则是为了BCH的长远发展,其中的一些优秀提案被开发者加入到BCH技术更新中,但还有一些提案具有争议,被保留下来继续讨论。下面是cash.coin.dance网站统计的BCH社区正处于讨论中的13项技术提案。
No.1
P2SH的强制性CashAddr(提出者:Electron Cash钱包团队)
BCH的地址与BTC的隔离见证地址不兼容,用户在发起BCH转账时,如果将币发送到了隔离见证的地址的话,无法取出。而隔离验证地址大多是以3字开头的P2SH地址,所以Electron Cash团队提出所有的比特币现金钱包都应拒绝由传统BCH地址向以3字开头的P2SH地址发送资金,从根本上杜绝资金无法被取出的问题。BCH地址转换器也应警告用户不要将资金发送到从旧格式转换为CashAddr格式的P2SH地址。
值得一提的是,在BCH今年5月份的升级中,有一项改动是隔离见证复原,让发错的BCH也能在矿工的帮助下取出来,不过Electron Cash的方案是用强制手段杜绝发错的可能。
No.2
Avalanche(提出者:BCHD节点)
Avalanche是一个新型的区块链共识协议,由一组算法组成,最初的提出者是康奈尔教授埃米·冈·瑟勒,他在论文《Snowflake to Avalanche:A Novel Metastable Consensus Protocol Family for Cryptocurrencies》提出了这一想法,后被BCH社区的开发者所借鉴吸纳。在18年7月份,BCH社区开发者发表了一篇《关于市场和预共识》的文章,文章引入了Avalanche协议,并提出了预共识概念。
Avalanche协议可以让矿工在双重支出成功前达成共识,从而提高零确认交易的安全性。另外,avalanche用于后共识可以大大加强BCH网络抵御51攻击的能力,还可以有效优化内存池同步,提升BCH网络处理能力。
No.3
缩短出块时间至1min(提出者:BCH社区)
众所周知,比特币的平均出块时间是10分钟,但中本聪却没有对此做出说明,分析人士认为10分钟的设定是为了降低孤块率,提升安全性。而事实上,10分钟的时间间隔并非是必须的,它非常影响用户的使用体验,而且由于网络延迟和宽带的原因,有时候出块时间甚至会延长到1小时之久,漫长的等待时间会让转账变得低效。
虽然BCH社区推出了许多零确认的安全保护手段,但并非所有人都愿意接受零确认,比如目前用户转账最多的交易所就不支持。莱特币就是因为出块时间过快从而在17年牛市被众多搬砖套利玩家所喜爱。缩短出块时间无疑会让BCH更具优势,但实施细则还需要继续探讨。
No.4
现金意向(提出者:独立开发者)
基于每个事务存储对人类有意义的事务元数据。为区块链存储的技术标识符补充上下文信息,例如发件人是谁,发件人使用的帐户单位,发件人用于计算技术金额及类似数据的汇率。
No.5
修订DAA(带PID控制)(提出者:Bitcoin ABC开发组)
在2017年11月13日之后,开发人员注意到BCH每小时生成的块有时会将至每小时1.07块(正常情况下应该是6块),具体发生的时间是在格林威治标准时间2017年11月14日下午6:37。他们发现当大型矿工将算力迁移到比特币区块链时会产生震荡,而且随着时间的推移会产生明显的波动。
开发者建议使用PID控制算法,这是一种类似于温度控制器的工业标准算法,可以根据前一个块的挖掘时间动态调整难度。矿工只需要记录上一个块的挖掘时间,不需要执行144区块规则,非常动态,最后只需要对参数进行一点调整。
No.6
Blocktorrent(提出者:独立开发人员)
Blocktorrent是一种将完整区块分成数个独立可验证的小块进行传输的方法,其中每个小块大约是一个IP数据包(小于1500字节)。就像Bittorrent比Napster快一样,Bittorrent应该比Xthin(ner)更快。
No.7
元数据子树(Metadata Subtree)(提出者:Bitcoin ABC开发组)
开发人员认为,比特币区块头存在一些缺陷,这些缺陷甚至严重阻碍了该领域的创新,(比如未花费的交易输出承诺)。而且不幸的是,修复这些缺陷并非易事,因为大多数“简单”的解决方案不仅会破坏比特币与一些生态软件的向后兼容性,还会阻碍多数采矿设备的运行。因此,目前尚未存在可行的“简单”解决方案。但简单解决方案又是急需的,因为复杂性是比特币项目中安全性和可扩展性的敌人。
Bitcoin ABC开发人员和 Joannes Vermore共同构想了一种折中的解决方案,就是为BCH引入一组精心挑选的元数据子树,这是一种将元数子树作为一个极大值引入新元数据的向后兼容方法。
No.8
Merklix Trees(提出者:Bitcoin ABC开发组等)
开发人员重新思考了在比特币链上扩展方面不必要复杂化的痛点。中本聪的代码库中最初实现的Merkle树具有自身的复杂性,包括一部分明显偶然的情况,因其确实带来了意外的漏洞。
最初在比特币中发现的Merkle树的布局并不适用于递增式高度平行处理,如果区块将来扩大,这就会变成一种阻碍。因此,开发人员提出了Merklix树,这是比特币共识规则的变化,影响了区块的散列策略。Merklix树是一种按位查找的字典树,以Merkle树覆盖图为补充。Merklix树适用于递增式高度平行计算,并且最大限度地保留了对比特币现有应用领域的向后兼容性。
No.9
基于多块的时延惩罚(提出者:Bitcoin Unlimited开发组)
这是一种通过对不诚实矿工进行挖矿惩罚从而防止区块重组的算法改进方案。BU开发人员建议在区块之间取平均延迟,将每个区块与其相反链上的“表亲”区块进行对比,比如取101A和101B之间的延迟,然后用102A和102B之间的延迟求和,以此类推……然后除以在相反链顶端的区块总数。如果最初被延迟的链比第一个看到的链长,那么没有表兄弟的块被视为零延迟。如果存在需要很长时间传播的块,(比如,它是私有创建而不是来自内存池),它将导致其它节点惩罚它。
No.10
Bobtail
Bobtail是一种将比特币出块时间稳定在7~12分钟的算法。比特币被设计成10分钟出一个块,但在实际运行中,由于算力的波动和运行设备的差异,比特币的出块时间并不是一直稳定在10分钟左右,这种差异会造成比特币交易市场无法保持一致。Bobtail还被证明可以有效阻止双重支出和恶意的算力攻击。
No.11
单向聚合签名(提出者:Electron Cash钱包团队)
EC开发团队认为,目前为止,所有加入到BTC和BCH的协议都很难获得发展动力,主要原因在于缺乏网络效应。行业内的一些机构参与度低,加入进来不容易,并且需要协调。即使像CashShuffle协议获得了广范使用,它也面临者越来越多的DOS攻击。单向聚合签名(OWAS)提供的“非互动”属性改变了 游戏规则。在灵活的交易方案范围内,OWAS可以达到EC开发组想要的目标,因为该方案使得签名的消息摘要可以以乘法的方式出现,因此,输入和输出可以按任何顺序出现。
No.12
通过保证金改善零确认(提出者:Bitcoin Unlimited开发组)
消费者在进行特殊的ZCF(零确认)交易时,可以向商家付款并同时发布保证金。如果交易是诚实的,那么消费者可以在交易确认后收回他的保证金。如果消费者试图双花,那他必须在同一个公钥上显示第二个签名,然后由矿工用它来为自己收取保证金。
No.13
将BCH标准面额切换为“bits”(提出者:社区爱好者)
社区爱好者在BCH论坛R/BTC发帖建议,将BCH标准面额改为“Bit”而不是比特币现金/BCH,并同时将“BCH”的名字换为“Bit”。他补充解释了几个原因,比如“Bit”是一个单音词,容易发音;“Bit”是数字事物的组成部分;“Bit”已经与金钱有关等。