摘要:以太坊的分片方案解析阿希鏈測鏈多鏈與跨鏈技術(shù)在阿希鏈系統(tǒng)上,每個都是運行在一條測鏈上的。也是截至目前,在其測試網(wǎng)絡(luò)上實現(xiàn)分片技術(shù)的僅有的兩個中的一個區(qū)塊鏈項目。和分片的實現(xiàn)將很大程度上改善以太坊的短板。
撰稿人: 卡酷少 kakushao
在區(qū)塊鏈所面臨的諸多問題中,區(qū)塊交易的處理速度,和區(qū)塊鏈之間的互通性都極大程度的限制了區(qū)塊鏈的應(yīng)用空間。要實現(xiàn)更快的交易確認速度,拓寬區(qū)塊鏈向外連接的橋梁,測鏈和分片都將是實現(xiàn)其作為價值網(wǎng)絡(luò)體系的關(guān)鍵方案。
本文將依托結(jié)合現(xiàn)有區(qū)塊鏈,來介紹和對比幾種測鏈跨鏈方案。
Ethereum Sharding根據(jù)V神的設(shè)想,以太坊的分片技術(shù),就是在網(wǎng)絡(luò)分區(qū)的基礎(chǔ)上,并行地架構(gòu)一條或多條分片鏈,并將交易在所屬分片鏈上,也就是主鏈外進行確認,并在固定間隔時間將分片區(qū)塊頭與主鏈同步。這樣可以有效地分散主鏈請求的壓力。
在此我們就不在做過多解釋,本公眾號之前有一篇關(guān)于以太坊分片技術(shù)的介紹,詳情請點擊跳轉(zhuǎn)鏈接。
以太坊的分片方案解析
阿希鏈 -- “測鏈、多鏈與跨鏈技術(shù)”在阿希鏈系統(tǒng)上,每個DApp都是運行在一條測鏈上的。其與主鏈的關(guān)系,一如進程之于操作系統(tǒng)。并且每條進程都跑在一個沙箱隔離機制下的JavaScript虛擬機上。阿希主鏈提供相當于底層的基礎(chǔ)設(shè)施。提供了比如數(shù)據(jù)庫的讀寫,網(wǎng)絡(luò)通信的API,以及加密的API等等支持。這種設(shè)計的好處,是測鏈的代碼和數(shù)據(jù)的獨立。這實際上也是一種天然的分片機制。類似于以太分片鏈,阿希的每條測鏈也擁有獨立的見證人和獨立的網(wǎng)絡(luò)節(jié)點。
阿希鏈在測鏈的實現(xiàn)之外,還設(shè)計了跨鏈的互操作。這主要依賴于跨鏈網(wǎng)關(guān)的實現(xiàn)。在比特幣的跨鏈網(wǎng)關(guān)通過提案系統(tǒng)的投票并上線以后,用戶就可以利用這個網(wǎng)關(guān)進行比特幣對阿希鏈的充值和提現(xiàn)。用戶首先需要在阿希鏈上完成一個開戶的動作,這個賬戶由跨鏈網(wǎng)關(guān)來維護。用戶在完成對這個賬戶充值以后,跨鏈網(wǎng)關(guān)就會調(diào)用相關(guān)的合約,在阿希鏈上對這個用戶發(fā)行一筆等值的比特幣資產(chǎn)。這個比特幣資產(chǎn)就可以像其他阿希鏈上的資產(chǎn)一樣,可以在阿希鏈的生態(tài)里流通,也可以導(dǎo)入到DApp中使用。
其他主鏈的資產(chǎn)在導(dǎo)入阿希鏈的過程中,需要經(jīng)過一個跨鏈網(wǎng)關(guān)??珂溇W(wǎng)關(guān)是一個有多個節(jié)點共同維護的多簽名地址。這些節(jié)點由提案系統(tǒng)選舉出來,各自同時維護著其他主鏈的全節(jié)點和阿希鏈的全節(jié)點。跨鏈資產(chǎn)到阿希鏈的充值、提現(xiàn)等工作都是由這些節(jié)點來完成。資產(chǎn)從原來的主鏈進入網(wǎng)關(guān)以后,會在原來的主鏈上鎖定,同時阿希鏈會解鎖一筆對應(yīng)的資產(chǎn),用于阿希鏈內(nèi)部使用。用戶可以隨時從阿希鏈提現(xiàn)到原來的主鏈,這個過程和充值的過程完全相反。這是一種通過多簽名聯(lián)盟來實現(xiàn)的雙向資產(chǎn)錨定的方案。
舉例說明,假如Alice想要用BTC向阿希鏈的Bob發(fā)起一筆價值1BTC的交易。那么,Alcie首先需要注冊一個阿希鏈賬戶,并對這個賬戶進行充值。在發(fā)起轉(zhuǎn)賬時,跨鏈網(wǎng)關(guān)調(diào)用相關(guān)合約,在阿希鏈上對Bob進行一筆等值的比特幣資產(chǎn)轉(zhuǎn)賬。(注意,這筆資產(chǎn),既不同于BTC也不同于XAS,而是一種類似于XAS-BTC的代幣。)之后這筆比特幣資產(chǎn)就可以在阿希鏈的生態(tài)里自由流通。
總結(jié)而言,跨鏈網(wǎng)關(guān)具有一定的中轉(zhuǎn)和管理功能,能夠在盡量實現(xiàn)分布式的情況下,以見證節(jié)點多簽的方式來保證交易的可靠性。在應(yīng)對交易撤銷方面,在不主張主鏈回滾的前提下,給出一天時間延時寫入?yún)^(qū)塊。是相對比較可行且完善的方案。
ZilliquaZilliqa是一個高吞吐量的公鏈平臺。也是截至目前,在其測試網(wǎng)絡(luò)(testnet)上實現(xiàn)分片技術(shù)的僅有的兩個中的一個區(qū)塊鏈項目。
Zilliqa清楚區(qū)分了狀態(tài)(state)和交易歷史(transaction history)。狀態(tài)是指當前的情況,比起存儲交易歷史,狀態(tài)存儲空間占用較小,但使用頻率較高。Zilliqa采用的方式是:每個節(jié)點擁有當前狀態(tài)的拷貝,但交易歷史將被分片。因為交易歷史使用頻率比起當前狀態(tài)要低,所以這將很大程度上減少分片引起的頻繁通信問題。
提起Zilliqua就不得不提QuarkChain。QuarkChain也是基于分片技術(shù)實現(xiàn)了高性能點對點交易系統(tǒng)。在系統(tǒng)結(jié)構(gòu)上分為兩層:分片層(sharding layer)和用于驗證前者的底層(root layer)
其在分片實現(xiàn)上與Zilliqa最大的區(qū)別:
Zilliqa只支持交易歷史的分片,但QuarkChain聲稱支持狀態(tài)和交易歷史分片
片間交易(cross-sharding)能力比起Zilliqa更強。
相比而言,首先,以太坊上實現(xiàn)分片,首先需要實現(xiàn)Casper。Casper和分片的實現(xiàn)將很大程度上改善以太坊的短板。其次Zilliqa和Quarkchain已在測試網(wǎng)絡(luò)上成功運行了分片技術(shù),但兩者的實現(xiàn)是有區(qū)別的。
Covenant SQL與傳統(tǒng)的數(shù)據(jù)庫不同,Covenant SQL是一個分布式數(shù)據(jù)庫,也是一個區(qū)塊鏈數(shù)據(jù)庫,一個哈希上鏈的數(shù)據(jù)庫。為了更便于用戶使用,Covenant SQL支持SQL-92,兼容各種現(xiàn)有SQL語言框架。Covenant SQL不涉及太多的共識機制,主要關(guān)注點是在數(shù)據(jù)上鏈存儲(hash值存儲)。
Covenant SQL的底層架構(gòu)如下圖:
在DPOS的共識下,Covenant SQL由mainer輪流出塊。其出塊邏輯大致如下:
需要注意的是,CovenantSQL并沒有直接將SQL鏈的接口暴露給客戶端。而是中間隔了一層數(shù)據(jù)庫實例。所以底層的數(shù)據(jù)相對更加安全一些。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/24507.html
摘要:屆時,將成為第一個實現(xiàn)高并發(fā)分片功能的公鏈,及目前僅有的支持多共識多虛擬機多原生代幣的公鏈。同時,可支持各種主流區(qū)塊鏈,如等。借助的影響力,生態(tài)系統(tǒng)將會迎來新生力量,可吸引全球社區(qū)中的用戶使用的預(yù)言機服務(wù)并作為節(jié)點運營商加入網(wǎng)絡(luò)。 showImg(https://segmentfault.com/img/bVbrkV2?w=1920&h=994); 各位親愛的支持者,我們很高興的正式宣...
摘要:主網(wǎng)上線時將有條分片,每年計劃可動態(tài)添加一條分片。守護者計劃只針對根鏈,各個分片挖礦難度完全由哈希算力決定。奇點上線,將成為開啟未來如群星般浩渺的區(qū)塊鏈宇宙的全新起點。 QuarkChain成立一年多以來,經(jīng)過不斷的的設(shè)計、開發(fā)與測試,今天,QuarkChain團隊正式向社區(qū)公告:QuarkChain主網(wǎng) v1.0 版 Singularity(奇點)將于北京時間2019年4月30日正式...
閱讀 1123·2021-10-12 10:11
閱讀 903·2019-08-30 15:53
閱讀 2325·2019-08-30 14:15
閱讀 2989·2019-08-30 14:09
閱讀 1228·2019-08-29 17:24
閱讀 1004·2019-08-26 18:27
閱讀 1308·2019-08-26 11:57
閱讀 2184·2019-08-23 18:23