主頁 > 區塊鏈 > 可擴展區塊鏈未來技術路線和共識方案——硅谷陳小虎

可擴展區塊鏈未來技術路線和共識方案——硅谷陳小虎

2020-09-14 00:15:10 區塊鏈

中關村大資料產業聯盟秘書長趙國棟:今天咱們跨洋分享繼續請小虎同學給大家帶來一場技術的盛宴。小虎從2012年開始接觸區塊鏈,在區塊鏈領域已經遞交了30多項專利。
我提前跟小虎學習了一下。有幾個要點。
第一,就像以太坊一鍵發幣的功能類似,小虎在實作一鍵發鏈的功能。
第二,基于公鏈可以建立不同功能、不同型別的區塊鏈。
第三,公鏈,長期來看有可能成為下一代網路的基礎。
這里面涉及大量的技術問題,我們還是請小虎一一道來。
陳小虎:感謝趙國棟老師。非常高興能有機會跟大家共享區塊鏈的一些技術實踐。我們團隊最早可以追溯到6年前。從2017年開始,我們針對已有的區塊鏈技術的弱點,在我們對軟體系統,以及區塊鏈技術的深刻理解下,對可擴展的商用區塊鏈的公鏈實作,提出了獨特的設計和開發計劃。目前看起來,我們在2017年初提出的多層架構,多鏈系統,已經成為目前區塊鏈發展的重要方向。在與其他專案交流的程序中,看到越來越多的專案采用類似我們的框架。這個一方面是好事情,證明我們有很好的前瞻性,我們的努力是正確的,而且比其他的專案有了更多的發展時間。另一方面也說明區塊鏈現在是逆水行舟,不進則退,有這么多的追趕者,如果我們不努力,很快就會被超過。
這里的話特別提一下以太坊,以太坊在過去的3年中,基本上沒有值得讓人眼前一亮的技術進展。而且從目前看,按現有的技術進展,短時間內也不會有太大的突破。這是很可惜的事情,反過來講,也是我們的機會。在提出了我們自認為比較先進的架構之后,具體的實作也是非常有挑戰性的。經過團隊的不懈努力,我們在2018年四月成功地實作了主網上線,然后在此基礎上不斷拓展,基本實作了白皮書的要求。當前,我們的一個重要方向是在應用落地方面,我們與一些具有重大應用價值的應用合作,集中精力,讓它們能快速,穩定的上線。這里的例子有FileStorm,PAS專案等。后續我們的其他成員會陸續介紹。
第十八期:《可擴展區塊鏈的墨客實踐》
主持人:趙國棟
趙國棟,中關村大資料產業聯盟秘書長、國家大資料戰略1142工程副組長、現任上市公司朗新科技、富邦股份、奧維云網獨立董事、工信部專家庫成員,中國計算機學會大資料專家委員會委員,首輔智庫理事,盤古智庫發起人兼學術委員。北京郵電大學經濟管理學院特聘導師。《大資料時代的歷史機遇》、《產業互聯網》、《數字生態論》、《區塊鏈世界》、《區塊鏈與大資料》作者。
分享嘉賓:陳小虎
分享者簡介:
陳小虎:MOAC(墨客)公鏈創始人、CEO。浙江大學學士、碩士,加州大學碩士;硅谷18年以上的軟體研發和管理經驗;聯合創辦了多家初創企業;2012年起參與區塊鏈技術的研發,井通區塊鏈底層技術的發起和推動者之一;2017年推出墨客公鏈,首創多鏈分層分片架構;擅長演算法、軟體架構,具有非凡的洞察力和遠見;在區塊鏈技術領域遞交了30多項專利。
第一部分
系統鏈和應用鏈。
接下來,我會稍微具體介紹一下我們的架構,也是今天的主要內容。
先給大家看一個圖。

這是我們的雙層架構,原來叫母子鏈架構,后來應用方覺得叫子鏈不夠高大上,所以現在改稱系統鏈和應用鏈。
這種雙層架構有幾個特殊的地方:

應用鏈的生命周期是由系統鏈的智能合約來控制的。這個相當于是給應用鏈提供了一個去中心化的”上帝“的角色。這個概念很重要。因為對于一個區塊鏈來講,區塊鏈的初始化,可信的亂數,還有可信私鑰交換等等,都需要這么一個角色。如果沒有一個去中心化的,很多系統只能將就用中心化的。在這里,墨客的系統鏈能夠提供一個可編程的去中心化的“上帝”,是非常有用的。再給大家看另外一個圖。

這里就是第二個特殊的地方。
這個架構定義了一個應用鏈和系統鏈,以及應用鏈和應用鏈之間通訊的通用框架,使得應用鏈有強大的功能,同時又可以“一鍵發鏈”的方式快速部署。
這里還值得一提的是,應用鏈可以周期性地將自己的區塊哈希重繪記錄到系統鏈當中,相當于是用系統鏈錨定了應用鏈的最終性。補充一句,一鍵發鏈,主要是針對標準化的簡單應用,有點宣傳的意思在里面。這樣應用鏈即使是沒有最終性的,比如POW,POR,也就有了最終性。另外,由于系統鏈通常比應用鏈安全許多,這樣的錨定,可以大大提高應用鏈的安全性。并且由此可以衍生一些附加的功能,比如區塊鏈扁平化等。舉個例子,比如對于存盤容量比較小的應用鏈節點,可以在重繪之后,把不需要的歷史記錄洗掉,只要少量的節點記錄全部歷史即可。這樣的做法,對于IOT節點是非常有用的。這個雙層結構,非常有意思。就像DC/EP,既可以改革,還不顛覆現有格局。
我們完成了應用鏈的多種共識方式的實作。這是基于這樣一個邏輯,應用是多種多樣的,不能靠一個共識方式支撐所有應用。因此,我們提出了幾種不同的共識模式供應用方選擇:
第一個是快速合約應用鏈ProcWind,可以認為是一個通用處理器。
第二個是去中心化存盤應用鏈FileStorm,可以看成是一個去中心化的檔案存盤系統。
第三個是強亂數應用鏈RandDrop,可以看成是一個專用處理器。
第四個是物聯網應用方案IOTMist。
特別針對物聯網節點容量小(包括存盤,cpu,記憶體)的特點,采用多層(>2)的結構,應用鏈可以作為上層應用鏈的系統鏈,從而構建一個樹狀的區塊鏈系統,滿足物聯網特殊的需求。
前面三個都已經實作,最后一個還在開發中。
第四個特殊點在于,我們由此可以根據不同共識協議構建多樣性的應用。
更為重要的是,一個應用可以采用多個應用鏈來滿足需求。
由于前面提到過的統一的框架,所以,一個應用可以同時使用兩種不同的應用鏈ProcWind和Filestorm,實作應用邏輯和相關資料存盤的去中心化。物聯網這個可以做垂直4層。這樣的應用,對未來基于海量用戶以及用戶自己控制的海量資料的場景,這個框架是很合適的。可以容納10億個節點。想一想現代數字城市。
對于應用來講,降低用戶的準入門檻非常重要。現有的區塊鏈的訪問方式其實并不友好。最常見的基于智能合約的應用,用戶在呼叫任何一個功能的時候,都需要消耗一定量的gas,這樣要么用戶事先就有了一定量的token,或者應用方自動給潛在用戶事先充值。都很麻煩。墨客的應用鏈的實作可以不需要采用token,所以避免了用戶的準入門檻的問題。但是底層的系統鏈通過資源控制,可以避免應用鏈上的惡意用戶的sybil 攻擊。至于用戶說不想要token,我們的應用鏈完成可以實作。
第二部分
底層的系統鏈
接下來我想提一下底層的系統鏈。剛才講了,應用鏈可以有多種共識,而且可能有很多的應用鏈實體。那么系統鏈必須是一個有足夠安全性和去中心化的公鏈,才能支撐得起上面的大量的應用。墨客的底層公鏈采用POW的方式。因為我們認為目前只有POW滿足這樣的要求。墨客的POW采用類似于以太坊的GPU挖礦。但是所有的POW公鏈有個問題,就是如果你不是所有同質POW的老大,你很容易受到51%攻擊。具體做法就是短時間內,從其他同質POW網路中租用大量算力,對目標POW公鏈進行攻擊,得手后再退出。這種短時間的租用其實成本非常低,低的讓人驚訝。那么作為小算力的POW公鏈,我們必須解決這個問題。etc好像就是這樣被攻擊了。是的,再給大家看一個圖。

這個是我們的解決方案。具體的做法,我們創造性地采用考慮歷史權重的POW,英文是POW-HWD。這個方案的作業原理是利用:誠實的挖礦節點會持續地挖礦,而攻擊者只是愿意短時間內消耗一定資源來攻擊。因此,在考慮歷史貢獻的情況下,可以降低突然涌入的大算力的影響。
在配置合適的歷史視窗引數下,我們可以把攻擊者的成本提高100倍-1000倍。這樣,小算力的POW的公鏈也能相當程度地提高抗攻擊能力。相關的內容我們已經發表在今年7月的IEEE blockchain conference上面。
第三部分
共識方案的一些總結
最后,我再給一點新的干貨。這個是我對現有的共識方案的一些總結,也是對未來墨客發展方向的一個探索。之前都沒有公開過,這里給大家共享,大家看這個圖。

基本上所有的區塊鏈的共識協議,需要解決一個根本問題。就是用什么方式決定誰可以產生下一個區塊。可以是上帝選擇,或者輪流出塊,或者投票選取,或者是隨機選取。選用不同的方式,就對應著不同的特性。也對應著不同的功能,成為不同的鏈。比如說PBFT,問題就是訊息量太大,準入許可要求,在線率問題。POW的問題就是消耗能源,沒有最終性。但是POW有個很好的特點是抗拷貝。因為POW的算力是物理要求,不能同時復制多份。對于POS來講,就很容易復制另外一份。在這個圖里面,一個重要的資訊是不同的協議能夠適用的節點數量。目前,支撐節點數量最多,也就是最去中心化的是POW。大家看最下來兩個綠色的協議,一個是RBFT,這個是目標之一,我們希望是能夠超越Libra的Hotstuff協議。
在系統鏈這層,能夠把pow+pos同時結合起來。另外一個是SAV Protocol,這個是未來發展的方向。我們希望它能夠支持百萬以上的節點,并且不需要消耗太多的能量。這個圖大家可以體會一下,我今天的講話就到這里,謝謝大家。
第四部分
交流互動環節
趙國棟:辛苦小虎,感謝小虎的分享,的確不負技術盛宴之名。
趙國棟:大家有什么問題,可以敞開問哈,不要錯過了和硅谷大牛直接切磋的機會。
趙國棟:而且井大也一直在線,隨時補充。
井大:首創分層架構,應用鏈這里,實作了分片,而且實作了原子跨鏈,比cosmos和pokadat先落實。
群友:問題1:RBFT在容錯性上有改進嗎?
陳小虎:回答問題1:有很大的改進,而且可以解決目前Libra的準入限制和節點數量問題。
顏陽:問題2:目前,這種分層架構能否用幾個技術指標體現出它的性能?
陳小虎:回答問題2:分層架構有兩種擴展,水平擴展和垂直擴展。垂直擴展剛才井大講了,可以最多有4層,水平擴展是無限的。可以至少支持1000條應用鏈。具體的tps我就不講了。每一條應用鏈都類似于一個以太坊。可以支持多合約。
趙國棟:目前區塊鏈幾個熱點技術,都有涉及,而且取得了成果。
顏陽:問題3:分層架構體現了它的應用的靈活性,但是有的時候底層鏈需要不得不update的時候,會不會增加發布的復雜性?
陳小虎:回答問題3:應用鏈其實有一個很好的特性,應用鏈的代碼是和底層系統鏈的代碼是分開的。底層的更新不影響上層的應用。更加極端一點,應用鏈可以脫離底層單獨運行,但是就少了很多跨鏈和重繪的功能。但是神奇的是,根據需要,應用鏈可以再接回呼層。
陳小虎:補充一下,上述講的應用鏈的4種共識方式,每個都有獨立的代碼。
陳小虎:未來可以讓用戶自己定義新的共識方式。
武源文:真正面向海量應用生態的強大架構設計 。
顏陽:多層架構這樣其實解決了我們在應用程序中,還要倒回來重新修改封裝的底層的問題,對于運營來講,帶來了很大的便宜性。
陳小虎:對的。
趙國棟:咱們今天交流就結束了,謝謝小虎,謝謝井大,明天跨洋交流我們繼續哈。
陳小虎:謝謝各位的觀看。

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/28601.html

標籤:區塊鏈技術

上一篇:沈小說幣——12.6早間行情分析 多頭將至后市如何布局?

下一篇:dapp投票系統

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • JAVA使用 web3j 進行token轉賬

    最近新學習了下區塊鏈這方面的知識,所學不多,給大家分享下。 # 1. 關于web3j web3j是一個高度模塊化,反應性,型別安全的Java和Android庫,用于與智能合約配合并與以太坊網路上的客戶端(節點)集成。 # 2. 準備作業 jdk版本1.8 引入maven <dependency> < ......

    uj5u.com 2020-09-10 03:03:06 more
  • 以太坊智能合約開發框架Truffle

    前言 部署智能合約有多種方式,命令列的瀏覽器的渠道都有,但往往跟我們程式員的風格不太相符,因為我們習慣了在IDE里寫了代碼然后打包運行看效果。 雖然現在IDE中已經存在了Solidity插件,可以撰寫智能合約,但是部署智能合約卻要另走他路,沒辦法進行一個快捷的部署與測驗。 如果團隊管理的區塊節點多、 ......

    uj5u.com 2020-09-10 03:03:12 more
  • 谷歌二次驗證碼成為區塊鏈專用安全碼,你怎么看?

    前言 谷歌身份驗證器,前些年大家都比較陌生,但隨著國內互聯網安全的加強,它越來越多地出現在大家的視野中。 比較廣泛接觸的人群是國際3A游戲愛好者,游戲盜號現象嚴重+國外賬號安全應用廣泛,這類游戲一般都會要求用戶系結名為“兩步驗證”、“雙重驗證”等,平臺一般都推薦用谷歌身份驗證器。 后來區塊鏈業務風靡 ......

    uj5u.com 2020-09-10 03:03:17 more
  • 密碼學DAY1

    目錄 ##1.1 密碼學基本概念 密碼在我們的生活中有著重要的作用,那么密碼究竟來自何方,為何會產生呢? 密碼學是網路安全、資訊安全、區塊鏈等產品的基礎,常見的非對稱加密、對稱加密、散列函式等,都屬于密碼學范疇。 密碼學有數千年的歷史,從最開始的替換法到如今的非對稱加密演算法,經歷了古典密碼學,近代密 ......

    uj5u.com 2020-09-10 03:03:50 more
  • 密碼學DAY1_02

    目錄 ##1.1 ASCII編碼 ASCII(American Standard Code for Information Interchange,美國資訊交換標準代碼)是基于拉丁字母的一套電腦編碼系統,主要用于顯示現代英語和其他西歐語言。它是現今最通用的單位元組編碼系統,并等同于國際標準ISO/IE ......

    uj5u.com 2020-09-10 03:04:50 more
  • 密碼學DAY2

    ##1.1 加密模式 加密模式:https://docs.oracle.com/javase/8/docs/api/javax/crypto/Cipher.html ECB ECB : Electronic codebook, 電子密碼本. 需要加密的訊息按照塊密碼的塊大小被分為數個塊,并對每個塊進 ......

    uj5u.com 2020-09-10 03:05:42 more
  • NTP時鐘服務器的特點(京準電子)

    NTP時鐘服務器的特點(京準電子) NTP時鐘服務器的特點(京準電子) 京準電子官V——ahjzsz 首先對時間同步進行了背景介紹,然后討論了不同的時間同步網路技術,最后指出了建立全球或區域時間同步網存在的問題。 一、概 述 在通信領域,“同步”概念是指頻率的同步,即網路各個節點的時鐘頻率和相位同步 ......

    uj5u.com 2020-09-10 03:05:47 more
  • 標準化考場時鐘同步系統推進智能化校園建設

    標準化考場時鐘同步系統推進智能化校園建設 標準化考場時鐘同步系統推進智能化校園建設 安徽京準電子科技官微——ahjzsz 一、背景概述隨著教育事業的快速發展,學校建設如雨后春筍,隨之而來的學校教育、管理、安全方面的問題成了學校管理人員面臨的最大的挑戰,這些問題同時也是學生家長所擔心的。為了讓學生有更 ......

    uj5u.com 2020-09-10 03:05:51 more
  • 位元幣入門

    引言 位元幣基本結構 位元幣基礎知識 1)哈希演算法 2)非對稱加密技術 3)數字簽名 4)MerkleTree 5)哪有位元幣,有的是UTXO 6)位元幣挖礦與共識 7)區塊驗證(共識) 總結 引言 上一篇我們已經知道了什么是區塊鏈,此篇說一下區塊鏈的第一個應用——位元幣。其實先有位元幣,后有的區塊 ......

    uj5u.com 2020-09-10 03:06:15 more
  • 北斗對時服務器(北斗對時設備)電力系統應用

    北斗對時服務器(北斗對時設備)電力系統應用 北斗對時服務器(北斗對時設備)電力系統應用 京準電子科技官微(ahjzsz) 中國北斗衛星導航系統(英文名稱:BeiDou Navigation Satellite System,簡稱BDS),因為是目前世界范圍內唯一可以大面積提供免費定位服務的系統,所以 ......

    uj5u.com 2020-09-10 03:06:20 more
最新发布
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:46:47 more
  • Hyperledger Fabric 使用 CouchDB 和復雜智能合約開發

    在上個實驗中,我們已經實作了簡單智能合約實作及客戶端開發,但該實驗中智能合約只有基礎的增刪改查功能,且其中的資料管理功能與傳統 MySQL 比相差甚遠。本文將在前面實驗的基礎上,將 Hyperledger Fabric 的默認資料庫支持 LevelDB 改為 CouchDB 模式,以實作更復雜的資料... ......

    uj5u.com 2023-04-16 07:28:31 more
  • .NET Core 波場鏈離線簽名、廣播交易(發送 TRX和USDT)筆記

    Get Started NuGet You can run the following command to install the Tron.Wallet.Net in your project. PM> Install-Package Tron.Wallet.Net 配置 public reco ......

    uj5u.com 2023-04-14 08:08:00 more
  • DKP 黑客分析——不正確的代幣對比率計算

    概述: 2023 年 2 月 8 日,針對 DKP 協議的閃電貸攻擊導致該協議的用戶損失了 8 萬美元,因為 execute() 函式取決于 USDT-DKP 對中兩種代幣的余額比率。 智能合約黑客概述: 攻擊者的交易:0x0c850f,0x2d31 攻擊者地址:0xF38 利用合同:0xf34ad ......

    uj5u.com 2023-04-07 07:46:09 more
  • Defi開發簡介

    Defi開發簡介 介紹 Defi是去中心化金融的縮寫, 是一項旨在利用區塊鏈技術和智能合約創建更加開放,可訪問和透明的金融體系的運動. 這與傳統金融形成鮮明對比,傳統金融通常由少數大型銀行和金融機構控制 在Defi的世界里,用戶可以直接從他們的電腦或移動設備上訪問廣泛的金融服務,而不需要像銀行或者信 ......

    uj5u.com 2023-04-05 08:01:34 more
  • solidity簡單的ERC20代幣實作

    // SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.7.0 <0.9.0; import "hardhat/console.sol"; //ERC20 同質化代幣,每個代幣的本質或性質都是相同 //ETH 是原生代幣,它不是ERC20代幣, ......

    uj5u.com 2023-03-21 07:56:29 more
  • solidity 參考型別修飾符memory、calldata與storage 常量修飾符C

    在solidity語言中 參考型別修飾符(參考型別為存盤空間不固定的數值型別) memory、calldata與storage,它們只能修飾參考型別變數,比如字串、陣列、位元組等... memory 適用于方法傳參、返參或在方法體內使用,使用完就會清除掉,釋放記憶體 calldata 僅適用于方法傳參 ......

    uj5u.com 2023-03-08 07:57:54 more
  • solidity注解標簽

    在solidity語言中 注釋符為// 注解符為/* 內容*/ 或者 是 ///內容 注解中含有這幾個標簽給予我們使用 @title 一個應該描述合約/介面的標題 contract, library, interface @author 作者的名字 contract, library, interf ......

    uj5u.com 2023-03-08 07:57:49 more
  • 評價指標:相似度、GAS消耗

    【代碼注釋自動生成方法綜述】 這些評測指標主要來自機器翻譯和文本總結等研究領域,可以評估候選文本(即基于代碼注釋自動方法而生成)和參考文本(即基于手工方式而生成)的相似度. BLEU指標^[^?88^^?^]^:其全稱是bilingual evaluation understudy.該指標是最早用于 ......

    uj5u.com 2023-02-23 07:27:39 more
  • 基于NOSTR協議的“公有制”版本的Twitter,去中心化社交軟體Damus

    最近,一個幽靈,Web3的幽靈,在網路游蕩,它叫Damus,這玩意詮釋了什么叫做病毒式營銷,滑稽的是,一個Web3產品卻在Web2的產品鏈上瘋狂傳銷,各方大佬紛紛為其背書,到底發生了什么?Damus的葫蘆里,賣的是什么藥? 注冊和簡單實用 很少有什么產品在用戶注冊環節會有什么噱頭,但Damus確實出 ......

    uj5u.com 2023-02-05 06:48:39 more