亚博-Qtum 量子链 2.0 硬分叉升级综述 - 亚博|网站app下载

当前位置:首页 > 新闻 > 社会

亚博-Qtum 量子链 2.0 硬分叉升级综述

2020-11-18 14:32:02

亚博

亚博_背景Qtum 仍然专心于区块链底层基础设施的研究,在比特币和 EVM 的基础上大大展开技术递归。Qtum 主网早已平稳运营近两年,在此过程中也曝露经常出现有系统和共识规则中不存在的一些缺失。这些缺失在一定程度上妨碍了区块链的技术发展和应用于落地。

为了适应环境日益变化的区块链技术应用于场景,Qtum 将逐步对底层协议展开升级,发售 Qtum 2.0。本文讲解的硬末端将是 Qtum 2.0 涉及的第一次升级。关于 QIP(Qtum Improvement Proposal)Qtum 量子链改良议案(Qtum Improvement Proposals, QIP)是由 Qtum 开发者和社区明确提出的一系列关于 Qtum 底层技术升级的明确建议。

所有议案皆在 github 上发布,所有人都可以对议案展开公开发表辩论。取得普遍接纳的议案将由 Qtum 研发团队展开明确构建。

Qtum QIP:https://github.com/qtumproject/qips/issues目的和动机本次软末端是 Qtum 主网上线以来仅次于的一次版本递归,是 Qtum 作为未来区块链应用于基础设施的技术基础,共计包括四个与共识涉及的 QIP 升级。分别为:QIP-5:为合约交易的输入脚本减少亲笔签名检验https://github.com/qtumproject/qips/issues/6QIP-6:在 Qtum 的 EVM 虚拟机中加到 btc_ecrecover 实编译器合约https://github.com/qtumproject/qips/issues/7QIP-7:升级 Qtum EVM 虚拟机为近期的以太坊君士坦丁堡(Constantinople)版本https://github.com/qtumproject/qips/issues/8QIP-9:改动可玩性调整算法,施展块时间更为稳定https://github.com/qtumproject/qips/issues/9其中,QIP-5 和 QIP-7 为 Qtum 减少了若干新的特性,以适应环境现实中更为简单的智能合约应用于场景,同时也是先前升级(如隐私资产)的技术基础;QIP-6 提升智能合约研发的便捷性,同时减少用于成本;而 QIP-9 则更进一步提高了 Qtum 网络的稳定性。为什么必须“软末端”升级?Qtum 是一个几乎去中心化的网络,每个节点各自运营独立国家的节点/钱包程序,没有人能掌控每个节点运营的程序版本,但所有节点可以通过统一的共识规则对 Qtum 网络上的所有交易达成协议完全一致。

如果有一部分节点使用与其他节点有所不同的共识规则,就不会”末端“为两条链。普通的升级不改动任何共识规则,即使有部分节点未完成升级,网络也会再次发生末端。

然而,本次升级牵涉到到的所有改动皆与共识规则涉及,这就意味著升级后的节点和并未升级的节点将使用有所不同的共识规则,产生软末端。强烈建议所有用户在第一时间已完成升级,以免因未转换到新版本而导致不必要的损失。

软末端涉及 QIP 阐述QIP-5叙述为合约交易的输入脚本减少亲笔签名检验,从而可以在地址不享有任何 QTUM 的情况下证明所有权,并调用合约。动机在 Qtum 中调用任何智能合约都必须缴纳适当的 gas 费用。每次调用合约时,都拒绝调用合约的地址中有余额(哪怕余额非常少)。例如,QRC20 token 的账户就是一种最少见的合约调用,假设一个地址 A中有 1000 QC(一种公布在 Qtum 上的 QRC20 平稳币),要想要发送到这 1000 QC,必需拒绝地址 A中有一定量的 QTUM,从而向合约证明你享有该地址。

如果地址 A没任何余额,则无法调用任何合约,也即无法动用这 1000 QC。目前唯一的解决方案是先往地址 A中转至一些 QTUM,再行调用合约发送到 token。然而,这不但浪费了宝贵的链上 UTXO 数据集的资源,而且很大地影响了用户体验。

亚博网站app下载

同时,对于更加简单的智能合约应用于场景(如预测市场应用于,去中心化交易所等),这一容许明显提高了用户用于区块链应用于的门槛。益处QIP-5 通过减少 OP_SENDER 操作码,获取了一种证明合约调用地址所有权的机制,从而可以在地址不享有任何 QTUM 的情况下获取证明,进而调用智能合约。

虽然对原系统的转变并不大,但却为现有的智能合约生态带给较小的转变:· 地址可以在不享有 QTUM 代币的情况下调用智能合约(例如发送 QRC20 token),提升普通用户的代币发送体验。留意:并不是免费调用合约,而是可以由其他地址代付· 将费伊更加多样化的服务,由服务获取方缴纳手续费,用户只需用于服务才可,更加切合实际应用于场景· 可以容许在一笔交易中多个地址调用多个合约,减少合约调用的灵活性· 节省链上 UTXO 数据集的空间有可能的风险QIP-5 减少了额外的共识规则,但对原规则仍维持相容,因此理论上会带给安全性风险。

但不会对有数的基础设施带给一些影响:· 必须研发额外的 RPC 命令来正确地用于该功能,服务提供商必须实时基础设施展开升级· 由于减少了额外的脚本,服务提供商必须对脚本展开额外的检验,否则将无法辨识此类交易QIP-6叙述在 Qtum 的 EVM 虚拟机中加到 btc_ecrecover 实编译器合约,可供普通合约必要调用。动机在 Solidiy 中,ecrecover函数可以将椭圆曲线亲笔签名还原对应的公钥地址。Qtum 的智能合约中的 msg.sender 使用的是和比特币类似于的 P2PKH 地址,而通过 ecrecover 函数回到的地址格式与以太坊完全相同,网卓新闻网,两者无法必要较为。

对于开发者来说,这将使合约中一些逻辑辨别显得繁复。目前要解决问题这一问题的常用方法是调用额外的库合约,但不会消耗更好的 gas 费用,减少智能合约的用于成本。

益处QIP-6 通过实编译器合约的方式,构建了取名为 btc_ecrecover 的函数。新的函数在相容原函数所有模块的同时,可以带给以下益处:· btc_ecrecover 回到的地址类型与 msg.sender 地址格式完全一致,可以展开必要较为,修改了合约研发过程中的逻辑辨别· 实编译器合约可以大大节省 gas 消耗,减少智能合约的用于成本有可能的风险QIP-6 不对原系统展开任何改动,且新的函数与原函数模块几乎相容,因此理论上会带给任何风险。

QIP-7叙述升级 Qtum EVM 虚拟机为近期的以太坊君士坦丁堡(Constantinople)版本。动机当前 Qtum 使用的是较早于版本的 EVM 虚拟机。在 Qtum 主网公布后,EVM 先后升级到 Byzantine和 Constantinople 版本。新版的虚拟机中减少了许多对开发者友好关系的新特性,比如回到长度星型的数据,以及静态合约调用等。

更加多的开发者必须倚赖这些新的特性展开合约和应用于的研发。益处QIP-7 包括了所有 EVM Byzantine 和 Constantinople 版本的新特性,可以构建更为简单的智能合约和应用于。例如 Qtum 在QIP-19中计划反对的隐私资产,其中涉及的智能合约就必须倚赖新版 EVM 中获取的新特性。

此外,在升级已完成后,理论上以太坊上所有的智能合约和应用于都可以重制到 Qtum 上,同时可以取得底层 UTXO 模型独特的安全性和稳定性。有可能的风险EVM Byzantine 和 Constantinople 版本皆已在以太坊主网转录,稳定性早已获得检验,并且几乎前向相容,风险较低。

但 Qtum 底层使用 UTXO 模型,和 EVM 的账户模型不完全一致,开发者在重制有数合约时必须留意 Qtum 版 EVM 的特性。QIP-9叙述QIP-9 实际包括两个升级:1.改动 Qtum 主网的挖矿(Staking)可玩性调整算法,施展块时间更为稳定,且更加相似希望时间;(共识涉及)2.改动全网 weight 估算算法,使其更加相似现实值。(与共识牵涉到)动机Qtum 设计的区块间隔为 128 秒,理论上,当区块间隔经常出现波动时,共识机制将不会通过调整可玩性值,来缩短或延长区块间隔,从而使平均值出块时间维持在 128 秒。

亚博

然而,目前 Qtum 使用的的可玩性调整算法波动较小,必要造成的结果就是主网运营至今,平均值出块时间大约为 144 秒,这意味著潜在地增加了大约 12% 的 TPS。另一方面,Qtum 网络的 weight(可以解读为正在 Staking 的币的总和)反映了整个网络的安全性,也要求了 Staking(挖矿)的预期收益。由于 Qtum 是一个几乎去中心化的网络,全网的 weight 不能通过挖矿可玩性展开估算。

然而,现有的 weight 估算算法波动较小,且根据建模结果,其与现实 weight 的方差较小,因此无法精确地体现当前网络的状态。益处· QIP-9 获取了一种改良的可玩性调整算法,根据区块间隔的指数移动平均值对展开可玩性调整,可以使平均值出块时间更加相似 128 秒。

交易的平均值证实时间也将适当延长· QIP-9 改良了网络 weight 的估算算法,使用移动平均值展开估算,和原算法比起,新的算法与现实 weight 间方差更加小,波动也较小,可以更加精确地体现当前网络 staking 状态有可能的风险· QIP-9 牵涉到的可玩性调整算法本身并没安全隐患· 网络 weight 估算算法虽然对估计值较光滑,但在实际 weight 轻微波动时无法及时体现网络状态的变化,因此先前仍有改良的空间。但此项升级不牵涉到共识机制,故可以在先前常规升级中再度改动软末端公布计划本次软末端涉及的代码早已全部研发已完成,并经过近半年的测试。

此次软末端升级不会再行在测试网络上转录,在测试网络平稳运营后,将不会在 Qtum 主网转录。升级将在预先原作的区块高度自动转录,测试网络的末端高度为 446,320(预计为 2019 年 9 月 20 日),Qtum 主网的末端高度为 466,600(预计时间为 2019 年 10 月 16 日 - 10 月 17 日)。建议用户维持运营的钱包一直是官方公布的近期版本,从而可以自动已完成升级。

亚博

有可能的影响· 升级转录时,如果仍有大量节点未完成升级,则在升级转录时有可能一段时间末端为两条链,直到绝大部分节点已完成升级,这时有展开双花反击的有可能;同时,若矿工节点并未几乎升级,则有可能使全网 weight 不平稳,造成出块时间产生较小波动,所有交易的证实时间有可能逆宽(比如交易所的充提)· 升级转录后,如果找到根本性的共识涉及的漏洞,有可能必须研发团队较慢修缮并警告用户升级,否则有可能再次发生末端对策对于节点并未几乎升级的问题,Qtum 将提早通报所有交易所、服务提供商(钱包,浏览器)、Staker(矿工)以及普通用户已完成升级,保证大部分节点在主网转录前已完成升级,确保升级顺利进行;对于升级本身的漏洞,Qtum 研发团队在公布前已展开宽约半年的内部测试,目前各项测试皆已通过。同时,本次升级不会提早三个月在测试网络上转录,保证在主网转录升级前找到并修缮所有漏洞。

所有用户请求维持节点改版到最新版,并在软末端转录期间,对所有交易展开多次证实,或等网络平稳后再行展开账户。以后还不会有软末端吗?只要与共识涉及的升级,都有可能必须软末端,预计不会采行与本次类似于的流程通报用户展开升级。先前 Qtum 计划公布的 x86 虚拟机,隐私资产,以及智能合约挖矿等特性,有可能都必须软末端。

Qtum 研发团队不会将必须末端的升级拆分,尽量减少软末端升级的次数。用户必须做到什么?从安全性角度考虑到,所有正在运营 Qtum 节点/钱包 的用户都必须在主网转录之前升级到最新版钱包。

最新版钱包的公布信息请求注目:https://github.com/qtumproject/qtum/releases/https://qtumeco.io/wallet并在新版本公布时第一时间改版。对于网络中有所不同的参与者,建议为升级作好充分准备:交易所、钱包1. 在软末端转录前后,必须注目 QTUM 及 QRC20 代币的充提记录,在交易取得主链充足多的证实后再确认差使托;2. 对于 QRC20 代币的提币,可以提早升级设施的程序(QIP-5涉及),从而可以第一时间运用新的特性代付 gas 费用。服务提供商(如浏览器)建议提早研发 QIP-5 涉及的设施程序,以免升级转录时无法辨识具有 OP_SENDER 的交易输入。

矿工(矿池,个人staker)升级转录前后,必须时刻注目网络 weight,根据预期收益调整用户的收益和手续费等。开发者可以再行利用测试网络研发具备新的特性的合约和应用于,在主网转录时才可部署。(QIP-7)融合 QIP-5 思维更加多应用于场景。普通用户时刻备份好您的钱包。

参照链接QIP-5 的明确构建请求参照:https://github.com/qtumproject/qips/issues/6QIP-6 的明确构建请求参照:https://github.com/qtumproject/qips/issues/7QIP-7 的明确构建请求参照:https://github.com/qtumproject/qips/issues/8QIP-9 的明确构建请求参照 :https://github.com/qtumproject/qips/issues/9Byzantine:https://blog.ethereum.org/2017/10/12/byzantium-hf-announcement/Constantinople :https://blog.ethereum.org/2019/02/22/ethereum-constantinople-st-petersburg-upgrade-announcement/QIP-19:https://github.【亚博】。

本文来源:亚博-www.thenerdmama.com

热门推荐