分布式自治协议(DGP)如何实现区块链网络的自动升级?(智能合约模板下载)



  • 分布式自治协议(DGP)如何实现区块链网络的自动升级?(智能合约模板下载)
    0_1494513217252_upload-f500b2cb-6c16-4411-a636-cba63b9eccda
    记者:铅笔芯

    数字加密货币出现以来,分叉的问题一直影响着区块链上面的应用,如何实现区块链网络的自动升级和降低分叉对用户的影响,并且建立更有效的区块链网络治理模式,是区块链行业未来发展中面临的巨大难题和挑战。

    关注微信公众号“区块链铅笔Blockchain”,回复关键词“ Qtum2”,即可查看完整智能合约模板。
    0_1494513293278_upload-66a79bb3-2685-4df7-8e32-3904a46e834f

    分布式自治协议(DGP)如何实现区块链网络的自动升级?(智能合约模板下载)

    分叉对区块链应用的部署带来巨大的影响,目前主流的数字货币都曾经经历过软分叉和硬分叉对社区带来的巨大的伤害和影响,包括比特币、以太坊在内无一幸免。比特币核心代码早期曾通过软分叉的方式解决了操作码可被恶意攻击的漏洞。类似的,以太坊也曾通过硬分叉的方式修复了the DAO智能合约漏洞对以太坊网络的巨大伤害,并且导致社区的纷争和分裂,也正是由于硬分叉不可逆转的影响,造成了以太坊网络分裂成2个独立的网络,ETH 和 ETC。

    以太坊在后续发展中,也通过数次的软分叉来解决网络中的问题,并且强制要求所有的矿池和客户端进行更新。分叉作为一种网络和软件升级的手段,无可厚非,类比来说,即使在生命攸关的大型航空器或心脏起搏器中也可能会出现需要修复的漏洞。

    但是如何达成分叉的共识,并降低分叉对生态系统的影响是整个区块链行业都需要思考的问题。比如如何更有效的解决比特币网络扩容的问题,如何在比特币不同的扩容方案中做出大多数都认可的选择,以及如何达成这种共识,从而避免1MB 区块还是2MB区块长达2-3年的争论?

    综上所述, Qtum量子链在设计之初就考虑了这些问题,并提出了 分布式自治协议(Decentralized Governance Protocol),通过智能合约来治理区块链网络的参数,并实现一个去中心化的网络自治机制,实现区块链网络的自动升级和快速迭代,而不用担心软硬分叉对网络和社区带来的影响。

    通过DGP协议和机制,区块链网络在分叉或者升级过程中,用户无需对核心钱包升级,即可对某些分叉实现自适应,最大程度地减少对区块链网络、生态系统以及用户产生的影响。

    分布式自治协议涉及的相关名词:

    分布式自治协议Decentralized Governance Protocol DGP

    数字化治理技术Digital Governance Technology

    自治共识机制协议Democratic Consensus Protocol

    可调共识机制协议Adjustable Consensus Protocol

    自调节共识经济技术Self-Regulating Consensus Economy Technology

    自动共识机制调节协议Automatic Consensus Adjustment Protocol

    共识机制参数修改协议Modifiable Consensus Parameter Protocol

    什么是分布式自治协议(DGP)

    Qtum量子链创造了一个全新的概念:分布式自治协议(DGP),即通过触发特定智能合约对区块链某些特定参数进行修改。更为重要的是,整个过程自动进行,无需用户对钱包进行升级或下载新的节点软件。

    分布式自治协议可以修改区块链网络中的以下参数:

    1.不同操作码对应gas价格;

    2.区块大小的上限;

    3.区块gas上下限;

    4.DoS攻击情况下,可接受的gas价格最小值;

    5.区块或交易中可允许sigops的最大值;

    6.标准交易的类型和大小限制。
    DGP除了可以修改区块链网络中的简单参数外,DGP还有潜力解决区块链网络的一下问题

    1.实现类似于比特币告警系统的网络告警系统;

    2.在区块链智能合约中部署新的虚拟机;

    3.同步检查点系统,用于区块链动态检查。
    这个概念的强大性体现在当系统受到某些未知攻击时,DGP可以自动更改网络相关参数,并在1000个区块内修复相关安全漏洞,用户无需升级或者更新钱包。利用DGP协议网络可在共识达成的情况下,实现自动的区块链网络升级,而无需用户进行强制的钱包更新。

    分布式自治协议(DGP)如何实现

    Qtum 量子链 第一个正式发布的版本会至少包含以下4个DGP协议的功能:

    1.每个Qtum虚拟机操作码对应的Gas价格

    2.区块创建者可接受的交易对应最低Gas价格(具体技术细节将在另一篇技术稿MPoS中详细解释)

    3.区块大小

    4.区块gas限制
    每个功能都由独立的智能合约控制,这意味着每个功能有独立的治理、授权机制以及内置限制条件。

    通常情况下,DGP可通过软分叉实现,以下更为复杂的情况需要利用硬分叉实现:

    1.在区块链上设计和部署DGP分布式自治合约

    2.发布新钱包,用软件加密代替DGP分布式自治合约地址硬编码

    3.等待直至足够多的节点和累积权益进行了更新,并支持全新的DGP

    4.这时DGP可以用于更改特定的网络参数。虽然较老版本的钱包无法验证支持DGP的区块,但系统中的新节点可以完成区块验证。
    具体的网络参数更改流程为:

    1.设计DGP参数更改提案。提案中需要明确新的参数值、实施变更的起始区块以及投票过程所对应的区块数量。区块高度应小于20,000个,投票过程应控制在10,000个区块之内。若有紧急特殊情况,可以将区块高度和投票过程控制在1,000个和500个之内。更改提案禁止在500个区块内生效,以避免出现不必要的孤儿块或分叉;

    2.向社区公布更改提案,并收集相关反馈;

    3.根据社区反馈,对更改提案进行相应调整;

    4.将最终版提案发送至DGP智能合约;

    5.投票立即启动;

    6.控制节点可以发送一笔交易给DGP智能合约,表达自己的赞成或者不赞成

    7.在投票过程中,若提案未获得足够投票或收到过多反对票,则该提案被否决,不执行任何修改;

    8.若提案得到足够同意票,则DGP分布式自治合约将提案中的相关数据存储在持久RLP储存器中特殊存储空间内;

    9.钱包和区块链上的所有节点可以定时检查RLP储存器从而判断是否有新的更改发生,该操作并不需要通过EVM即可方便地访问RLP数据;

    10.在特定区块高度时,钱包和节点执行参数更改。
    每个DGP都有一个非常简单的核心治理模式,包括一系列账户(可以是公钥哈希地址或已部署EVM合约地址),账户还可在其他重大决策诸如在DGP分布式自治合约中增加或去除账户、调整提案通过所需同意票的最低票数等事项中起到决策性作用。

    尽管这种治理模式看似简单,但后续可以根据实际情况进行调整。通过移除DGP所有账户信息(除了单个智能合约),DGP可以将所有权限管理与治理逻辑授权给外部智能合约。这样,外部智能合约可以部署全新的治理模型,比如通过某更改提案需要一定数量的社区投票、管理层投票以及核心开发者投票。这种治理机制可以随时按需进行调整。

    分布式自治协议(DGP)安全模型

    当然,DGP也有其限制。尽管可以Qtum量子链所有的网络共识机制都放入一个DGP分布式自治合约,但这会消耗大量的算力资源,而且可能会导致系统性能下降。所以在Qtum的主干网络中,我们只会部署几个DGP分布式自治合约在创始区块中。 此外,并非所有合约都适合放入DGP分布式自治合约中。当Qtum量子链进行重大功能升级时,仍需要人工干预进行分叉。

    因此,DGP机制仅适用于在安全范围内对特定参数进行更改。任何可能影响区块链安全或针对某个特定用户/账号的DGP都禁止部署至区块链上。

    尽管DGP模型功能强大,但严格的部署应用规定有助于降低DGP模型受到攻击的可能性,也有助于控制DGP实施过程中的各类风险。毕竟与易用性、有效性相比,区块链网络的安全性更为重要。

    最后需要特别说明的是,每个DGP分布式自治合约都有自毁功能,用于完全禁用DGP功能。当有重大安全漏洞发生时才会启用DGP自毁动能。后续根据不同DGP功能,通过软分叉或硬分叉进行功能性重建。



  • “作为BaaS 与ethereum不同的是 Ardor没有把重点放在智能合约以及图灵完备上 而是倾向于模块化和易用性 这样可以避免出现the DAO那样的问题 使用者可以根据自己的需要迅速定制一条自己的区块链作为Ardor的子链来运行 目前已经确定存在的子链至少有6条”
    Ardor的设计是否能为QTUM提供新的思路呢?



  • @dingyining Ardor是NXT的2.0版 NXT是BTC之后第一个采用原创代码开发的币种 纯PoS 技术派 曾居CMK前五 这一轮红到爆的nem 最初的愿景就是要做一个更多人参与的平均分发版的NXT克隆 直到今天他们依然承认NXT对他们的影响 由此可见NXT的功力 Ardor定位为BaaS(Blockchain as a Service) 采用主链+子链的架构 将目前NXT的PoS锻造功能分离出来由唯一的一条主链Ardor单独执行 其他功能放到子链中 子链可以有很多条 子链的功能包括转账 投票 混币 别名 发信息 资产发行及去中心化交换 货币发行 商品交易市场 云数据 等等 不同子链上的token也可以相互交易 子链上的数据不需要完全上传主链 而是在子链上先修剪之后再上传 这样可以解决存在于BTC的区块满容的问题 子链上的集束者(bundler)收取子链token作为转账费为转账数据进行集束(bundle) 然后再支付ARDR作为锻造费给主链的锻造者出块 作为BaaS 与ethereum不同的是 Ardor没有把重点放在智能合约以及图灵完备上 而是倾向于模块化和易用性 这样可以避免出现the DAO那样的问题 使用者可以根据自己的需要迅速定制一条自己的区块链作为Ardor的子链来运行 目前已经确定存在的子链至少有6条 1)IGNIS 当前的NXT在Q3 Ardor上线之前会有一次快照 1NXT派发0.5 IGNIS IGNIS自动成为Ardor的第一条子链 之后NXT与官方脱钩 由愿意继续运行的第三方负责 2)BTC 3)USD 4)EURO 这三条是常用货币链 涉及到法币的链 未来会有线下承兑商 正在谈 5)Janus 一个发行在Ardor上的基金项目 已完成ICO 当前作为NXT的一项资产 未来会迁移到ardor上成为一条子链 Janus目前的投资方向主要是虚拟币博彩 已按月分红 6)Adel 一个去中心化的孵化器 目前正在ICO 实体公司注册在马恩岛 计划三轮融资 未来也会迁移到Ardor上 相信随着Ardor的推广 会有越来越多的项目运行在ardor上 可能会改变目前ethereum一家独大的局面 ARDR总量10亿 由NXT快照产生 去年已完成分派 目前要获得ARDR 需要去平台购买 比特时代和P网可以用BTC交易 19800平台可以用人民币交易


Log in to reply
 

Looks like your connection to QTUM was lost, please wait while we try to reconnect.