INB公鏈將於10月10日上線主網,近300專利加持,做公鏈的集大成者

買賣虛擬貨幣

 Insight Chain(INB)於2019年9月9日9點9分發布訊息,將於2019年10月10日10點10分上線INB公鏈主網,完成從測試網到主網的升級,自此INB將實現公鏈主網的跨越,並繼續在公鏈技術和生態上進行研究和實現。

 INB在2018年底完成了從應用鏈到公鏈的轉型,從『去中心化調研生態鏈』的定位升級為『無限擴充套件的大資料生態公鏈』。INB公鏈的核心目標有兩個:在滿足去中心化和安全性的前提下提高可擴充套件性、滿足更多應用的業務資料上鍊需求。實現每秒10萬以上(100,000+TPS)的交易資料處理能力,以及每秒100萬以上(1,000,000+TPS)的業務資料處理能力。實現業務資料的結構化上鍊,形成鏈上經濟體,使業務資料像交易資料一樣可信、不可更改。

 INB團隊已經申請近300個區塊鏈技術發明專利,花費近千萬,在專利方面已經有提前行業至少2年的佈局,希望透過專利將自己對區塊鏈技術和行業的研究與實現、以及可能涉足的行業和場景進行保護。CTO吉建勳先生負責INB專利戰略的制定和執行,帶領技術團隊、生態團隊、研究團隊和智慧財產權團隊在研究、設計、開發INB公鏈和生態應用的同時,完成專利戰略的規劃、設計和執行。同時,Insight Chain計劃發起區塊鏈專利聯盟,把所有專利授權聯盟內企業免費使用,傳承區塊鏈公開、共享的精神,以促進區塊鏈技術和生態的可持續發展。

 Insight Chain的願景是透過區塊鏈技術,讓人人都擁有可信的數字賬戶,一個由數字貨幣資訊和資料資產資訊組成賬戶,基於數字賬戶構建起人人參與的經濟體,在經濟體中實現資料流通和貨幣流通的閉環,實現經濟價值基於數字賬戶的再分配。

1INB公鏈的可擴充套件性分層模型

 公鏈的不可能三角問題一直是近幾年來研究的熱點,許多公鏈從共識、分片、子鏈等不同方面對公鏈進行改進,但是又在去中心化、安全、可擴充套件性三者中留下或多或少的問題。例如以太坊的TPS不高、EOS的去中心化不足等問題,都無法完全滿足人們對公鏈的預期,也無法支援大規模的應用落地。INB公鏈在自有創新的基礎上,對layer 0、Layer 1、Layer 2三層都進行了改進,以克服區塊鏈的不可能三角,堪稱公鏈的集大成者。

2 Layer0(資料傳輸)的創新

INB公鏈在Layer 0(資料傳輸)層改進的思路主要有兩個:減小資料傳輸的內容和頻次、改善網路拓撲結構。

首先是網路利用率自適應模型,INB公鏈將透過技術手段衡量整個公鏈的網路利用情況,以自動將對公鏈的各種分片個數、傳輸情況進行控制,達到最大化地利用網路。

其次是區塊的分片,INB公鏈上將應用一種區塊打包和驗證的分片方法,如果每個區塊的資料量很大,區塊的打包、驗證以及網路傳輸都很耗時,會將每個塊利用VRF隨機抽籤機制進行分片併發給不同的節點進行打包和驗證,以最大化的提高節點的利用率和網路利用率,降低處理時間。同時,此種隨機抽籤將由其它節點進行驗證,防止作弊發生。

最後是網路拓撲結構的最佳化,包括利用動態規劃確定出塊順序和利用Floyd演算法改進Kademlia網路兩個方面,下面將進行詳細論述。

動態規劃確定出塊順序

在每輪出塊之前,都要提前確定出塊的超級節點分片的順序,以能最快的同步區塊資料,此問題可以描述為:已知任意兩個節點的距離,求如何從一個節點遍歷所有節點路徑最短的問題,也就是TSP問題(Traveling Salesman Problem,旅行商問題),INB公鏈引入動態規劃演算法解決該TSP問題。

Floyd演算法改進Kademlia網路

在INB公鏈中,主要由超級節點、驗證節點等節點組成,這些節點構成了一個Kademlia (簡稱KAD)網路,在所有節點均儲存著其它超級節點的位置等資訊,和傳統的KAD不同的是,INB公鏈中儲存了任意兩個節點的距離資訊,並且引入Floyd演算法提高節點之間資料傳輸的效率,利用Floyd選擇此節點到其它節點的最短路徑進行通訊,從而提高網路效率。

3Layer1(核心協議)的創新

INB公鏈在Layer 1(核心協議)層的改進思路主要有:共識演算法、分片、業務資料結構化上鍊、增加世界狀態、虛擬機器最佳化和引入Schnorr簽名演算法。

aVDPoS共識演算法(全球首創

INB公鏈提出了一個全新的共識演算法:VDPoS(Validated DPoS)演算法,該演算法是DPoS+BFT+驗證節點的有機結合。DPoS演算法中的投票解決了PoW演算法資源被大量無用消耗的問題,並且使用INB的抵押和懲罰機制,很大程度上限制了節點的作惡。區塊產生以後,首先在超級節點內部利用BFT演算法進行快速驗證,同時超級節點利用VRF演算法尋找多個隨機驗證節點,驗證節點也使用BFT演算法對塊資料進行非同步驗證,以防止超級節點和驗證節點的聯合作惡,極大地提高了公鏈的去中心化程度和安全性。

使用VRF選擇驗證節點

VRF 的全稱Verifiable Random Function(可驗證隨機函式),VRF由於其隨機性和隨機的可驗證兩個特徵在區塊鏈中的應用比較多,INB公鏈利用VRF隨機抽籤機制從所有驗證節點中選擇部分驗證節點對區塊進行驗證,既保證了驗證節點選擇的隨機性又防止了超級節點和驗證節點聯合作惡。INB公鏈在VRF的實現方式和應用上有很多創新,且已經針對其申請了專利。

同時,DPoS共識也對區塊進行了最佳化,例如增加了區塊大小的限制、減小了出塊時間和區塊確認時間。

bVDPoS共識的分片(全球首創)

INB公鏈根據公鏈的資源利用率對超級節點進行自動分片,分片以後每個分片相當於一個單獨的超級節點,稱為超級節點分片,21個超級節點中各取一個分片構成了一個主鏈,從而形成了多主鏈平行執行的架構。

在INB公鏈中,假設每一條主鏈的出塊時間為2秒,多主鏈的出塊時間有『2/分片個數』的差距,並且在2秒內,每個主鏈的超級節點分片都會出塊一次,形成多主鏈連續出塊機制,在此2秒內出塊的分片均不在同一個超級節點上,從而最大化的利用了網路和超級節點資源。例如在每個超級節點進行20分片的情況下,每隔0.1秒整個主鏈就會出塊一次,比傳統的DPoS演算法TPS提高了20倍,並且大大縮短了等待時間,示意圖如下所示。採用此種機制主鏈在現有條件下將實現每秒10萬級以上(100,000+TPS)的交易資料處理能力,並且會隨著節點和網路能力的提升而逐步提升。

公鏈利用率模型

為了衡量整個公鏈的資源利用情況,INB公鏈提出公鏈利用率模型的概念:INB Utilization Model,簡稱IUM,該資源包括:超級節點的CPU和記憶體資源、網路資源。由於整個公鏈的執行效率跟IU正相關,當IU很小時,應該充分利用公鏈資源以提高可擴充套件性。基於此概念,INB公鏈提出根據IU的大小自動調整超級節點的分片數量和子鏈驗證區塊的高度間隔,以充分利用整個公鏈的資源,提高TPS。

c業務資料結構化上鍊(全球首創)

業務資料的結構化上鍊是INB公鏈的一大優勢,不同於傳統公鏈專案僅將資料內容上鍊,並沒有將資料的屬性和過程上鍊,無法真正保證資料的可信。同時上鍊的資料並不是結構化的,不能表達資料之間的關聯、屬性和資料之間的關聯等資訊,在INB公鏈中使用業務資料的結構化上鍊方式,業務資料可以透過鏈本身進行自解釋,不再需要透過第三方應用對非結構化的資料進行解釋,真正實現了資料的可信、確保了資料的價值傳遞。結構化的業務資料在鏈上使用Trie進行儲存,提高存取的效率。

d世界狀態:餘額、資料、Token和投票(全球首創)

傳統公鏈將除餘額以外所有的世界狀態都用智慧合約來儲存,例如以太坊的Token狀態都儲存在Token的智慧合約中,此種儲存方式有一個很大的問題是:每個使用者Token餘額的變化都將導致所有使用者餘額資料的重寫,當使用者量很大的時候每次重寫的資料量是鏈所不能承受的。INB公鏈採用Trie的結構來儲存餘額狀態、資料狀態、Token狀態和投票狀態,每個狀態的變化都只會造成該狀態所在Trie節點的資料重寫,極大地提高了儲存效率、節約了儲存空間。

INB交易引擎

INB公鏈提出另外一個大幅度降低節點資源消耗的方式:將傳統公鏈中Token的智慧合約從智慧合約業務中剝離出來,利用簡潔的指令碼語言的方式來執行,稱為INB交易引擎(ITE, INB Transaction Engine)。在以太坊上,有很大比例的智慧合約是Token的發行合約,至少有一半以上的交易是ETH和Token的交易,透過啟動虛擬機器呼叫智慧合約的方式來執行,消耗的系統資源非常多,而使用INB交易引擎來執行,將能極大的降低資源消耗,在Token的交易、驗證的時候都將節約很多系統資源和時間。

e虛擬機器的最佳化

INB公鏈會支援圖靈完備的智慧合約,將透過全新的虛擬機器(IVM, INB Virtual Machine)來支援智慧合約,IVM將使用WebAssembly(WASM)方案來實現,這意味著開發者可以使用任何熟悉的程式語言來開發智慧合約,並且有著更優越的效能。

而且,INB將對IVM的儲存結構等方面進行最佳化,以提升虛擬機器的執行和儲存效率。例如將使用Trie結構對虛擬機器的Map等變數內的資料進行儲存,Map中的每一個Key都作為Trie的一個節點來儲存,這樣就不需要像之前Map中的每個資料變化的時候都需要重新重新整理整個Map對應的節點資料,極大地提升了虛擬機器的執行和儲存效率。

fSchnorr簽名演算法

INB公鏈引入Schnorr簽名演算法以改進傳統的ECDSA簽名存在的一些問題,以提高INB公鏈的效率、節約儲存空間以及支援多籤功能。

  • 效能方面:可以大大減少驗證簽名的成本。對於傳統的單個簽名的交易,Schnorr的效率就要比ECDSA的高很多。對於多籤交易,原本需要進行多次的驗證,而聚合簽名僅需驗證一次,也大大提升了驗證簽名的速度;

  • 交易大小:Schnorr將多個簽名聚合為一個簽名,可以大大減少多重簽名的空間佔用,顯著降低對於網路傳輸消耗的頻寬;

  • 隱私:使用 Schnorr 聚合簽名可以提高鏈上資料的隱私性。對於驗證者來講,聚合簽名看起來和普通的 Schnorr 簽名並無區別,無法分辨這一筆交易是普通的交易還是一筆多籤交易,而參與交易的使用者的公鑰和簽名都不會暴露出來。

  • 4Layer2(協議擴充套件)的創新

INB公鏈在Layer 2(協議擴充套件)層改進的思路主要有三個:引入多子鏈架構、跨鏈和鏈上資料的高效查詢。

a多子鏈架構

INB公鏈使用多主鏈+多子鏈(Multi-Main Chain + Multi-Child Chain,簡稱MMC + MCC)的混合架構,為全球第一個使用此種混合架構的公鏈。根據整個公鏈的資源利用情況自動對超級節點進行分片,形成多主鏈並行出塊模式,充分利用網路資源和超級節點資源,極大的提高出塊速度,增加公鏈的垂直擴充套件性。同時在主鏈之上可以根據應用的使用情況,啟動多條子鏈,以支援更多的DApp業務資料上鍊,增加公鏈的水平擴充套件性。

子鏈由DApp或者社羣發起啟動子鏈的提案,並選擇合適的共識演算法,子鏈可以採用BFT類聯盟鏈的共識機制,也可以採用PoW、PoS、DPoS等公鏈共識機制,根據不同的DApp對資料上鍊的效率、安全性等不同的需求而選擇不同的共識演算法,主鏈不對子鏈的共識機制作限制。子鏈啟動提案由超級節點進行投票,投票同意啟動以後,公鏈將自動啟動一個子鏈智慧合約,用來對子鏈進行管理,然後等待滿足條件的子鏈節點的加入以啟動子鏈。

子鏈的完整資料儲存在子鏈的節點上,並且為了保證安全、可信,子鏈會把資料的驗證資訊儲存到主鏈上用來做子鏈資料的驗證。子鏈在產生一定數量的區塊以後,會將該部分割槽塊對應的默克爾樹的樹根儲存到主鏈的區塊上,以保證子鏈的安全和可信,對應的子鏈上的區塊稱為驗證區塊。

b跨鏈(外部公鏈的互動)

對於和其它公鏈的跨鏈,INB公鏈使用狀態通道的解決方案,INB公鏈提供一系列原生的狀態通道智慧合約,每個智慧合約對應一條公鏈以及公鏈上對應的幣的對映。例如對於BTC,INB公鏈將提供一個BTC跨鏈狀態通道智慧合約、一個接收BTC的賬戶和IBTC代幣,其中的IBTC代幣為BTC在INB公鏈的1:1對映。當使用者將BTC存入該接收BTC的賬戶以後,該智慧合約將自動給使用者分配等量的IBTC代幣,該IBTC代幣的交易代表了真正BTC的交易,當使用者想取回BTC的時候,把IBTC返回給智慧合約,智慧合約將自動把賬戶的BTC打給使用者指定的賬戶。

c鏈上資料的高效查詢

由於業務資料的資料量十分龐大,INB公鏈將利用快取機制、NoSQL等提供更快速的鏈上資料查詢方式,真正滿足億級網際網路應用的使用需求。

INB公鏈的創新點很多,限於篇幅本文只是做了簡單的介紹,後續還會有系列文章做深入的解讀,還原一個公鏈3.0時代的真正代表給大家。

相信, INB公鏈在主網上線以後,由於其高度的可擴充套件性和業務資料上鍊能力,必將提高行業內公鏈的整體技術水平,極大地促進『區塊鏈+』的落地,區塊鏈應用的百家爭鳴時代即將到來,眾多殺手級應用也會自此種下種子,慢慢萌生為參天大樹,將區塊鏈技術帶入平民百姓家。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;