公有鏈與Qtum量子鏈的技術(shù)革新路程是怎樣的
· 簡述了比特幣與以太坊的發(fā)展歷程、設(shè)計思想、以及目前面臨的問題;
· 闡述了Qtum量子鏈的設(shè)計思路與技術(shù)創(chuàng)新點,介紹了Qtum的賬戶抽象層、共識機(jī)制、分布式治理等主要部件的工作機(jī)制與實施方式,說明了Qtum量子鏈在開發(fā)靈活性、性能擴(kuò)展性、技術(shù)穩(wěn)定性等方面的優(yōu)勢;
· 介紹了Qtum2.0升級的內(nèi)容,對未來發(fā)展方向,如x86虛擬機(jī)、隱私資產(chǎn)、鏈云結(jié)合、智能合約Staking等做了簡單說明;
· 結(jié)合目前公有鏈領(lǐng)域的發(fā)展現(xiàn)狀,提出了對公有鏈評價的基本標(biāo)準(zhǔn),并對一些常見概念做了定義。
前言
2008年,一個名為中本聰?shù)腎D在網(wǎng)絡(luò)上發(fā)表了一篇名為“比特幣:一種點對點電子現(xiàn)金系統(tǒng)”的論文。文中設(shè)計了一套完全點對點、無需信任第三方的電子現(xiàn)金系統(tǒng),命名為比特幣。2009年初,比特幣系統(tǒng)開始上線運行,直至今日。盡管“區(qū)塊鏈”這個專有名詞在數(shù)年后才被提出,但作為該領(lǐng)域的第一個應(yīng)用,比特幣在互聯(lián)網(wǎng)上成功實現(xiàn)了一套不能被”雙花“的加密貨幣符號體系,對后續(xù)所有區(qū)塊鏈領(lǐng)域的應(yīng)用與創(chuàng)新都產(chǎn)生了深遠(yuǎn)的影響。其中,最重要的設(shè)計,如密碼學(xué)算法的應(yīng)用、共識機(jī)制、博弈機(jī)制、對等網(wǎng)絡(luò)等,也被大多數(shù)區(qū)塊鏈項目沿用至今。比特幣之后陸續(xù)出現(xiàn)了許多染色幣和在比特幣基礎(chǔ)上微創(chuàng)新的電子現(xiàn)金系統(tǒng),其本質(zhì)上都是對這套加密貨幣符號體系的改進(jìn)。隨著技術(shù)的迭代,參與這場技術(shù)與制度實驗的人也越來越多。2014年,以Vitalik Buterin為首的團(tuán)隊創(chuàng)立了以太坊,通過引入可以對符號進(jìn)行編程的智能合約和虛擬機(jī),希望除了提供標(biāo)準(zhǔn)的符號體系之外,還可以提供面向不同對象的服務(wù),成為一套通用的去中心化應(yīng)用平臺。以太坊是公有鏈這一概念的開端,也使智能合約迅速成為了大多數(shù)區(qū)塊鏈的標(biāo)配。隨后,2015年底,IBM聯(lián)合數(shù)家數(shù)據(jù)與軟件服務(wù)巨頭開發(fā)了HyperLedger系列軟件,并大力向公眾推廣區(qū)塊鏈相關(guān)技術(shù),及“許可區(qū)塊鏈”服務(wù),使”區(qū)塊鏈“這個名詞逐漸沖破原來的小圈子,進(jìn)一步被大眾所知。
1. Qtum量子鏈的起源
Qtum量子鏈開始于2016年,正是區(qū)塊鏈領(lǐng)域的技術(shù)創(chuàng)新迭出、項目百花齊放的時間。
Qtum團(tuán)隊的成員早在2012年就開始接觸、研究比特幣和其他區(qū)塊鏈項目的技術(shù),并在這個領(lǐng)域進(jìn)行了持續(xù)的深挖。直到2016年,加密貨幣市場已經(jīng)在小范圍內(nèi)經(jīng)歷了兩輪周期,以比特幣為代表的各色加密貨幣項目正如火如荼,以以太坊為代表的智能合約平臺項目也呈追趕之勢。然而,作為當(dāng)時行業(yè)中最具技術(shù)創(chuàng)新性的兩大社區(qū),比特幣和以太坊一直是割裂的,這在很大程度上阻礙了行業(yè)的進(jìn)一步發(fā)展。Qtum 量子鏈的初衷是在比特幣這套精妙的符號體系之上,增加對智能合約的支持,兼容兩個社區(qū)已有的技術(shù)積累和后續(xù)的技術(shù)創(chuàng)新,進(jìn)一步實現(xiàn)更豐富的技術(shù)演進(jìn),最終實現(xiàn)公有鏈領(lǐng)域的突破。
Qtum 量子鏈?zhǔn)鞘讉€成功在 UTXO 模型之上實現(xiàn)智能合約的公鏈項目,并且其核心協(xié)議可以在包括比特幣在內(nèi)的幾乎所有基于 UTXO 的區(qū)塊鏈項目中實施。
Qtum的設(shè)計中,最重要的幾個關(guān)鍵詞是安全、靈活、解耦、去中心化和自治。通過復(fù)用比特幣的底層架構(gòu)和以太坊虛擬機(jī)(EVM),Qtum能夠同時跟進(jìn)比特幣和EVM的所有技術(shù)更新,既具有比特幣 UTXO 模型的安全性和穩(wěn)定性,又具有圖靈完備的 EVM 帶來的無限靈活性以及豐富的配套開發(fā)工具。為了打通原本互不兼容的兩套體系,也為了未來的擴(kuò)展與迭代,Qtum設(shè)計了賬戶抽象層(Account Abstraction Layer, AAL)。AAL將UTXO的資金層與智能合約層完全解耦,一方面將UTXO抽象成EVM等虛擬機(jī)可用的賬戶形式,另一方面也為后續(xù)兼容多虛擬機(jī)并行(如WASM,Qtum x86 虛擬機(jī)等)做好了準(zhǔn)備。Qtum 采用純 PoS 共識機(jī)制,并進(jìn)一步提升了共識機(jī)制的安全性。參與共識的節(jié)點只需持有QTUM,無需特殊硬件,全節(jié)點就可以幾乎無感地運行在普通家用電腦上,參與網(wǎng)絡(luò)共識、競爭出塊、獲得獎勵。這使得Qtum常年有數(shù)千個全節(jié)點在線,是全節(jié)點數(shù)量全球第三的去中心化公鏈網(wǎng)絡(luò)。在強調(diào)去中心化的同時,Qtum實現(xiàn)了60-70TPS的性能,高于比特幣與以太坊。鑒于區(qū)塊鏈領(lǐng)域社區(qū)共識的重要性,Qtum還提出了分布式治理協(xié)議(DGP),使用智能合約對區(qū)塊鏈進(jìn)行鏈上治理,生態(tài)參與者可以通過DGP動態(tài)地修改區(qū)塊大 小、合約費用模型等重要參數(shù),實現(xiàn) Qtum 網(wǎng)絡(luò)的無縫升級,同時可以有效避免由社區(qū)分歧引發(fā)的分裂。
Qtum是在比特幣、以太坊等項目的基礎(chǔ)上提出了自己的設(shè)計。一切開源項目,甚至可以說一切發(fā)明創(chuàng)造、科學(xué)探索都是踩在前人的肩膀上前行,就算比特幣也不例外。
2. 比特幣的發(fā)展歷程
比特幣并不是中本聰從零開始創(chuàng)造的產(chǎn)物。比特幣協(xié)議的一些重要組件,如點對點通信網(wǎng)絡(luò)、非對稱加密與密碼學(xué)簽名、默克爾樹驗證等技術(shù)在此之前都經(jīng)過了多年的發(fā)展。比特幣的設(shè)計也參考了Hashcash、Bmoney等數(shù)字貨幣項目的設(shè)計思路。
比特幣的目標(biāo)是成為是“點對點現(xiàn)金系統(tǒng)”。2008年次貸危機(jī)引發(fā)的經(jīng)濟(jì)蕭條加劇了公眾對金融機(jī)構(gòu)和現(xiàn)行金融體制的不信任,而一個不可超發(fā)、不可篡改、無需信任、透明可追溯的現(xiàn)金系統(tǒng)可以在某種程度上解決金融機(jī)構(gòu)的弊病。在最初的一段時間內(nèi),比特幣及一些衍生的山寨幣確實在朝著成為支付手段這個方向努力。陸續(xù)有很多商家與機(jī)構(gòu)接受比特幣支付,并出現(xiàn)了比特幣ATM等設(shè)施,但大幅波動的價格、高昂的手續(xù)費(小額支付場景)、非常受限的處理能力和漫長的交易確認(rèn)時間等等都限制了比特幣在支付領(lǐng)域的應(yīng)用,而慢慢轉(zhuǎn)變成類似“數(shù)字黃金”的價值存儲屬性。
作為一個電子現(xiàn)金系統(tǒng),比特幣設(shè)計以安全、穩(wěn)定為首要條件,系統(tǒng)運行至今沒有出現(xiàn)過嚴(yán)重的系統(tǒng)故障和被成功攻擊的案例,這正是比特幣價值的基礎(chǔ)。但注重安全往往意味著相對保守的升級策略。十年間,除了技術(shù)層面的改進(jìn)與維護(hù)之外,比特幣協(xié)議在功能上并沒有明顯的擴(kuò)展,工作方式與性能仍與十年前類似。比特幣改進(jìn)提案(BIP)是比特幣協(xié)議升級的主要方式,然而一個 BIP 從提出到?jīng)Q定是否實施,再到最終被實施,往往需要經(jīng)歷漫長的過程,而且有可能導(dǎo)致社區(qū)分裂、產(chǎn)生分叉鏈的后果。Qtum 核心協(xié)議可以在比特幣的底層架構(gòu)上支持智能合約,理論上可以作為一個標(biāo)準(zhǔn) BIP 在比特幣核心協(xié)議上進(jìn)行升級和實施,但由于比特幣保守的升級策略,這種設(shè)想很難成為現(xiàn)實。正因為如此,Qtum 團(tuán)隊才決定重新建立一條區(qū)塊鏈以實現(xiàn)這一設(shè)想,并在系統(tǒng)內(nèi)設(shè)計了去中心化治理協(xié)議,處理網(wǎng)絡(luò)升級的決議。
比特幣的轉(zhuǎn)賬是由腳本實現(xiàn)的,系統(tǒng)會根據(jù)用戶請求,組合內(nèi)置的操作碼生成腳本,通過執(zhí)行腳本完成特定操作。所以理論上,比特幣也具備一定的可編程性,只是可完成的操作很少,而且很難操作。于是2013年,Vitalik Buterin提出了以太坊的設(shè)想,將操作腳本抽象出來并進(jìn)行擴(kuò)充,創(chuàng)造出一套功能更豐富的字節(jié)碼,在節(jié)點的虛擬機(jī)上運行,將去中心化網(wǎng)絡(luò)應(yīng)用場景從執(zhí)行轉(zhuǎn)賬腳本擴(kuò)展到執(zhí)行任意邏輯的代碼,也就是智能合約。
3. 以太坊的發(fā)展歷程
智能合約的概念由Nick Szabo于20世紀(jì)90年代初提出,指在無需信任的情況下可自動執(zhí)行的數(shù)字合約。以太坊設(shè)計了多種智能合約編程語言(其中最為流行的為 Solidity,形式類似JavaScript),以及相應(yīng)的執(zhí)行環(huán)境,EVM(以太坊虛擬機(jī))。一段Solidity代碼在編譯成功、記錄到區(qū)塊鏈上之后就成為了一份智能合約,任何達(dá)到預(yù)定條件的動作,如對合約轉(zhuǎn)賬,就會觸發(fā)合約,使其按照預(yù)定邏輯執(zhí)行。
以太坊的智能合約利用費用機(jī)制(gas model),實現(xiàn)了一定程度的圖靈完備。但由于區(qū)塊大小、費用限制和Solidity語言自身的功能性等原因,無法實現(xiàn)過于復(fù)雜的邏輯與指令。費用機(jī)制是以太坊的另一項創(chuàng)造。通過預(yù)先對EVM每個字節(jié)碼所對應(yīng)的系統(tǒng)資源消耗進(jìn)行估算,以太坊賦予了每個操作碼一個費用值(gas)。在合約運行時,調(diào)用合約者需要預(yù)先付gas費,gas消耗完后合約即停止。這種設(shè)計解決了區(qū)塊鏈上的停機(jī)問題和垃圾交易攻擊問題,保障了系統(tǒng)的正常運轉(zhuǎn)。
以太坊在2015年上線后一直在持續(xù)更新與優(yōu)化代碼,包括優(yōu)化費用模型、修改錯誤漏洞、調(diào)整挖礦難度等等。發(fā)展至今,以太坊經(jīng)歷了7次硬分叉,其中既有預(yù)定的升級硬分叉,也有為了系統(tǒng)安全和應(yīng)用安全原因而進(jìn)行的緊急分叉。后者引起過巨大爭議,造成了社區(qū)的分裂和區(qū)塊鏈的分叉,甚至直至近日,the DAO事件的隱患仍未完全解除。經(jīng)過多年的發(fā)展,以太坊的基本運行方式,即賬戶模型的單鏈區(qū)塊鏈、在EVM上運行Solidity編寫的智能合約、全節(jié)點全局驗證、PoW共識等,并沒有改變。原本預(yù)定的一些大型升級,如將共識機(jī)制改成PoS算法、分片結(jié)構(gòu)、改用eWASM虛擬機(jī)等改進(jìn)的開發(fā)進(jìn)度不如預(yù)期,且由于現(xiàn)有區(qū)塊鏈合約層與底層的緊密聯(lián)系,這些大型升級可能會導(dǎo)致以太坊需要開啟一條新區(qū)塊鏈。
經(jīng)過多年發(fā)展,以太坊周邊形成了一個較為完善的生態(tài)體系,包括核心開發(fā)者、Layer 2的協(xié)議開發(fā)和應(yīng)用開發(fā)等等。以太坊基金會還支持了團(tuán)隊對去中心化存儲和點對點通信協(xié)議等更基礎(chǔ)模塊的研發(fā)。目前這些項目大多還在開發(fā)之中,未形成規(guī)模效應(yīng),使用群體無法與以太坊相比。而且以太坊自身也面臨著新興公鏈的有力競爭。
與此同時,以太坊在去中心化應(yīng)用方面的嘗試是迄今為止相對較為成功的。從2017年爆發(fā)的募資合約,到17年末的加密貓,再到今天的MakerDAO等金融應(yīng)用,幾乎每一個應(yīng)用熱點都發(fā)生在以太坊上。這也是Qtum優(yōu)先集成EVM的原因。雖然在應(yīng)用方面已經(jīng)有了一些探索,但去中心化應(yīng)用無論是從用戶量、功能性還是用戶體驗來看都還很原始,很多在多年前就被提及的應(yīng)用場景目前實現(xiàn)起來仍然困難重重,傳說中的“殺手級應(yīng)用”尚未出現(xiàn)。其重要原因在于,當(dāng)前的去中心化應(yīng)用必須經(jīng)過全局驗證,而這種同步邏輯和現(xiàn)實應(yīng)用采用的異步邏輯往往是矛盾的,也導(dǎo)致應(yīng)用無法真正的擴(kuò)展。這是以以太坊為代表的去中心化應(yīng)用平臺面臨的困境,也是整個行業(yè)需要解決的問題。
4. 量子鏈的技術(shù)創(chuàng)新
Qtum量子鏈成功復(fù)用了比特幣和以太坊中最具創(chuàng)新性也是最有價值的部分:比特幣底層的UTXO記賬系統(tǒng)和以太坊的EVM虛擬機(jī),將比特幣的穩(wěn)定、安全與智能合約的無限靈活性結(jié)合了起來,并以此為基礎(chǔ)實現(xiàn)自身的創(chuàng)新和迭代。得益于與比特幣、以太坊良好的兼容性,Qtum 陸續(xù)發(fā)布了閃電網(wǎng)絡(luò)、跨鏈原子交換、Qtum-IPFS,Qtum-Plasma 等代表行業(yè)內(nèi)最新技術(shù)進(jìn)展的實現(xiàn)。與此同時,Qtum 也在不斷對外進(jìn)行技術(shù)輸出,反哺比特幣、以太坊等開源項目。Qtum 核心團(tuán)隊曾發(fā)現(xiàn)并修復(fù)了比特幣增發(fā)漏洞,改進(jìn)了 PoS 共識機(jī)制的安全性問題,還提出了智能合約代付手續(xù)費機(jī)制以降低使用門檻。而團(tuán)隊正在研發(fā)的隱私資產(chǎn)、云鏈結(jié)合以及智能合約 Staking 等也將對行業(yè)的進(jìn)一步發(fā)展提供技術(shù)基礎(chǔ)。
賬戶抽象層(AAL)
如第一節(jié)所述,為了將比特幣和智能合約結(jié)合起來,Qtum設(shè)計了賬戶抽象層(AAL)。AAL主要有兩個作用:一是將比特幣的UTXO模型抽象成EVM可用的賬戶模型,使EVM能在比特幣的底層上運行,執(zhí)行智能合約;二是將資金層與合約層分離、解耦,使各層的運行相對獨立,為后續(xù)的迭代、擴(kuò)展做好準(zhǔn)備。依靠這種設(shè)計,Qtum后續(xù)的x86虛擬機(jī)可以與EVM并行地運行在量子鏈上,而無需對底層協(xié)議做大幅修改,保留了良好的功能擴(kuò)展性。甚至在未來,任何基于賬戶模型的虛擬機(jī)都可以適配運行在量子鏈上。為了實現(xiàn)AAL,Qtum針對智能合約操作和UTXO操作之間的對應(yīng)與轉(zhuǎn)換進(jìn)行了大量調(diào)整與優(yōu)化,并設(shè)計了三個新的操作碼:
OP_CREATE :創(chuàng)建智能合約
OP_CALL :調(diào)用智能合約 ( 向合約發(fā)送 QTUM)
OP_SPEND :花費智能合約中的 QTUM
在產(chǎn)生新區(qū)塊時,除了對交易腳本做常規(guī)的檢查外,還需要檢查是否包含上述的操作碼。OP_CREATE 用于向虛擬機(jī)傳遞合約字節(jié)碼。OP_CALL 將 data、gasPrice、gasLimit、VMversion 等運行智能合約所需的關(guān)鍵參數(shù)通過交易腳本發(fā)送,最終傳遞到虛擬機(jī)中。OP_SPEND 則用于把合約執(zhí)行結(jié)果轉(zhuǎn)換為標(biāo)準(zhǔn)的 UTXO。通過引入上述三個腳本,Qtum 的 UTXO 模型具備了識別和處理智能合約相關(guān)交易的能力。為了保證合約狀態(tài)以及 UTXO 的共識,Qtum 的區(qū)塊頭除了包含與比特幣相同的字段外,還需要額外加入 hashStateRoot 以及 hashUTXORoot 兩個字段。更多技術(shù)細(xì)節(jié)可以參考這篇文章。
MPoS共識機(jī)制
Qtum的另一項創(chuàng)新是MPoS共識機(jī)制。作為公有鏈最為核心的部分之一,共識機(jī)制是公有鏈能夠去中心化地決定記賬權(quán)歸屬、完成交易驗證取得全局共識的依據(jù)?,F(xiàn)有的主流共識規(guī)則都存在各自的問題:PoW算法沒有進(jìn)入門檻,任何人都可以使用PC等設(shè)備進(jìn)行驗證和挖礦,但以目前專業(yè)礦場的算力水平來看,普通設(shè)備在概率上幾乎完全沒有可能取得出塊權(quán)。而且PoW算法一直被詬病無謂的消耗大量能源,對環(huán)境不友好。DPoS、dBFT等算法由于對性能的追求,去中心化程度較低。而且此類網(wǎng)絡(luò)需要高性能服務(wù)器才能成為全節(jié)點參與網(wǎng)絡(luò)驗證,想要成為出塊節(jié)點的門檻極高。
Qtum的MPoS算法改進(jìn)自PoS3.0,但傳統(tǒng)的PoS共識機(jī)制和智能合約的結(jié)合會帶來“垃圾合約”攻擊等安全隱患,無法直接用于Qtum。對此,Qtum 通過使出塊節(jié)點和其他節(jié)點分享收益并將收益延遲化,增加攻擊的成本。每個區(qū)塊獎勵由 10 個礦工平分,其余獎勵延遲 500 區(qū)塊。即 1/10 區(qū)塊獎勵立刻獲得,其余 9/10 獎勵在 500 個區(qū)塊之后連續(xù) 9 個塊中獲得。挖礦獎勵 = 區(qū)塊所得 + 手續(xù)費 + 運行智能合約 gas 費用。這個收益機(jī)制的改進(jìn)在不改變 PoS3.0 的核心邏輯的前提下,使攻擊者無法預(yù)測獲得區(qū)塊獎勵的多少,也無法立即獲得區(qū)塊獎勵,從而極大提高了發(fā)動上述“垃圾合約”攻擊的成本(僅存在理論可能性,實際操作中完全無法實現(xiàn))。
MPoS使Qtum在可擴(kuò)展性與去中心化之間實現(xiàn)了一個平衡。MPoS共識對硬件要求低,可以在幾乎所有家用電腦上運行,而對系統(tǒng)資源的占用不會影響電腦的正常操作,參與區(qū)塊生成的抵押物不是算力(硬件成本與電費),而是一定量的QTUM。相比于現(xiàn)在PoW公鏈的算力集中程度和DPoS公鏈的低節(jié)點數(shù),Qtum的設(shè)計可能更符合中本聰對去中心化網(wǎng)絡(luò)的設(shè)想。在維持了去中心化的基礎(chǔ)上,Qtum的可擴(kuò)展性也遠(yuǎn)大于比特幣和以太坊,能達(dá)到60-70TPS,有效緩解了網(wǎng)絡(luò)擁堵問題,并隨著費用模型的優(yōu)化和x86虛擬機(jī)的應(yīng)用,可擴(kuò)展性可以進(jìn)一步提高。
相對于別的有Staking功能的區(qū)塊鏈,由于Qtum的共識算法為Staker帶來了更靈活的參與與退出方式。首先參與Qtum的Staking,只需下載Qtum核心錢包,借助家用電腦即可成為全節(jié)點,參與Staking,無需信任各種服務(wù)商,也無需繳納費用。其次,UTXO模型使得參與者可以將Staking的QTUM分割成多筆UTXO,每筆UTXO在計算凍結(jié)時間時互相獨立,所以質(zhì)押投票更為靈活,只有取得出塊權(quán)的UTXO會被凍結(jié),而且凍結(jié)時間只有約17小時。因此,參與者的流動性風(fēng)險也小于市面大多數(shù)Staking項目。
分布式治理協(xié)議(DGP)
Qtum在未來還將對智能合約Staking等離線Staking手段進(jìn)行研發(fā),進(jìn)一步降低用戶參與網(wǎng)絡(luò)的門檻,并保證收益的安全性。
區(qū)塊鏈社區(qū)關(guān)于一個項目的發(fā)展方向產(chǎn)生不同意見而分裂、通過硬分叉產(chǎn)生新鏈的事件時有發(fā)生。此類不同意見大致可以分為三類:
對項目算法、功能等發(fā)展方向的分歧;
對區(qū)塊鏈某些參數(shù)的分歧;
修復(fù)關(guān)鍵漏洞、回滾。
1與3在某些情況下必須借助硬分叉才能解決,但第二類問題可以以更溫和的方式取得一致。DGP 本身的框架是通過若干部署在創(chuàng)始區(qū)塊的智能合約來實現(xiàn)的,其基本的治理結(jié)構(gòu)是這樣,在整個生態(tài)內(nèi)部的礦工(Staker)、開發(fā)者和 QTUM 持有者都是區(qū)塊鏈治理的參與者,通過投票去完成治理的過程。最終讓區(qū)塊鏈能夠?qū)崿F(xiàn)自我管理、升級和迭代。
DGP 核心邏輯的實現(xiàn),是由一系列的智能合約(包括框架合約,特性合約)組成。區(qū)塊鏈核心代碼在共識過程中執(zhí)行協(xié)議的智能合約,獲得當(dāng)前的共識狀態(tài)。同時它能通過發(fā)送相應(yīng)交易完成區(qū)塊鏈網(wǎng)絡(luò)的狀態(tài)轉(zhuǎn)換,升級無需區(qū)塊鏈網(wǎng)絡(luò)軟件更新。
目前出于安全考慮,只允許DGP對系統(tǒng)部分參數(shù)進(jìn)行治理,未來 DGP 可以不斷迭代,實現(xiàn)更多更復(fù)雜的治理?;氐骄唧w實現(xiàn),創(chuàng)世塊嵌入了常見的區(qū)塊鏈參數(shù)治理的智能合約,每個治理的主題都由獨立的框架合約控制 ( 模板 ),這意味著每個功能有獨立的治理、授權(quán)機(jī)制以及內(nèi)置限制條件 Block size, Min GasPrice, Block GasLimit, Gas Schedule。
此外 DGP 合約還具備自毀功能,能在提案治理上發(fā)生意外時啟動,治理參數(shù)退回到默認(rèn)狀態(tài)。
Qtum 2.0 以及未來方向
·Qtum 一直專注于區(qū)塊鏈底層基礎(chǔ)設(shè)施的研究,在比特幣和 EVM 的基礎(chǔ)上不斷進(jìn)行技術(shù)迭代。在主網(wǎng)穩(wěn)定運行近兩年后,Qtum暴露出現(xiàn)有系統(tǒng)和共識規(guī)則中存在的一些缺陷。為了適應(yīng)日益變化的區(qū)塊鏈技術(shù)應(yīng)用場景,Qtum 將逐步對底層協(xié)議進(jìn)行升級,推出 Qtum 2.0。
· 底層協(xié)議升級
Qtum 于 2019 年 10 月 17 日完成了 Qtum 2.0 的第一次硬分叉升級,旨在對底層協(xié)議進(jìn)行優(yōu)化,并作為后續(xù)升級的技術(shù)準(zhǔn)備。此次升級包含如下更新:
· 引入了智能合約手續(xù)費代付機(jī)制,從根本上改變了智能合約的調(diào)用和手續(xù)費支付邏輯,進(jìn)一步降低使用門檻,并豐富了其應(yīng)用場景;
增加多個實用的預(yù)編譯合約,特別是對復(fù)雜的密碼學(xué)邏輯的支持,在降低開發(fā)成本的同時擴(kuò)展了智能合約未來可應(yīng)用的范圍,如用于構(gòu)造隱· 私資產(chǎn)、智能Staking等;
· 升級了虛擬機(jī)版本,支持更多新特性,為開發(fā)者提供更強大的技術(shù)支撐;
· 改進(jìn)了難度調(diào)整算法,進(jìn)一步增強網(wǎng)絡(luò)的穩(wěn)定性。
· x86 虛擬機(jī)
x86虛擬機(jī)是Qtum項目的重要組成部分,該虛擬機(jī)的實現(xiàn)將使Qtum上的智能合約開發(fā)更接近主流編程范式。盡管以太坊的Solidity已經(jīng)擁有了很多開發(fā)者,但由于其設(shè)計上的缺陷、缺少很多通用現(xiàn)代編程語言的特性,使得開發(fā)者學(xué)習(xí)與開發(fā)成本都很高,很多想法無法實現(xiàn)。Qtum的x86虛擬機(jī)遵循與EVM完全不同的基礎(chǔ)設(shè)計,能夠更便宜地支持更多種類的通用計算。
x86是一種延續(xù)了數(shù)十年的計算機(jī)指令代碼架構(gòu),被Intel等芯片廠商廣泛使用,幾乎所有主流的編程語言和工具都是在此架構(gòu)基礎(chǔ)上實現(xiàn)的。x86 虛擬機(jī)將會自動繼承對上層語言和工具鏈的支持,從而使Qtum擺脫EVM計算空間和功能上的限制,解鎖更多特性。Qtum的x86虛擬機(jī)計劃首先實現(xiàn)Rust語言版本,并且將會陸續(xù)支持包括 Rust/C/C++ 在內(nèi)的幾乎所有主流編程語言進(jìn)行智能合約開發(fā)。
使用x86虛擬機(jī)也能為開發(fā)者提供更多標(biāo)準(zhǔn)庫,這些標(biāo)準(zhǔn)庫將以類似預(yù)編譯合約的方式存在,并且可以通過 DGP 對其費用價格進(jìn)行治理,這將極大地降低開發(fā)者開發(fā)智能合約的難度和開發(fā)運營成本。除了虛擬機(jī)的內(nèi)核之外,Qtum x86虛擬機(jī)還設(shè)計了一種存儲租用模型和新型的狀態(tài)存儲模型,為區(qū)塊鏈?zhǔn)萆怼顟B(tài)膨脹的問題在Qtum上可能還不明顯,但比特幣和以太坊的全節(jié)點已經(jīng)達(dá)到200GB以上,EOS更是超過了1TB。如果普通家用計算機(jī)無法輕松運行全節(jié)點,那區(qū)塊鏈網(wǎng)絡(luò)必然會落入少部分專業(yè)人士手中,去中心化也就無從談起。x86虛擬機(jī)設(shè)計的存儲空間租用模型將從費用模型的角度有效解決這個問題。而新型的增量狀態(tài)存儲模型使智能合約的簡單支付驗證(SPV)成為可能,未來甚至可以通過手機(jī)等移動設(shè)備實現(xiàn)完全去中心化的 Qtum 智能合約調(diào)用。此外,x86虛擬機(jī)還將支持可變長度的變量、可以利用更大的內(nèi)存空間實現(xiàn)長時間監(jiān)視區(qū)塊鏈狀態(tài)的智能合約、快速調(diào)取第三方合約狀態(tài)等更復(fù)雜的功能,將極大地豐富智能合約開發(fā)的想象力。
· 隱私資產(chǎn)
對于現(xiàn)今的大多數(shù)公鏈來說,無論是普通轉(zhuǎn)賬還是合約調(diào)用,各參與方的地址與數(shù)額、賬戶余額等信息都是透明的,十分不利于區(qū)塊鏈的商業(yè)化應(yīng)用。而現(xiàn)有的解決方案往往因為成本、效率、區(qū)塊鏈的支持程度等因素,無法大范圍地應(yīng)用。Qtum計劃通過智能合約支持隱私資產(chǎn)的發(fā)行和流轉(zhuǎn),并通過部署預(yù)編譯合約、優(yōu)化隱私證明數(shù)據(jù)結(jié)構(gòu)等方式,降低隱私資產(chǎn)相關(guān)合約在 Qtum 區(qū)塊鏈上的開發(fā)和使用成本。日前進(jìn)行的Qtum2.0的升級中,已經(jīng)部署了btc_ecrecover預(yù)編譯合約,未來還將繼續(xù)部署更多關(guān)于secp256k1橢圓曲線、Schnorr簽名的預(yù)編譯合約,進(jìn)一步降低隱私資產(chǎn)方案的部署運行成本。
· 區(qū)塊鏈+云
此外,針對目前去中心化應(yīng)用面臨的困境,Qtum還在積極探索區(qū)塊鏈與云計算相關(guān)技術(shù)的結(jié)合。區(qū)塊鏈發(fā)展到今天,仍然沒有脫離比特幣的按時間出塊+全局同步驗證的邏輯。這對于轉(zhuǎn)賬這類低交互頻率的使用方式來說問題不大,但是對于應(yīng)用平臺,可能并不是最好的方式。可以看到,一些簡單的小游戲就能將以太坊、EOS等平臺堵塞,所以在大規(guī)模商業(yè)應(yīng)用上,現(xiàn)有的公鏈平臺很難被信任。盡管現(xiàn)在有很多項目正在分片、DAG、鏈下計算方案等方向進(jìn)行探索,但仍沒有定論,都在實驗階段。Qtum 團(tuán)隊認(rèn)為,區(qū)塊鏈為應(yīng)用帶來的最重要特性并不是“去中心化”,而在于以下三個“區(qū)塊鏈特征”:
賬戶、地址、資金和身份“四位一體”的權(quán)限管理機(jī)制;
自帶一套天然的清結(jié)算網(wǎng)絡(luò);
激勵機(jī)制和流動性帶來的高速增長。
而這些,正是現(xiàn)有的所有互聯(lián)網(wǎng)應(yīng)用所缺少的特性。現(xiàn)有的大多數(shù)互聯(lián)網(wǎng)應(yīng)用都部署在云上,而且在可以預(yù)見的未來,部署在云上的應(yīng)用仍將是主流。如何將上述的區(qū)塊鏈特征與部署在云上的應(yīng)用進(jìn)行融合,將是區(qū)塊鏈應(yīng)用能否真正落地的關(guān)鍵,也是突破去中心化應(yīng)用困境的最可行方案。
· 智能合約 Staking 機(jī)制
在標(biāo)準(zhǔn)的 PoS 系統(tǒng)中,參與 Staking 的節(jié)點必須保持在線,Qtum 也不例外。但節(jié)點在線的弊端在于,首先對于普通用戶,雖然他們可以在自己的個人電腦上進(jìn)行 Staking,但在不租用服務(wù)器的情況下,很難保證 24 小時在線,從而很難保證收益,長此以往會影響其參與 Staking 的積極性,從而降低網(wǎng)絡(luò)去中心化程度;而對于“大戶”,即持幣較多的 Staker,他們對于把大量的幣始終放在熱錢包也有安全上的顧慮。純 PoS 機(jī)制下的公鏈也存在礦池,雖然礦池有較高的安全性,但用戶必須把幣轉(zhuǎn)給礦池才能由其代為 Staking,這使用戶喪失了對幣的控制權(quán),既有損失本金的危險,又有使網(wǎng)絡(luò)降低去中心化程度的風(fēng)險。而一些項目采用的代理共識機(jī)制,如 dPoS,dBFT 等,本質(zhì)上更接近中心化網(wǎng)絡(luò),而且普通用戶代理給超級節(jié)點的幣所獲得的收益也得到通過鏈上邏輯的保證,而是根據(jù)約定在鏈下分配收益,這無疑也帶來了很大的不確定性。
Qtum 正在研發(fā)的智能合約 Staking 機(jī)制能很好地解決上述問題。普通用戶可以將 Staking 的權(quán)利代理給專門的 Staking 智能合約,從而無需保持自己的節(jié)點在線,而且始終有對自己代幣的控制權(quán)或提幣權(quán);大的 Staker 也可以將幣的 Staking 權(quán)利托管給合約,而將幣保存在安全的冷錢包里;所有托管用戶的收益都是由智能合約在鏈上進(jìn)行分配的,不存在中心化礦池的風(fēng)險。不僅如此,由于智能合約是可編程的,這種機(jī)制將為 Staking 帶來更多的靈活性,收益方式、回報方式都可以通過合約邏輯進(jìn)行控制,無需第三方介入,用戶可以選擇適合自己的合約進(jìn)行托管,也可以部署自己定制的 Staking 合約。
5. 公有鏈的評價標(biāo)準(zhǔn)
公有鏈,或者說無需許可區(qū)塊鏈,目前仍處在野蠻生長的階段。對于不同共識機(jī)制、不同應(yīng)用場景的公有鏈很難找到統(tǒng)一的指標(biāo)來衡量彼此之間的優(yōu)劣。但是從第一性原則出發(fā),結(jié)合公有鏈在區(qū)塊鏈?zhǔn)澜缰谢A(chǔ)設(shè)施的定位,我們可以總結(jié)出一些基本標(biāo)準(zhǔn)作為評價公有鏈的參考:
成為全節(jié)點的門檻。公有鏈的一個重要特性就是加入無需許可,這也是其去信任和安全性的來源。像比特幣,雖然目前家用PC取得出塊權(quán)的概率很低,但仍然存在一定可能性。如果項目對網(wǎng)絡(luò)進(jìn)入門檻設(shè)置過高,普通用戶無法參與,或者由于技術(shù)原因參與成本很高,則勢必造成網(wǎng)絡(luò)去中心化水平不高,對系統(tǒng)的安全性和用戶對系統(tǒng)的信任造成一定的威脅。
網(wǎng)絡(luò)內(nèi)的全節(jié)點數(shù)量。對于區(qū)塊鏈來說,網(wǎng)絡(luò)內(nèi)全節(jié)點的數(shù)量是衡量網(wǎng)絡(luò)規(guī)模的一個重要指標(biāo)。在互聯(lián)網(wǎng)領(lǐng)域有著名的梅特卡夫定律,提出網(wǎng)絡(luò)的價值與網(wǎng)絡(luò)內(nèi)節(jié)點的平方成比例。而區(qū)塊鏈網(wǎng)絡(luò)內(nèi)的全節(jié)點就是最重要的一類節(jié)點,全節(jié)點數(shù)量代表網(wǎng)絡(luò)背后的社區(qū)規(guī)模,并一定程度上與網(wǎng)絡(luò)安全性相關(guān)。
全局 TPS。Qtum創(chuàng)始人帥初曾經(jīng)提出過一個概念叫做Global TPS,將網(wǎng)絡(luò)內(nèi)全節(jié)點數(shù)與系統(tǒng)的TPS相乘,得到一個綜合衡量區(qū)塊鏈系統(tǒng)去中心化程度和處理能力的指標(biāo)。相比于純粹測試TPS,GTPS對于公有鏈來說可能更有意義。畢竟除去去中心化、點對點的開放網(wǎng)絡(luò),以區(qū)塊鏈系統(tǒng)的高冗余度來與傳統(tǒng)分布式系統(tǒng)比拼處理能力毫無意義。
治理方式。治理方式?jīng)Q定了通證持有者與項目之間的關(guān)系、項目前進(jìn)方向的決定方式等重要問題,并對凝聚社區(qū)共識意義重大。目前常見的治理方式有QIP類的提議治理、鏈上投票治理和相對中心化的鏈下自治組織治理等。如果沒有合理且明確的方式將通證持有者的訴求與項目發(fā)展進(jìn)行結(jié)合,協(xié)調(diào)礦工、開發(fā)者、用戶等社區(qū)成員的意見,輕則項目失去前進(jìn)動力、進(jìn)度緩慢,重則產(chǎn)生分裂,通證失去價值,不利于項目的長期發(fā)展。
通證分布與激勵方式。分散的通證分布和明確且公平的激勵機(jī)制有利于形成社區(qū)共識。明確的通證總量和分發(fā)方式是比特幣成功的要素之一,這也適用于一切公有鏈項目。如果通證集中在少數(shù)人手中,則容易形成對通證價格和項目前進(jìn)方向的操縱,難以形成社區(qū)共識。
資金的安全性和穩(wěn)定性。這個需要代碼經(jīng)歷長時間的考驗和審計和迭代,這個是公鏈的根基。并不是一種新的共識機(jī)制或者一個新的虛擬機(jī)就是好的,對于涉及用戶的資金的設(shè)計,需要長時間的考驗。某種意義上 BTC 的一部分的價值來源正在于經(jīng)歷了時間的考驗沉淀出來的價值。
平臺的靈活性和可擴(kuò)展性。一個面向的應(yīng)用的公有鏈,需要智能合約來提供無限的靈活性、無限的可拓展性,Qtum也在規(guī)劃相應(yīng)的方案,目前行業(yè)里面沒有一個平臺實現(xiàn)無限的可拓展性。
去中心化、無需許可,是區(qū)塊鏈能夠去信任的基礎(chǔ),如何在這個基礎(chǔ)上進(jìn)行創(chuàng)新,提升功能與性能,開發(fā)出有意義的應(yīng)用形式,則是所有區(qū)塊鏈開發(fā)者需要共同思考的問題。
6. 概念定義
比特幣
第一個成功的點對點對等電子現(xiàn)金體系,全球社區(qū)期望未來成為電子黃金體系。
加密貨幣
上世紀(jì) 90 年,密碼朋克精神的延續(xù),構(gòu)建最小化信任依賴的密碼貨幣,服務(wù)于所有注重隱私和個人權(quán)利的互聯(lián)網(wǎng)用戶。BTC (比特幣)是加密貨幣的一種。
區(qū)塊鏈
IBM 是這個概念的功臣,2015 年,IBM 出于商業(yè)目的大力宣傳聯(lián)盟鏈(Permission Blockchain)和區(qū)塊鏈(Blockchain)的概念,是一個泛指概念。
公有鏈
起于以太坊,希望一個網(wǎng)絡(luò)除了提供一套標(biāo)準(zhǔn)的符號體系之外,還可以提供面向不同對象的服務(wù)。一個理想的公有鏈平臺,需要加入網(wǎng)絡(luò)節(jié)點無門檻和服務(wù)接入無門檻。另外上面運營的服務(wù)要有價值。依此標(biāo)準(zhǔn),行業(yè)基本上沒有面向大眾市場的公有鏈。但是有很多不同的“符號”發(fā)行網(wǎng)絡(luò)。
無幣區(qū)塊鏈
應(yīng)該指交易符號不具備投機(jī)性的區(qū)塊鏈網(wǎng)絡(luò)。該網(wǎng)絡(luò)中的交易符號,只具備約定價值,其價值來源于鏈外信用的映射。
區(qū)塊鏈核心技術(shù)
最初含義是指 Hash Pointer,哈希指針,目前泛指整個行業(yè)。指維護(hù)一個分布式對等網(wǎng)絡(luò)所涉及的關(guān)鍵技術(shù)。如密碼學(xué)、共識算法、虛擬機(jī)技術(shù),博弈機(jī)制,對等網(wǎng)絡(luò)等技術(shù)。
區(qū)塊鏈價值
構(gòu)建信息時代的分工協(xié)作基礎(chǔ)設(shè)施?,F(xiàn)實資產(chǎn)和有價證券會先在無幣區(qū)塊鏈上流轉(zhuǎn)和交易。因為其信用,依然來自于現(xiàn)實世界的信用注入。不依賴現(xiàn)實世界信用注入的是 有幣區(qū)塊鏈網(wǎng)絡(luò),現(xiàn)在依然處于非常初級的階段,目前來看也非常難以成為真正的公有基礎(chǔ)設(shè)施,但是這個方向在不斷演進(jìn)和創(chuàng)新。這里的公有基礎(chǔ)設(shè)施指:比如把一個城市所有的商品和財政信息放在這個網(wǎng)絡(luò)上。
幣
借助于 Hash 指針和中本聰 PoW 共識,我們可以在互聯(lián)網(wǎng)上創(chuàng)建一套不能雙花的符號體系,后面很多項目對這一套符號體系進(jìn)行了改進(jìn),引入了可以對符號進(jìn)行編程的虛擬機(jī)。目前看來很多符號體系在全球范圍內(nèi)都有或大或小的共識。但是幣,更多是一種法律意義,和基于計算機(jī)的符號體系是否先進(jìn)沒有任何關(guān)系。