提高比特币现金升级的标准
General Protocols(以下简称为GP)要祝贺并感谢整个比特币现金生态系统于11月15日的成功升级。这是我们为实现这一目标而进行的所有努力的成果。虽然11月的升级现在已经成为我们丰富历史的一部分,但我们必须展望现在和未来。特别是,GP认为BCH生态系统需要提高升级的门槛,以实现相关的目标,即不断进化以满足全球采用的需求,同时保持稳定,使BCH成为建筑商和其他利益相关者的最佳网络。
BCH必须持续进化又保持稳定
GP是一家从一开始就在BCH上建立起来的公司,这是因为BCH所具有的效用以及极大的潜力。我们清楚地看到了持续进化和保持稳定的需求,并且已经以团队和个人的方式开始努力。关于网络的稳定性,GP团队成员已经深入参与了Flipstarter,BCHN和BCH Network Discussions等项目,这些项目正在帮助我们找到实现真正分散管理的方法。当BCH正在持续进化以满足全球采用的需求时,GP创建了开源基础结构和工具,例如AnyHedge协议,AnyHedge工具,Electrum-Cash和第一个BCH价格预言机(Oracle)。
GP短期内需要什么样的发展?
从GP的角度来看,所有的这些改进仅仅是开始。在过去的10年中,大部分BCH脚本系统仅仅只是引人好奇,并未被使用。但是,随着BCH的升级,智能合约契约被允许使用后,脚本编写的功能突然有了很大的提升。小组用例立即成为可能,而大量用例在理论上亦成为了可能。理论上可行的事与实际情况之间的障碍,就是BCH脚本编写的局限性。
这里列出了一些解决方法相对简单的重大限制。更多细节请参见附录。
· 您可以加,减,除和________。
· 合同中允许的操作数量很少。
· 合同的最大大小(字节)很小。
· 智能合约契约是二等公民,需要昂贵的解决方法。
· 32位数字非常有限制。
GP是否支持2021年5月升级中的BCH脚本更改?
不支持。
GP已决定在此问题上采取艰难的立场。
尽管以上对脚本的改进对GP和BCH网络都很重要,而且也相对简单、低风险,并且具有较低的初始和持续成本,但是GP不支持尝试在2021年5月的升级中加入这些改进。如果在任何升级前至少六个月对改进进行了明确的指定和完整的测试,并获得了网络利益相关者的关键支持,那么GP将提供支持,包括升级中的改进。
提高标准
BCH网络在三年中经历了两次明显的分裂,理由不明,但网络效应和价值却遭到重大破坏。我们很容易为此责怪任何一方。我们可以很容易地说,任何一位在工作台上的ASIC矿工就能够分裂网络。也许我们也可以说,我们五年不采取任何行动,以避免分裂。但是,我们必须撇开无用的争论。作为网络的利益相关者,我们必须认真研究这种情况。我们必须找到一种前进的方式,使我们能够适当地升级BCH,以在全球范围内推广使用,而又不给可疑和破坏性的分裂留下空间。
如上所述,GP承诺:
· 领导或支持对我们而言重要的升级的规范、测试、成本效益分析和利益相关者调查。
· 参与有关与GP不直接相关的其他升级的讨论。
· 等待可能的升级达到预定的关键数量,然后再按计划进行激活,虽然清楚某些升级可能永远不会达到关键的数量。
GP也挑战其他网络利益相关者
协议和网络开发人员:您是一流的BCH利益相关者,自Genesis Block以来一直就在。当前,您所持有的权利可能已经超过有益的权利。我们向您挑战,要认真对待这一权力,不要理会那些无需承担责任就随便责备您的人,放眼大局,将其他利益相关者摆在桌面上,分担责任,并最终通过审慎地创新来保护和发展网络。
企业和其他组织:早期的无授权现金充斥着巨大的不确定性和巨大的潜力。有了正确的愿景和选择,您就可以使用网络为您的用户提供服务,并在即将到来的变化中发挥领导作用。我们向您挑战,要正确利用无授权现金的独特价值,要了解其局限性,并确保随着网络的增长满足用户的需求。
矿工和矿场:GP挑战您要成为有效的高管,对利益相关者寄予较高的期望,而绝对不宽容威胁您投资价值的破坏性行为者则。
使用者:一切都是为了您。您拥有最终的力量。
附录:BCH脚本有哪些限制?
您可以加,减,除和________
您不能乘。 BCH脚本缺少其他一些基本操作。
合同中允许的操作数量很少
BCH脚本使用执行非常简单的操作的低级操作(操作码)。您只能在脚本中使用其中的201个操作。例如,在某些情况下,您可能会花费3或更多(1.5%)的操作限制来简单地添加A + B。具体而言,此限制阻止了AnyHedge的关键功能,例如处理多个预言和合同的可销售性。大多数合同开发人员必然会使用CashScript或Spedn之类的编译器,而这些编译器已经进行了大量优化,以在有限的空间内获得尽可能多的性能。但是,即使有优化编译器或可以手动优化的天才,它所能运行的空间仍然很小。
合同的最大大小(字节)很小
与任何操作类似,BCH脚本需要数据才能使操作有意义。您只能在脚本中容纳520个字节的数据。此外,上述每个操作都会花费一些数据限制。
智能合约契约是二等公民,需要昂贵的解决方法
当今使用契约涉及许多关键步骤,这些关键步骤深深地影响了上述操作和数据预算。不仅如此,如果无知地完成契约,所涉及的步骤也会对契约造成很大的安全风险。无知地完成契约很容易,但注意到所有可能操纵数据来破坏盟约的方式却相对困难。
32位数字非常有限制
在实际的BCH交易中,数字始终为Satoshis(Sats)。所以:
· 1 BCH是100,000,000(1亿)Sats。
· 今天的10,000 USD大约是40 BCH。那是4,000,000,000(40亿)个Sat。
· BCH脚本使用32位数字,最多只能处理大约2,000,000,000(20亿)个Sats。
换句话说,在最好的情况下,且没有额外的计算来使情况变得更现实,BCH脚本只能使用大约20个BCH。尽管这笔钱价值不菲,但显然还不够进行全球贸易,毕竟个人和企业都需要定期处理大笔款项。
由该限制引起的另一个问题是:纵然除法非常重要,但其却变成了危险的操作。对于脚本编号(整数):
· 1,000,000 / 6 = 166,666(不是166,666.666 ...或16,6667)。不错。
· 1,000,000 / 600,000 = 1(不是1.666 ...或2)。不太好。
虽然这项问题可以通过一些智能的数字操作来处理,但是32位的限制使使用这些智能技术非常困难。
更准确地说,AnyHedge合同中的大多数代码都允许更大的BCH数量并确保准确性,无论涉及多少数字。
General Protocols Blog
This article forms part of the General Protocols Blog, a collection of cross-platform links showcasing our team's community activity, Bitcoin Cash projects, UTXO development, and general crypto musings.