Qtum量子鏈分布式自治協(xié)議如何實現(xiàn)區(qū)塊鏈網(wǎng)絡(luò)的自動升級?

2017-05-12 15:51:13來源:威易網(wǎng)作者:

2017年5月12,數(shù)字加密貨幣出現(xiàn)以來,分叉的問題一直影響著區(qū)塊鏈上面的應(yīng)用,如何實現(xiàn)區(qū)塊鏈網(wǎng)絡(luò)的自動升級和降低分叉對用戶的影響...

2017年5月12,數(shù)字加密貨幣出現(xiàn)以來,分叉的問題一直影響著區(qū)塊鏈上面的應(yīng)用,如何實現(xiàn)區(qū)塊鏈網(wǎng)絡(luò)的自動升級和降低分叉對用戶的影響,并且建立更有效的區(qū)塊鏈網(wǎng)絡(luò)治理模式,是區(qū)塊鏈行業(yè)未來發(fā)展中面臨的巨大難題和挑戰(zhàn)。Qtum 量子鏈近日發(fā)布報告闡述了這幾個問題。

分叉對區(qū)塊鏈應(yīng)用的部署帶來巨大的影響,目前主流的數(shù)字貨幣都曾經(jīng)經(jīng)歷過軟分叉和硬分叉對社區(qū)帶來的巨大的傷害和影響,包括比特幣、以太坊在內(nèi)無一幸免。比特幣核心代碼早期曾通過軟分叉的方式解決了操作碼可被惡意攻擊的漏洞。類似的,以太坊也曾通過硬分叉的方式修復(fù)了the DAO智能合約漏洞對以太坊網(wǎng)絡(luò)的巨大傷害,并且導(dǎo)致社區(qū)的紛爭和分裂,也正是由于硬分叉不可逆轉(zhuǎn)的影響,造成了以太坊網(wǎng)絡(luò)分裂成2個獨立的網(wǎng)絡(luò),ETH 和 ETC。

\

以太坊在后續(xù)發(fā)展中,也通過數(shù)次的軟分叉來解決網(wǎng)絡(luò)中的問題,并且強制要求所有的礦池和客戶端進行更新。分叉作為一種網(wǎng)絡(luò)和軟件升級的手段,無可厚非,類比來說,即使在生命攸關(guān)的大型航空器或心臟起搏器中也可能會出現(xiàn)需要修復(fù)的漏洞。

但是如何達成分叉的共識,并降低分叉對生態(tài)系統(tǒng)的影響是整個區(qū)塊鏈行業(yè)都需要思考的問題。比如如何更有效的解決比特幣網(wǎng)絡(luò)擴容的問題,如何在比特幣不同的擴容方案中做出大多數(shù)都認可的選擇,以及如何達成這種共識,從而避免1MB 區(qū)塊還是2MB區(qū)塊長達2-3年的爭論?

Qtum量子鏈在設(shè)計之初就考慮了這些問題,并提出了 分布式自治協(xié)議(Decentralized Governance Protocol),通過智能合約來治理區(qū)塊鏈網(wǎng)絡(luò)的參數(shù),并實現(xiàn)一個去中心化的網(wǎng)絡(luò)自治機制,實現(xiàn)區(qū)塊鏈網(wǎng)絡(luò)的自動升級和快速迭代,而不用擔(dān)心軟硬分叉對網(wǎng)絡(luò)和社區(qū)帶來的影響。

通過DGP協(xié)議和機制,區(qū)塊鏈網(wǎng)絡(luò)在分叉或者升級過程中,用戶無需對核心錢包升級,即可對某些分叉實現(xiàn)自適應(yīng),最大程度地減少對區(qū)塊鏈網(wǎng)絡(luò)、生態(tài)系統(tǒng)以及用戶產(chǎn)生的影響。

分布式自治協(xié)議涉及的相關(guān)名詞:

分布式自治協(xié)議 Decentralized Governance Protocol (DGP)

數(shù)字化治理技術(shù) Digital Governance Technology

自治共識機制協(xié)議 Democratic Consensus Protocol

可調(diào)共識機制協(xié)議 Adjustable Consensus Protocol

自調(diào)節(jié)共識經(jīng)濟技術(shù) Self-Regulating Consensus Economy Technology

自動共識機制調(diào)節(jié)協(xié)議 Automatic Consensus Adjustment Protocol

共識機制參數(shù)修改協(xié)議 Modifiable Consensus Parameter Protocol

什么是分布式自治協(xié)議(DGP)

Qtum量子鏈創(chuàng)造了一個全新的概念:分布式自治協(xié)議(DGP),即通過觸發(fā)特定智能合約對區(qū)塊鏈某些特定參數(shù)進行修改。更為重要的是,整個過程自動進行,無需用戶對錢包進行升級或下載新的節(jié)點軟件。

分布式自治協(xié)議可以修改區(qū)塊鏈網(wǎng)絡(luò)中的以下參數(shù):

1.不同操作碼對應(yīng)gas價格;

2.區(qū)塊大小的上限;

3.區(qū)塊gas上下限;

4.DoS攻擊情況下,可接受的gas價格最小值;

5.區(qū)塊或交易中可允許sigops的最大值;

6.標(biāo)準交易的類型和大小限制。

DGP除了可以修改區(qū)塊鏈網(wǎng)絡(luò)中的簡單參數(shù)外,DGP還有潛力解決區(qū)塊鏈網(wǎng)絡(luò)的一下問題

1.實現(xiàn)類似于比特幣告警系統(tǒng)的網(wǎng)絡(luò)告警系統(tǒng);

2.在區(qū)塊鏈智能合約中部署新的虛擬機;

3.同步檢查點系統(tǒng),用于區(qū)塊鏈動態(tài)檢查。

這個概念的強大性體現(xiàn)在當(dāng)系統(tǒng)受到某些未知攻擊時,DGP可以自動更改網(wǎng)絡(luò)相關(guān)參數(shù),并在1000個區(qū)塊內(nèi)修復(fù)相關(guān)安全漏洞,用戶無需升級或者更新錢包。利用DGP協(xié)議網(wǎng)絡(luò)可在共識達成的情況下,實現(xiàn)自動的區(qū)塊鏈網(wǎng)絡(luò)升級,而無需用戶進行強制的錢包更新。

分布式自治協(xié)議(DGP)如何實現(xiàn)

Qtum 量子鏈第一個正式發(fā)布的版本會至少包含以下4個DGP協(xié)議的功能:

1.每個Qtum虛擬機操作碼對應(yīng)的Gas價格

2.區(qū)塊創(chuàng)建者可接受的交易對應(yīng)最低Gas價格(具體技術(shù)細節(jié)將在另一篇技術(shù)稿MPoS中詳細解釋)

3.區(qū)塊大小

4.區(qū)塊gas限制

每個功能都由獨立的智能合約控制,這意味著每個功能有獨立的治理、授權(quán)機制以及內(nèi)置限制條件。

通常情況下,DGP可通過軟分叉實現(xiàn),以下更為復(fù)雜的情況需要利用硬分叉實現(xiàn):

1.在區(qū)塊鏈上設(shè)計和部署DGP分布式自治合約

2.發(fā)布新錢包,用軟件加密代替DGP分布式自治合約地址硬編碼

3.等待直至足夠多的節(jié)點和累積權(quán)益進行了更新,并支持全新的DGP

4.這時DGP可以用于更改特定的網(wǎng)絡(luò)參數(shù)。雖然較老版本的錢包無法驗證支持DGP的區(qū)塊,但系統(tǒng)中的新節(jié)點可以完成區(qū)塊驗證。

具體的網(wǎng)絡(luò)參數(shù)更改流程為:

1.設(shè)計DGP參數(shù)更改提案。提案中需要明確新的參數(shù)值、實施變更的起始區(qū)塊以及投票過程所對應(yīng)的區(qū)塊數(shù)量。區(qū)塊高度應(yīng)小于20,000個,投票過程應(yīng)控制在10,000個區(qū)塊之內(nèi)。若有緊急特殊情況,可以將區(qū)塊高度和投票過程控制在1,000個和500個之內(nèi)。更改提案禁止在500個區(qū)塊內(nèi)生效,以避免出現(xiàn)不必要的孤兒塊或分叉;

2.向社區(qū)公布更改提案,并收集相關(guān)反饋;

3.根據(jù)社區(qū)反饋,對更改提案進行相應(yīng)調(diào)整;

4.將最終版提案發(fā)送至DGP智能合約;

5.投票立即啟動;

6.控制節(jié)點可以發(fā)送一筆交易給DGP智能合約,表達自己的贊成或者不贊成

7.在投票過程中,若提案未獲得足夠投票或收到過多反對票,則該提案被否決,不執(zhí)行任何修改;

8.若提案得到足夠同意票,則DGP分布式自治合約將提案中的相關(guān)數(shù)據(jù)存儲在持久RLP儲存器中特殊存儲空間內(nèi);

9.錢包和區(qū)塊鏈上的所有節(jié)點可以定時檢查RLP儲存器從而判斷是否有新的更改發(fā)生,該操作并不需要通過EVM即可方便地訪問RLP數(shù)據(jù);

10.在特定區(qū)塊高度時,錢包和節(jié)點執(zhí)行參數(shù)更改。

每個DGP都有一個非常簡單的核心治理模式,包括一系列賬戶(可以是公鑰哈希地址或已部署EVM合約地址),賬戶還可在其他重大決策諸如在DGP分布式自治合約中增加或去除賬戶、調(diào)整提案通過所需同意票的最低票數(shù)等事項中起到?jīng)Q策性作用。

盡管這種治理模式看似簡單,但后續(xù)可以根據(jù)實際情況進行調(diào)整。通過移除DGP所有賬戶信息(除了單個智能合約),DGP可以將所有權(quán)限管理與治理邏輯授權(quán)給外部智能合約。這樣,外部智能合約可以部署全新的治理模型,比如通過某更改提案需要一定數(shù)量的社區(qū)投票、管理層投票以及核心開發(fā)者投票。這種治理機制可以隨時按需進行調(diào)整。

分布式自治協(xié)議(DGP)安全模型

當(dāng)然,DGP也有其限制。盡管可以Qtum量子鏈所有的網(wǎng)絡(luò)共識機制都放入一個DGP分布式自治合約,但這會消耗大量的算力資源,而且可能會導(dǎo)致系統(tǒng)性能下降。所以在Qtum的主干網(wǎng)絡(luò)中,我們只會部署幾個DGP分布式自治合約在創(chuàng)始區(qū)塊中。 此外,并非所有合約都適合放入DGP分布式自治合約中。當(dāng)Qtum量子鏈進行重大功能升級時,仍需要人工干預(yù)進行分叉。

因此,DGP機制僅適用于在安全范圍內(nèi)對特定參數(shù)進行更改。任何可能影響區(qū)塊鏈安全或針對某個特定用戶/賬號的DGP都禁止部署至區(qū)塊鏈上。

盡管DGP模型功能強大,但嚴格的部署應(yīng)用規(guī)定有助于降低DGP模型受到攻擊的可能性,也有助于控制DGP實施過程中的各類風(fēng)險。畢竟與易用性、有效性相比,區(qū)塊鏈網(wǎng)絡(luò)的安全性更為重要。

最后需要特別說明的是,每個DGP分布式自治合約都有自毀功能,用于完全禁用DGP功能。當(dāng)有重大安全漏洞發(fā)生時才會啟用DGP自毀動能。后續(xù)根據(jù)不同DGP功能,通過軟分叉或硬分叉進行功能性重建。



 

關(guān)鍵詞:以太坊Qtum