软分叉的艺术 -  - 政策规则保护
 摘要:在本文中,继续我们上一篇关于比特币共识分叉的完整历史的文章,客座作家 Johnson Lau 博士解释了政策规则与共识分叉的区别.他解释了为什么在政策规则(非标准行为)已被涵盖的情况下引入新的软分叉可能会更安全,因为这可以减轻或降低改变共识规则所带来的一些风险.
 软分叉是修正和引入新的比特币共识规则的主要方式.接下来的一系列文章将介绍软分叉是如何被实现的.
 共识规则和软分叉
 共识规则决定着每个交易或每个区块的有效性.比特币网络上的每个用户和矿工都遵守着同一套共识规则,代表着他们都愿意接受和同意一个账本.
 当大多数用户和/或矿工决定采用更严格的共识规则时,软分叉就可能出现,这使一些以前有效的交易/区块将变为无效,而不是相反.如果大多数人执行新的规则的话,其他任何违规分叉(统计上)都不会在工作量证明方面赶上新的更严格的共识分叉.遵守旧规则的少数人将始终遵循更长,更严格的分叉,使得网络上的每个人都会最终接受和同意一个账本.
 政策规则和共识规则
 虽然共识规则是确定交易有效性的唯一标准,但是传播节点或挖矿节点可能偏好某种交易.例如:
 作为垃圾邮件控制机制,费用非常低的或 "微产量"(输出值很低)的交易将被拒绝.
 一些矿工拒绝将 "链上赌场" 交易包括在内,这些交易被认为是垃圾邮件.
 未知版本的交易被拒绝(目前只有版本 1 和 2 是 "已知的" ).
 非常规的脚本(即不是 P2PKH , P2SH , v0 segwit 或其他一些情况)和未知的 NOPx 代码(目前仅知道 OP_NOP2 和 OP_NOP3 )的交易将被拒绝.
 更换费用( Replace-by-fee )和母费子付( child-pay-for-parent )也属于政策规定,因为他们确定了哪些是矿工首选的交易.
 根据定义,政策规则必须至少与共识规则一样严格.很明显,矿工们不希望在一个区块中包含无效交易(这会导致采矿奖励的丧失),或者将其传播(这将被同行排斥).
 虽然政策规定可能比共识规定更严格,但要注意,政策规定并不决定交易的有效性.一旦交易被包含在有效的区块中,即使它违反了一些政策规则,所有的网络节点也将会接受并承认它.
 同样要注意的是政策规则是区域性的,而共识性规则是普遍性的.这意味着不同的网络节点可能有不同的策略规则.只要运行相同的共识规则,他们仍然会一致同意区块链账本.
 违反政策规则的交易有时被称为"非标准交易",我们需要将其与 "无效交易" 区分开.
 政策规则和软分叉
 理想情况下,所有的矿工都应该在软分叉激活之前升级到新的更严格的规则版本.在经济利益上,他们有强烈的动力去做这件事,因为挖掘一个无效区块(就新规则而言)会形成重大的财务成本.但是,像比特币这样的去中心化系统,矿工的行为是不能保证的.
 虽然矿工们理论上应该关注所有规则变化的提案并及时采取行动,但是一旦矿工挖掘无效区块便会导致市场中断和普通用户的经济损失.因此,任何计划良好的软分叉都应该考虑到这一点,并将风险降至最低.
 诀窍是,软分叉的内容应该限制在现有并广泛采用的政策规定所涵盖的范围内.拥有政策规定,但不了解新的共识规则的矿工,将会自动拒绝这些交易,因此,他们绝不会将新交易规则中的交易包括在内.这在比特币历史上的一些案例中有详细阐述.
 在上述图像中,工人在一条无法使用的道路上摆放 "道路封闭" 的标示牌,该障碍物在工人放置标示牌之前已经存在.新的交通标示牌只能防止一些 "非标准" 的行为,因此造成的影响很有限.
 案例分析
 描述
 BIP65:检查锁定时间验证
 OP_NOP1 到 OP_NOP10 在比特币脚本语言来说原本没有意义.虽然它们被算为一个操作(脚本中有 201 个操作数量限制),但实际上它们在交易验证时被忽略.然而,自 0.10 版本开始,比特币核心中就包含了一个策略规则,在默认情况下拒绝 OP_NOPx . BIP65 是比特币核心 0.12 中引入的软分叉,其将 OP_NOP2 重新定义为 OP_CHECKLOCKTIMEVERIFY( OP_CLTV ) . OP_CLTV 检查顶层堆栈值是否大于交易的 nLockTime 字段(以及其他的条件).如果任何条件匹配,交易将被视为无效.否则, OP_CLTV 将像 OP_NOP2 一样被忽略.
 新的节点在软分叉激活后将强制执行的新的共识规则.即使在激活激活之前,原来的 OP_NOP2 策略规则已被 OP_CLTV 规则取代.(这是没问题的,因为 OP_CLTV 规则比原来的 OP_NOP2 共识规则更严格)
 旧的采矿节点不会执行 nLockTime 检查.但是,只要运行 0.10 或更高版本,默认的 OP_NOP2 策略规则将阻止它们包含任何具有 OP_CLTV 的交易,无论该交易是有效或无效的.因此,对于新的 OP_CLTV 共识规则, 0.10 或以上的旧采矿节点不会主动产出无效区块.
 BIP68:使用序列号的相对锁定时间
 nSequence 是比特币交易中的一个领域,基本上没有被使用. BIP68 的概念是使用 nSequence 字段来实现相对锁定时间,这是支付渠道和闪电网络等高级交易的一个非常重要的组成部分.然而,自比特币的第一个版本以来, nSequence 字段就一直被忽略,矿工对任何 nSequence 值的交易都采取接受态度.没有关于 nSequence 值的政策规则,因此不能像 OP_CLTV 那样简单地完成一个安全的软分叉.诀窍是使用交易版本字段( nVersion ).从版本 0.7 开始,非版本 -1 交易将被政策规则拒绝.为了充分利用这一点, BIP68 要求仅在交易版本为 2 或更高(准确来说低于 0 )的情况下强制执行 nSequence 的新规则.因此,旧的采矿节点不会产出任何违反 BIP68 的区块,因为在默认情况下它们将不包括任何非版本 -1 交易.攻击者不能通过简单地改变交易版本来"关闭" BIP68 ,因为版本有签名认证.这也是交易版本与共识规则相关联的唯一实例.
 BIP141:隔离见证
 隔离见证( segwit )是通过重新定义特定的脚本模式来修复交易可规模化的一种软分叉. BIP141 的模式是一个以单个 OP_x(x = 0到16)开始的输出脚本(或P2SH redeemscript ),接着是 2 到 40 个字节之间的规范数据推送.但是,这不是最初提出的方案.在第一稿中,见证程序模式是在 2 到 41 个字节之间进行单次推送.自 v0.6 版本以来已经实施该政策,用来拒绝非常规的脚本(即不是 P2PKH , P2SH 和其他几种类型)的交易.在这方面,第一份见证计划模式草案确实是不规范的.问题是用 P2SH 编程的见证程序.在 v0.10 之前,政策规则也会拒绝任非常规的 P2SH 脚本.而这个规则在 v0.10 中大大放松了,原来的见证程序设计没有被覆盖.几个备选方案也在当时的考虑范围:
 1.新的交易 nVersion (如 BIP68 )不起作用.如果新的共识规则是"只有当 nVersion 大于 2 时才执行 segwit 规则",则攻击者可以通过改变 nVersion 来窃取存储在 segwit 输出中的所有加密货币(因为 nVersion 仅由 segwit 签名认证,而当 nVersion 是 2 以下时是不被检查的).
 2.OP_NOPx 可以被用来标识见证程序.但是,这会使所有见证程序多出 1 个字节,并占用有限的 OP_NOPx 空间.
 最终版本使用了 BIP62 的所谓 "clean stack" 政策规则.虽然 BIP62 现在被撤回了,但其规则仍作为政策被执行. "Clean stack" 要求脚本评估必须以唯一一个堆栈项目结束.然而,最后的见证程序设计留下了两个堆栈.这基本上是没问题的,但却违反了 "clean stack" 政策.
 失败案例:BIP16和支付脚本散列
 (P2SH)
 BIP16 是第一个计划实行比特币软分叉的.当 55% 的哈希算力表示准备就绪时(当前使用率约 80% 到 95% ),它被激活了.在引入 P2SH 之前,没有政策规定来检查支出输出的形式.因此,相当数量的矿工在软分叉激活数月之后一直在产出无效区块,偶尔会产出长区块链.
 失败案例:莱特币的隔离见证
 比特币隔离见证实施后不久,莱特币就开始整合 segwit 的代码.然而,尽管 segwit 在 Bitcoin Core 0.13.1 中发布,但当时的最后一个莱特币版本是 0.10.4 ,其中没有包含 "clean stack" 规则. 莱特币的开发员试图通过给 segwit 增加一个额外的共识规则来解决这个问题,要求区块版本必须至少为 0x20000000 ,希望能强迫矿工升级.事实证明,所有的矿工在激活之前都升级了(最后一个大型矿工在激活几个小时前升级),而并没有造成分叉因为上一个版本中没有 CLEANSTACK .如果大型采矿池在最后一分钟没有升级,那么额外的区块版本规则就只能提供很少的保护.这将在下一篇文章中进一步讨论.
 政策保护不是万能的
 读至此时,读者可能会发现,上述的政策保护手段只会阻止未升级的矿工在软分叉激活后主动产出第一个无效块.然而,如果这个无效块被创造出来,那么未经升级的矿工会接受它,同时如果得到更多工作证明的支持,那么这个区块链就会越来越长.所以这只是一种减少而不是完全消除在软分叉激活中发生意外区块链分叉的方法.如果在大量矿工正在通过不同的完整节点运行不同的政策规则的情况下,那么这个政策保护也是存在问题的.
 比特币协定开发员 Johnson Lau 博士
 CC BY-SA 4.0
 发文时比特币价格: ¥66650.22 特别声明
 本文由BitMEX研究团队提供,查阅更多加密货币行业相关研究报告请访问 
 免责声明:本文不代表巴比特立场,且不构成投资建议,请谨慎对待.
 版权声明: 作者保留权利.文章为作者独立观点,不代表巴比特立场.
 文章标签: 软分叉
 点赞 0
 BitMEX研究团队:通过不偏不倚,内容详实,有据可依的报告和数据来滤除加密货币生态系统中的炒作和杂音.如要查看所有报告,请访问:
 闪电网络:全面采取瞭望塔功能
 闪电网络:论"正义交易"的重要性?
 研报 | Libra 实为固定收益 ETF
 比特币现金 SV - 6 区块链裂
 闪电网络之路由费经济学
 Schnorr 签名和 Taproot 软分叉提案,到底好在哪里?
 阅读作者更多精彩文章
 赞助
 快讯
 更多
 据慢雾科技消息,勒索病毒已经成为全球最大的安全威胁之一,99%以上的勒索病毒使用BTC进行交易,到目前为止BTC的价格已经涨到了一万多美元,最近一两年针对企业的勒索病毒攻击也越来越多,根据Malwarebytes统计的数据,全球TO B的勒索病毒攻击,从2018年6月以来已经增加了363%,同时BTC的价格也直线上涨,黑客现在看准了数字货币市场,主要通过以下几个方式对数字货币进行攻击:1. 通过勒索病毒进行攻击,直接勒索BTC;2. 通过恶意程序,盗取受害者数字货币钱包;3. 通过数字货币网站漏洞进行攻击,盗取数字货币.
 来源:慢雾科技
 据Cointelegraph消息,Poloniex此前承诺弥补受CLAM闪崩影响的投资者损失,用户对其方式表示不满,有用户声称交易所窃取其资金,因在崩盘当天没有活跃的保证金贷款.律师David Silver称,在美国将损失社会化是非法的,Poloniex的做法可能会导致法律战.Poloniex的贷款本质上是点对点的.这可能会为潜在的法律战增加新维度,因美国等发达市场有P2P贷款法规.但该交易所表示不向美国用户提供保证金交易.
 来源:Cointelegraph
 据币安官方推特消息,Binance安卓应用程序(iOS即将推出)现在可以进行杠杆高达3倍的保证金交易.安卓应用1.10.1的当前版本支持保证金交易.
 来源:币安
 据中证网消息,8月24日,中国银行原副行长王永利在2019首届南开金融科技高峰论坛上表示,央行数字货币的落地运行仍然面临很大挑战.一方面,还没有看到央行数字货币白皮书的详细叙述,另一方面,央行数字货币怎么替代,使用,控制,如何跟传统货币体系衔接,管理等问题都需要解决.对于区块链技术,王永利认为,需要进一步探索区块链技术,"态度要积极,但是要理性,不可盲目乱投资."
 来源:中证网
 据Bitcoin Exchange Guide消息,24岁的英国软件开发人员Zakk Lakin目前在CoinCorner Ltd担任开发人员.CoinCorner是一家允许即时购买比特币的公司,提供入门级服务,允许随后将比特币转移到其他地方.Lakin称,"用加密货币购买东西比人们想象的要容易:有许多在线商家接受比特币,我整个月都用它们来购买我需要的东西,从亚马逊购买Raspberry Pi产品等科技相关商品或烹饪设备(是的,有办法用加密货币从亚马逊购买东西)."
 来源:Bitcoin Exchange Guide
 据Bitcoin Exchange Guide消息,加密分析公司Messari Crypto在推特发布分析图并表示:如果顶级运动员用比特币支付报酬,他们会挣多少钱?按照目前的价格,梅西每年会带回家12700 BTC.相比之下,这大约是比特币矿工一周内从区块奖励中获得的收入(12600 BTC).Matt Barkley转发了这条推文,据悉其粉丝超过16万.
 来源:Bitcoin Exchange Guide
 据Cointelegraph消息,近日,Cresio创始人兼首席信息官Daniel Pons Ayala分享对西班牙货币和加密货币未来的看法:加密货币行业正处于被采纳的状态.它根本不应该被视为泡沫.在我看来,这是我们今天所知道的货币明确而必要的演变.我认为,一旦它继续在全球范围内传播并得到广泛使用,它将对社会产生巨大的影响.针对"比特币到年底能达到多少"的提问,他表示不敢提供确切的数字,今年将看到新高点,甚至比特币将在下一次减半后升至6位数.
 来源:Cointelegraph
 近日,清华大学李稻葵与厉克奥博发文"Libra对人民币支付体系的影响及对策建议".文章称,本质上讲天秤币和支付宝,微信支付是一样的,只不过支付宝和微信支付直接与人民币挂钩,一块钱的人民币对应着微信和支付宝里的一块钱,天秤币的币值是和一揽子货币挂钩.这一区别背后的含义是,天秤币具有独立货币的身份,它不与任何一个主权货币一一对应,可能将发展成为重要的非主权货币.鉴于超主权货币的诞生不可避免,中国一方面应通过利用微信支付以及支付宝等技术创新手段扩大人民币的跨境使用,加快人民币国际化,做强人民币,另一方面应积极参与天秤币的运行和管理,布局未来国际货币新博弈.建议如下:1. 中国必须坚持本国交易不能使用天秤币的原则,牢牢树立主权货币的绝对地位.2. 中国监管当局应当事先声明,在紧急情况下可限制天秤币的跨境交易,以防出现大量的资金外逃和经济危机.3. 作为大国,中国必须考虑让自己的主要公司加入天秤币理事会.4. 中国拥有超大规模的社交平台和电商平台公司,应该鼓励这些平台公司更加国际化,在国际上推行自己的网络支付工具,从而提升人民币在国际交易中的影响力.
 来源:中国经济思想与实践研究院
 据TokenInsight数据显示,BTC 24h交易额为$130亿,活跃地址数及转账数分别较前日下降11.37%和4.96%.BCtrend分析师Jeffrey认为,BTC市场人气保持高位,但链上交易额连续4周下滑,短期或将反弹后延续调整.注:以上内容仅供参考,不构成投资建议.
 来源:TokenInsight
 据 ChaiNext 数据显示,北京时间8月25日8点,反映加密货币市场整体走势的 ChaiNext 100 指数报 894.28 点,过去 24 小时下跌 2.41%,成交额 311.86 亿美元,成交较前 24 小时减少 3.96%,该指数成分代币中 51个上涨,49个下跌;反映大盘蓝筹加密货币表现的 ChaiNext 5 指数报 785.13 点,过去 24 小时下跌 2.58%,成交额 259.33 亿美元,成交较前 24 小时减少 3.27%;比特币泡沫指数(BBI 指数)报 87.08 点,过去 24 小时下跌 0.63%;USDT场外折溢价指数(USDT OTC Index)报 99.53 点,过去 24 小时上涨 0.17%.比特币昨日晚间出现回调,之后在一万美元左右遇阻反弹,目前处于一万美元上方,震荡行情仍然延续.
 来源:ChaiNext
 据Cointelegraph消息,8月19日,委内瑞拉加密货币监管机构Sunacrip负责人Joselit Ramirez宣布,国营航空公司Conviasa将开始接受该国石油支持的加密货币Petro付款.客户可使用Petro应用程序在几分钟内处理机票付款.
 来源:Cointelegraph
 据格隆汇消息,区块链集团发布公告称,进一步延迟刊发截至2018年12月31日止年度全年业绩及刊发年报及可能延迟刊发截至2019年6月30日止6个月中期业绩及刊发中期报告.
 来源:格隆汇
 据Live Bitcoin News消息,曼哈顿一家新健身房Grit Bxng现在接受BTC支付.据悉,这家健身房是美国唯一接受比特币支付的健身房之一.如果正在寻找特殊一对一的培训师,需要购买膳食补充剂或健身器材,或者只是想每月支付会员费,客户可以选择使用BTC来完成这项工作.
 来源:Live Bitcoin News
 [比特币行情 | BTC现价10124.96美元]
 据巴比特App数据显示,截至08月25日 09:00,比特币当前价格为$10124.96(¥71887.22),上涨-2.53%,换手率为4.12%,比特币市值占比67.46%,当日资金净流入¥7.41亿,7日净流入¥19.22亿.
 来源:巴比特
 [以太坊行情 | ETH现价189.94美元]
 据巴比特App数据显示,截至08月25日 09:00,以太坊当前价格为$189.94(¥1348.57),上涨-1.58%,换手率为17.3%,以太坊市值占比7.62%,当日资金净流入¥3.47亿,7日净流入¥12.44亿.
 来源:巴比特
 [EOS行情 | EOS现价3.65美元]
 据巴比特App数据显示,截至08月25日 09:00,EOS当前价格为$3.65(¥25.92),上涨-0.36%,换手率为41.89%,EOS市值占比1.28%,当日资金净流出¥0.7亿,7日净流出¥6.1亿.
 来源:巴比特
 据中证网消息,8月24日,中国保险行业协会党委书记,会长邢炜在2019首届南开金融科技高峰论坛上表示,很多保险公司依托互联网开展业务,将大数据,云计算,区块链,人工智能等技术综合运用到保险业务及公司运营这些当中,通过对保险业务流程的全面渗入提升了业务效率,改变产品形态,改进服务和交互方式,由此可能催生新的商业模式,构建新的保险生态.其中,区块链技术能够对保险单证,合同信息的共享,查询方面起到前所未有的作用,人工智能技术可以为客户提供智能顾问,智能理赔,提高理赔效率.
 来源:中证网
 据华西都市报消息,8月23日,2019iWorld数字世界博览会在成都开幕.IDG亚洲副总裁朱东方在接受采访时表示,"IT,互联网是IDG最早关注的领域,而这几年IDG开始看好人工智能,区块链以及体育和文化等领域,并成立了200亿的投资基金."
 来源:华西都市报
 百度指数数据显示,近7天比特币搜索指数整体日均值为25687,整体同比上升5%,整体环比下降10%,移动同比上涨26%,移动环比下降9%;近7天区块链搜索指数整体日均值为4168,整体同比下降64%,整体环比上涨6%,移动同比下降45%,移动环比上涨7%.
 来源:百度指数
 1.2019比原链全球开发者大会正式开幕,比原链创始人CEO段新星表示,区块链和开源运动终将改变世界;
 2.Bystack 将开放BaaS平台,推出开发者中心以及Bystack去中心化身份(DID);
 3.基于比原链开发的支付平台Paypaw(贝爪)获得2019比原链全球开发者大会一等奖;
 4.阿根廷米索尼斯省工业部推出JellyCoin代币,以奖励有效处理垃圾的公民;
 5.Adam Back:作为地缘政治中中立的自由市场货币,比特币的力量倍增;
 6.灰度:全球接受比特币的公司和非营利组织的数量已超10万.