『壹』 區塊鏈之聯盟鏈(三) 認識Fabric
Fabric 是超級賬本聯盟推出的核心區塊鏈框架,它適合在復雜的企業內和企業間搭建聯盟鏈。根據超級賬本聯盟的目標, Fabric 被建設為一個模塊化的、支持可插拔組件的基礎聯盟鏈框架。;
與以太坊系的Quorum不同,Fabric從一開始就只考慮企業間的應用。其獨有的channel概念,將企業根據業務目的不同以不同的子網連接起來, 每一個子網對應一個channel,而每個channel有自己獨立的區塊鏈。而Quorum很顯然是只有一個公網(所有企業節點都加入進去),企業與企業間的私有業務是通過Private Manager 完成的。
理解channel的最簡單方法就是,將它類比為一個消息服務提供的Topic,實際上Fabic最早就是基於Kafka 的分布式消息服務來實現。
在Fabric網路中,一個企業可以有一個或多個節點加入整個聯盟鏈;一個企業可以加入1個或者多個Channel(子網); 一個節點可以加入1個或者多個channel。每個channel構成一個子網,所以Fabric 是 一種由子網組成的網路。
那麼Fabric是怎麼實現智能合約的執行和完成業務上鏈(將事務結果記錄在區塊鏈里)的呢?
與其它框架不同, Fabric 將整個過程分成了三個階段:
業務背書階段 : 客戶的請求發送的背書節點,通過智能合約完成業務的計算(但不更新狀態),並完成背書;將背書結果返回個客戶端。
業務的排序階段 : 客戶端將背書結果通過Channel被發送到排序節點(orderer),在排序節點完成事務的排序,並打包到block里,最後下發給所有連接到channel的節點。
業務驗證並寫入賬本階段 : 通過Gossip 網路,所有Channel的節點都會接收到新的block,節點會驗證block中的每一個事務,確定是否有效:有效地將會跟新world state,無效的將會標志為「無效」,不會更新World state,但整個block會被完整的加入到帳本中(包括無效的事務)。
根據以上的描述,Fabric 節點實際可以分為 ,普通節點和Order節點:
Peer, 普通節點, 完成背書(包括只能合約的執行)和驗證.
orderer, 排序節點,完成排序。
加入orderer節點的Fabric網路可以被描述如下:
每一個Channel,都定義了所有屬於channel的節點,但是並不需要所有節點都連接到Orderer 節點(節點間可以通過gossip 協議通訊來傳播私有數據或事務).
在區塊鏈中,共識是區塊鏈的基礎。與公有鏈不同,聯盟鏈的共識要求所有加入賬本的事務是確定的、最終的,也就是不可以有分叉,區塊與區塊間的順序是一定的,只存在唯一條鏈。在Fabric 中,這個客觀需求正是由排序實現的,所有的事務將被提交給orderer節點獲得確定的順序,並最終打包成block進入帳本。 Fabric 從1.4.1開始支持基於Raft實現排序服務, 可以認為基於Raft實現共識。
基於RAFT的排序服務相對於早期的Kafka 具有更好的分布性,配置更加簡單,是聯盟鏈里常用的一個常用的達成共識的演算法,Quorum就 默認使用RAFT作為共識層。簡單的說,RAFT是一個leader和follower的模式, 所有加入RAFT網路的節點,任意時候都有一個leader, 只有這個leader有權決定事務的順序,並打包成Block,其它節點只能作為follower提交事務和同步block。
基於FAFT網路,每個企業可以有一個或多個節點參與到Orderer中去。在Frabric中企業間的網路連接可以變化成如下形式:
區塊鏈的使用用戶在乙太網中被稱作EOA(External of Account), EOA的載體是錢包。我們沿用這個概念,來看看Fabric是如何實現用戶和發起事務的。Fabric中EOA是一個CA中心發布的certificate(x.509),一個Certificate代表一個Identity(這與以太坊還是有很大區別的, 以太坊中一個EOA其實是一個hash地址),EOA能夠參與的channel以及被授權的操作是有channel的MSP( Membership Service Provider)決定的(如下圖)。
註:certificate 是一種密碼學上驗證身份的通用做法; certificate包含了個人的信息,公鑰以及發布這個certificate的CA的簽名。驗證方只需要擁有這個CA的證書(包含CA的公鑰),就可以驗證這個簽名是否正確,certificate的內容是否有篡改。簡單的說,通過CA和Certificate,我們可以獲得一個可驗證的的身份和信任鏈。
如上圖,fabric中通要使用Wallet作為EOA的載體,一個Wallet中可以包含多個Identity(x.509 certificate)。 Identity 通過 CA提供的信任鏈來驗證正確性。
驗證了身份之後, Fabric 通過MSP在區塊鏈網路中解決該身份是否代表組織的成員和在組織內具有什麼角色。例如,channel首先會驗證當前用戶Identity是否是有效地身份,然後通過MSP查看其所處的企業和具有的角色,最終確定該用戶是否有權執行操作。
可以說,Fabric的訪問控制是通過MSP來完成的。在每一個需要訪問控制的地方都需要定義一個MSP。 例如,每個channel都定義一個MSP,這個MSP規定了在channel范圍內資源的訪問許可權。 MSP 是Fabric里一個晦澀難懂的概念,也是其賦予企業間安全訪問的基礎。
前文提到, Fabric 將業務處理和上網分成了三個部分, 背書,排序,驗證後加入賬本。
其中背書是Fabric執行智能合約的階段。以太坊中,智能合約是在EVM中執行的,有多種語言支持。 在Fabric,智能合約被稱為chaincode: 一個chaincode 可以理解為是智能合約的容器,可以包含一個或多個智能合約, 不用於EVM, chaincode是在 JVM 或NodeJS中執行。
客戶應用程序通過智能合約來訪問賬本,每一個可訪問的智能合約都被安裝在客戶端可以訪問的節點上,並被定義在channel里。(有隻能合約的節點被稱為背書節點,沒有隻能合約的節點被稱未提交節點,提交節點只維護賬本)
客戶應用提交一個交易請求, 請求到達背書節點, 背書節點首先會驗證客戶的簽名,確保客戶的身份有權執行本次交易,接著執行交易提及的智能合約(chaincode),並生成一個背書響應(或者叫做交易提案,tran-proposal)。這個背書響應中通常包含World state 的讀集合,寫集合, 以及節點對本次交易的簽名。這里與以太坊系聯盟鏈最主要的不同是: 背書階段只模擬交易,並不真正更新交易結果。 而真正更新交易在第三階段完成。背書節點最後將生成的背書響應fanhui給客戶端, 智能合約部分的執行就結束了。
通常一個交易的執行需要多方的簽名,所以客戶端需要將一個交易發送給多個背書節點,這些背書節點的選擇需要滿足背書策略的要求。
下圖是一個包含有客戶、背書節點,提交節點的網路示意圖。
根據Fabric官方的參考文檔,客戶交易的正果過程可使用下圖描述。
如上圖,從1到3,為背書階段,4為排序階段,4.1,4,2, 5為驗證提交階段。 參考 Frabic的節點 概念,可以了解更多在交易細節的概念。
總的來看, Fabric 更專注於企業間,通過上文,可以讓大家對Fabric的基本構成與概念有一個總的了解。 Fabric本身並不神秘,都是使用的現有的企業間的技術。要更好的了解,建議參考閱讀分布式消息系統和企業的安全基礎設施(CA相關)的支持。與以太坊系聯盟鏈實現比較, Fabric 的子網更概念對於復雜企業間應用適應更強,但是其復雜的安全考量,使得運營成本很高,另外,Fabric 使用Certificate做為用戶身份,有很大的局限性,在新的2.0里,Fabric對於此處將有所改變。
下一篇,我們將來看看Sawtooth , 由Inter 提供的區塊鏈框架。
區塊鏈之聯盟鏈(一) 認識以太坊
區塊鏈之聯盟鏈(二) 認識Quotum
區塊鏈之聯盟鏈(三) 認識Fabric
區塊鏈之聯盟鏈(四) 認識Sawtooth
『貳』 各區塊鏈架構的橫向比較
各區塊鏈架構的橫向比較
時常聽人們談起區塊鏈,從 2009 年比特幣誕生至今,各式各樣的區塊鏈系統或基於區塊鏈的應用不斷被開發出來,並被應用到大量的場景中,而區塊鏈技術本身也在不停地變化和改進。
區塊鏈又被稱為分布式賬本,與之對應的則是中心化賬本,比如銀行。與中心化賬本不同的是,分布式賬本依靠的是將賬本數據冗餘存儲在所有參與節點中,來保證賬本的安全性。簡單地說,區塊鏈會用到三種底層技術:點對點網路技術、密碼學技術和分布式一致性演算法。而通常,區塊鏈系統還會「免費附贈」一種被稱為智能合約的功能。智能合約雖然不是區塊鏈系統的必要組成部分,但由於區塊鏈天生所具備的去中心化特點,使它可以很好地為智能合約提供可信的計算環境。
為了適應不同場景的需求,區塊鏈系統在實際應用的過程中往往會需要進行各種改造,以滿足特定業務的要求,比如身份認證、共識機制、密鑰管理、交易頻次、響應時間、隱私保護、監管要求等。而實際應用區塊鏈系統的公司往往沒有進行這種改造的能力,於是市場上慢慢出現了一些用於定製專用區塊鏈系統的框架,採用這些框架就可以很方便地定製出適用於企業自身業務的區塊鏈系統。
本文將對目前市場上幾個典型的區塊鏈框架進行橫向對比,看看它們都有哪些特點,以及它們之間到底有哪些區別。為了保持對比的公正性,本文將只針對開源的區塊鏈框架進行討論。
各區塊鏈架構的簡單介紹
1、比特幣
比特幣(bitcoin)源自一名叫做中本聰(Satoshi Nakamoto)的人在 2008 年發表的一篇名為《比特幣:一種點對點的電子現金系統》(Bitcoin: A Peer-to-PeerElectronic Cash System)的論文,文中描述了一種被他稱為「比特幣」的電子貨幣及其演算法。在之後的幾年裡,比特幣不斷成長和成熟,而它的底層技術也逐漸被人們認識並抽象出來,這就是區塊鏈技術。比特幣作為區塊鏈的鼻祖,在區塊鏈的大家族中具有舉足輕重的地位,基於比特幣技術開發出的山寨幣(altcoins)的數量有如天上繁星,數不勝數。
從論文中可以得知,中本聰設計比特幣的目的,就是希望能夠實現一種完全基於點對點網路的電子現金系統,使得在線支付能夠直接由一方發起並支付給另外一方,中間不需要通過任何的中介機構。總結來說,他希望比特幣的設計能夠實現以下這些目標:
● 不需要中央機構就可以發行貨幣
● 不需要中介機構就可以支付
● 保持使用者的匿名性
● 交易無法被撤銷
從電子現金系統的角度來看,以上這些目標在比特幣中基本都得到了實現,但是依然有一些技術問題有待解決,比如延展性攻擊、區塊容量限制、區塊分叉、擴展性等。
在應用場景方面,目前大量的數字貨幣項目都是基於比特幣架構來設計的,此外還有一些比較實際的應用案例,比如彩色幣、t? 等。
彩色幣(coloredcoin),通過仔細跟蹤一些特定比特幣的來龍去脈,可以將它們與其他的比特幣區分開來,這些特定的比特幣就叫作彩色幣。它們具有一些特殊的屬性,從而具有與比特幣面值無關的價值,利用彩色幣的這種特性,使得開發者可以在比特幣網路上創建其它的數字資產。彩色幣本身就是比特幣,存儲和轉移不需要第三方,可以利用已經存在的比特幣的基礎。
t? 是比特幣區塊鏈在金融領域的應用,是美國在線零售商 Overstock 推出的基於區塊鏈的私有和公有股權交易平台。
2、以太坊
以太坊(ethereum) 的目標是提供一個帶有圖靈完備語言的區塊鏈,用這種語言可以創建合約來編寫任意狀態轉換功能,用戶只要簡單地用幾行代碼來實現邏輯,就能夠創建一個基於區塊鏈的應用程序,並應用於貨幣以外的場景。
以太坊的設計思想是不直接「支持」任何應用,但圖靈完備的編程語言意味著理論上任意的合約邏輯和任何類型的應用都可以被創建出來。總結來說,以太坊在比特幣的設計目標之外,還需要實現以下幾個目標:
● 圖靈完備的合約語言
● 內置的持久化狀態存儲
目前基於以太坊的合約項目已達到數百個,比較有名的有 Augur、TheDAO、Digix、FirstBlood 等。
Augur 是一個去中心化的預測市場平台,基於以太坊區塊鏈技術。用戶可以用數字貨幣進行預測和下注,依靠群眾的智慧來預判事件的發展結果,可以有效地消除對手方風險和伺服器的中心化風險。
限於篇幅,基於以太坊智能合約平台的項目就不多介紹了。基於以太坊的代碼進行改造的區塊鏈項目也有不少,但幾乎都是閉源項目,只能依靠一些公開的特性來推斷,所以就不在本文展開討論了。
3、Fabric
Fabric 是由 IBM 和 DAH 主導開發的一個區塊鏈框架,是超級帳本的項目成員之一。它的功能與以太坊類似,也是一個分布式的智能合約平台。但與以太坊和比特幣不同的是,它從一開始就是一個框架,而不是一個公有鏈,也沒有內置的代幣(token)。
超級賬本(hyperledger)是 Linux 基金會於 2015 年發起的推進區塊鏈技術和標準的開源項目,加入成員包括:荷蘭銀行(ABN AMRO)、埃森哲(Accenture)等十幾個不同利益體,目標是讓成員共同合作,共建開放平台,滿足來自多個不同行業各種用戶案例,並簡化業務流程。
作為一個區塊鏈框架,Fabric 採用了松耦合的設計,將共識機制、身份驗證等組件模塊化,使之在應用過程中可以方便地替換成自定義的模塊。除此之外,Fabric 還採用了容器技術,將智能合約代碼(chaincode)放在 docker 中運行,從而使得智能合約可以用幾乎任意的高級語言來編寫。
以下是 Fabric 的一些設計目標:
● 模塊化設計,組件可替換
● 運行於 docker 的智能合約
目前已經有不少採用 Fabric 架構進行開發的概念驗證(POC)項目在實施過程中,其中不乏一些金融機構做出的嘗試,不過由於項目剛剛起步,還沒有比較成熟的落地應用。
4、DNA
DNA(Distributed Networks Architecture,分布式網路架構),是由總部位於上海的區塊鏈創業公司「分布科技」開發的區塊鏈架構,可以同時支持公有鏈、聯盟鏈、私有鏈等不同應用類型和場景,並快速與業務系統集成。
與以太坊、Fabric不同的是,DNA 在系統底層實現了對多種數字資產的支持,用戶可以直接在鏈上創建自己的資產類型,並用智能合約來控制它的發行邏輯。對於絕大部分的區塊鏈應用場景,數字資產是必不可少的,而為每一種數字資產都開發一套基於智能合約的轉賬、發行邏輯是非常浪費且低效的。因此,由區塊鏈底層提供直接的數字資產功能是十分必要的。而對於那些完全不需要數字資產的應用場景,同樣可以基於 DNA 提供的智能合約架構來編寫任意的自定義邏輯來實現。
DNA 的設計目標主要有以下幾點:
● 多種數字資產的底層支持
● 圖靈完備的智能合約和狀態持久化
● 跨鏈互操作性
● 交易的最終性
目前已有不少金融機構採用 DNA 架構來進行區塊鏈概念驗證產品的開發。除此之外,還有一些已經落地的區塊鏈項目,如小蟻區塊鏈、法鏈等。
小蟻(antshares)是一個定位於資產數字化的公有鏈,將實體世界的資產和權益進行數字化,通過點對點網路進行登記發行、轉讓交易、清算交割等金融業務的去中心化網路協議。它採用社區化開發的模式,在架構上與 DNA 保持一致,從而可以與任何基於DNA 的區塊鏈系統發生跨鏈互操作。
法鏈是全球第一個大規模商用的法律存證區塊鏈,一個底層基於 DNA區塊鏈技術,並由多個機構參與建立和運營的證據記錄和保存系統。該系統沒有中心控制點,且數據一旦錄入,單個機構或節點無法篡改,從而滿足司法存證的要求。
5、Corda
Corda 是由一家總部位於紐約的區塊鏈創業公司 R3CEV 開發的,由其發起的 R3區塊鏈聯盟,至今已吸引了數十家巨頭銀行的參與,其中包括富國銀行、美國銀行、紐約梅隆銀行、花旗銀行、德國商業銀行、德意志銀行、匯豐銀行、三菱 UFJ 金融集團、摩根士丹利、澳大利亞國民銀行、加拿大皇家銀行、瑞典北歐斯安銀行(SEB)、法國興業銀行等。
從 R3 成員的組成上也可以看出,Corda 是一款專門用於銀行與銀行間業務的區塊鏈架構。盡管 R3 自己聲稱 Corda 不是區塊鏈,但從各項特徵來看,它具備區塊鏈的一些特性。
技術對比
1、數字資產
接下來,將對前文中提到的這些區塊鏈框架進行一系列的技術對比,並從多個維度展開介紹它們的區別與相似之處。
區塊鏈的內置代幣通常是一種經濟激勵模型和防止垃圾交易的手段。比特幣天生就有且只有一種內置代幣,所以在比特幣系統中所有的「交易」本質上都是轉賬行為,除非通過外部的協議層來給比特幣增加額外的數字資產。
以太坊和 DNA 具有內置代幣,它們的作用除了以上提到的經濟激勵和防止垃圾交易之外,還具有為系統內置功能提供一個收費的渠道。比如以太坊的智能合約運行需要消耗 GAS,而 DNA 的數字資產創建也需要消耗一定的代幣。
以太坊和 Fabric 沒有內置的多種數字資產支持,而是通過智能合約來實現相應的功能。這種方式的好處在於,系統設計可以做到非常簡潔,而且資產的行為可以任意指定,自由度極高。然而這樣的設計也會帶來一系列的負面影響,比如所有的資產創建者不得不自己編寫重復的業務邏輯,而用戶也沒有辦法通過統一的方式去操作自己的資產。
相比之下,DNA 和 Corda 採用了在底層支持多種數字資產的方式,讓資產創建者可以方便地創建自己的資產類型,而用戶也可以在同一個客戶端中管理所有的資產。對於邏輯更加復雜一點的業務場景來說,他們同樣可以利用智能合約來強化資產的功能,或者創建一種與資產無關的業務邏輯。
2、賬戶系統
UTXO(Unspent Transaction Output)是這樣一種機制:每一枚數字貨幣都會被登記在一個賬戶的所有權之下,一枚數字貨幣有兩種狀態,即要麼還沒有被花費,要麼已經被花費。當需要使用一枚數字貨幣的時候,就將它的狀態標記為已經花費,並創造一枚新的與之等額的數字貨幣,將它的所有權登記到新的賬戶之下。在這個過程中,被標記為已花費的數字貨幣就被稱為交易的輸入,而創造出來的新的數字貨幣被稱為交易的輸出,在一筆交易中,可以包含多個輸入和多個輸出,但是輸入之和與輸出之和必須相等。要計算一個賬戶的余額時,只要將所有登記在該賬戶下的數字貨幣的面額相加即可得出。
比特幣和 Corda 就採用了 UTXO 這樣一種賬戶機制,而以太坊則採用了更加直觀的余額機制:每個賬戶有一個狀態,狀態中直接記錄了賬戶當前的余額,轉賬的邏輯就是從一個賬戶中減去一部分余額,並在另一個賬戶中加上相應的余額,減去的部分和加上的部分必須相等。DNA 在賬戶機制上同時兼容這兩種模式。
那麼 UTXO 模式和余額模式,究竟有什麼優缺點呢?UTXO 最大的好處就是,基於 UTXO 的交易可以並行驗證且任意排序,因為所有的 UTXO 之間都是沒有關聯的,這對區塊鏈未來的伸縮性是有很大幫助的,而基於余額的設計就沒有這個優勢了;反過來,余額設計的優點是設計思想非常簡潔和直覺化,便於程序實現,特別是在智能合約中,要處理 UTXO 的狀態是非常困難的。這也是為什麼以智能合約為主要功能的以太坊選擇余額設計的原因,而比特幣、OnchainDNA、Corda 這些以數字資產為核心的架構則更傾向於 UTXO 設計。
關於身份認證,比特幣和以太坊基本沒有身份認證的設計,原因很簡單,因為這兩者的設計思想都是強調隱私和匿名,而反對監管和中心化,而身份認證就勢必要引入一些中心或者弱化的中心機構。Fabric、DNA 和 Corda 不約而同地選擇了採用數字證書來對用戶身份進行認證,原因在於這三者都有應用於現有金融系統的設計目標,而金融系統必然要考慮合規化並接受監管,此外現有的金融系統已經大范圍地採用數字證書方案,這樣便可以和區塊鏈系統快速集成。
『叄』 區塊鏈的三大系統框架到底是個什麼鬼
其實框架很簡單的,你可以認為它是一個工具,甚至一個插件。 框架的作用,就是將一個公用的,常用的技術,封裝起來, 幫你處理一些基礎的東西,可以讓你不用再去寫那些繁瑣的東西。 就拿你要學的struts來說:他本質上也是用java寫的,和我們自己寫的類沒有區別,他實現的東西我們自己也可以實現。 比如接收客戶端的數據,我們是用request.getParameter()來的,但是如果有很多個參數,我們要寫很多個,很麻煩。struts它就幫我們實現,不用我們寫,直接寫個屬性,就可以得到。其實本質還是用request.getParameter()。。 所以你不要再在意框架是什麼東西,等你接觸了就知道了。你把它當做一個工具來用,這就是框架。
『肆』 區塊鏈的六層模型是什麼
區塊鏈技術的模型是由自下而上的數據層、網路層、共識層、激勵層、合約層、應用層組成。
『伍』 區塊鏈是什麼意思
區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密演算法等計算機技術的新型應用模式。區塊鏈,是比特幣的一個重要概念。
它本質上是一個去中心化的資料庫,同時作為比特幣的底層技術,是一串使用密碼學方法相關聯產生的數據塊,每一個數據塊中包含了一批次比特幣網路交易的信息,用於驗證其信息的有效性(防偽)和生成下一個區塊。
區塊鏈在公共管理,能源,酒店經營,交通等領域都與民眾的生產生活息息相關,但這些領域的中心化特質也帶來了一些問題,可以用區塊鏈來改造。
去中心化的完全分布式DNS服務通過網路中各個相互之間的點對點數據傳輸服務可以實現域名的查詢和解析,可以用於某些重要的基礎設施的操作系統和固件沒有被篡改,可以進行監控軟體的狀態和初始,發現不良的篡改,並確保使用了物聯網技術的系統所傳輸的數據沒用經過篡改。
以上內容參考網路-區塊鏈
『陸』 開發區塊鏈使用什麼框架Substrate
區塊鏈開發很復雜。它涉及復雜的技術(包括先進的密碼學和分布式網路通信)你必須掌握這些技術,以便為應用程序的運行和用戶的信任提供一個安全平台。還有一些圍繞規模、治理、互操作性和可升級性的棘手問題需要解決。這種復雜性為開發者創造了一個需要克服的高門檻。考慮到這一點,要回答的第一個問題是:你想建立什麼?
Substrate並不完全適合每一個用例、應用程序或項目。然而,如果你想建立一個區塊鏈,那麼Substrate可能是一個完美的選擇。
Substrate是一個軟體開發工具包(SDK),專門為您提供所有區塊鏈的基本組件,使您能夠專注於製作使您的鏈獨特和創新的邏輯。與其他分布式賬本平台不同,Substrate是。
大多數區塊鏈平台都有非常緊密的耦合、意見一致的子系統,很難脫鉤。在基於另一個區塊鏈分叉的鏈上也有風險,這些非常明顯的耦合會從根本上破壞區塊鏈系統本身。
Substrate是一個完全模塊化的區塊鏈框架,讓你通過選擇適合你的項目的網路堆棧、共識模型或治理方法,或通過創建你自己的組件,組成一個有明確解耦組件的鏈。
通過Substrate,你可以部署一個為你的規格設計和建造的區塊鏈,但也可以隨著你不斷變化的需求而發展。
所有的Substrate架構和工具都在開源許可下提供。Substrate框架的核心組件使用開放協議,如libp2p和jsonRPC,同時授權你決定你想定製多少區塊鏈架構。Substrate還有一個龐大的、活躍的、有幫助的開發者社區,為生態系統做出貢獻。來自社區的貢獻增強了可用的能力,使您能夠隨著區塊鏈的發展將其納入自己的區塊鏈中。
大多數區塊鏈平台提供的與其他區塊鏈網路互動的能力有限。所有基於Substrate的區塊鏈都可以通過跨共識信息傳遞(XCM)與其他區塊鏈進行互操作。Substrate可用於創建作為獨立網路的鏈(單人鏈),或與中繼鏈緊密耦合,以分享它的安全,作為一個准鏈。
Substrate是為可升級、可組合和可適應而建立的。狀態轉換邏輯--Substrate runtime--是一個獨立的WebAssembly對象。節點可以被賦予在特定條件下完全改變運行時本身的能力,在整個網路范圍內誘發運行時升級。因此,"forkless "升級是可能的,因為在大多數情況下,節點不需要採取任何行動就可以使用這個新的運行時。隨著時間的推移,網路的運行時協議可以無縫地,也許是徹底地,隨著用戶的需求而發展。
『柒』 區塊鏈技術框架有哪些
當前主流的區塊鏈架構包含六個層級:網路層、數據層、共識層、激勵層、合約層和應用層。圖中將數據層和網路層的位置進行了對調,主要用途將在下一節中詳述。
網路層:區塊鏈網路本質是一個P2P(Peer-to-peer點對點)的網路,網路中的資源和服務分散在所有節點上,信息的傳輸和服務的實現都直接在節點之間進行,可以無需中間環節和伺服器的介入。每一個節點既接收信息,也產生信息,節點之間通過維護一個共同的區塊鏈來同步信息,當一個節點創造出新的區塊後便以廣播的形式通知其他節點,其他節點收到信息後對該區塊進行驗證,並在該區塊的基礎上去創建新的區塊,從而達到全網共同維護一個底層賬本的作用。所以網路層會涉及到P2P網路,傳播機制,驗證機制等的設計,顯而易見,這些設計都能影響到區塊信息的確認速度,網路層可以作為區塊鏈技術可擴展方案中的一個研究方向;
數據層:區塊鏈的底層數據是一個區塊+鏈表的數據結構,它包括數據區塊、鏈式結構、時間戳、哈希函數、Merkle樹、非對稱加密等設計。其中數據區塊、鏈式結構都可作為區塊鏈技術可擴展方案對數據層研究時的改進方向。
共識層:它是讓高度分散的節點對區塊數據的有效性達到快速共識的基礎,主要的共識機制有POW(Proof Of Work工作量證明機制),POS(Proof of Stake權益證明機制),DPOS(Delegated Proof of Stake委託權益證明機制)和PBFT(Practical Byzantine Fault Tolerance實用拜占庭容錯)等,它們一直是區塊鏈技術可擴展方案中的重頭戲。
激勵層:它是大家常說的挖礦機制,用來設計一定的經濟激勵模型,鼓勵節點來參與區塊鏈的安全驗證工作,包括發行機制,分配機制的設計等。這個層級的改進貌似與區塊鏈可擴展並無直接聯系。
合約層:主要是指各種腳本代碼、演算法機制以及智能合約等。第一代區塊鏈嚴格講這一層是缺失的,所以它們只能進行交易,而無法用於其他的領域或是進行其他的邏輯處理,合約層的出現,使得在其他領域使用區塊鏈成為了現實,以太坊中這部分包括了EVM(以太坊虛擬機)和智能合約兩部分。這個層級的改進貌似給區塊鏈可擴展提供了潛在的新方向,但結構上來看貌似並無直接聯系
應用層:它是區塊鏈的展示層,包括各種應用場景和案例。如以太坊使用的是truffle和web3-js.區塊鏈的應用層可以是移動端,web端,或是是融合進現有的伺服器,把當前的業務伺服器當成應用層。這個層級的改進貌似也給區塊鏈可擴展提供了潛在的新方向,但結構上來看貌似並無直接聯系。
鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站 」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。
『捌』 一文看懂互聯網區塊鏈
一文看懂互聯網區塊鏈
一文看懂互聯網區塊鏈,要了解區塊鏈,就不得不從互聯網的誕生開始研究區塊鏈的技術發展簡史,從中發掘區塊鏈產生的動因,並由此推斷區塊鏈的未來。下面讓我們一文看懂互聯網區塊鏈。
區塊鏈的鼻祖就是麻將,最早的區塊鏈是中國人發明的!區塊鏈就跟麻將一樣,只不過麻將的區塊比較少而已,麻將只有136個區塊,各地麻將規則不同可視作為比特幣的硬分叉。
麻將作為最古老的區塊鏈項目,四個礦工一組,最先挖出13位正確哈希值的獲得記賬權以及獎勵,採用願賭服輸且不能作弊出老千的共識機制!
麻將去中心化,每個人都可以是庄,完全就是點對點。
礦池=棋牌室的老闆抽佣。
不可篡改,因為說服其他三個人需要消耗太多算力和體力。
典型的價值互聯網。我兜里的價值用不了八圈,就跑到他們兜里去了。
中國人基本上人手打得一手好麻將,區塊鏈方面生產了全球70%~80%的礦機,並擁有全世界最多的算力,約佔77%的算力
麻將其實是最早的的區塊鏈項目:
1,四個礦工一組,先碰撞出13個數字正確哈希值的礦工可以獲得記賬權並得到獎勵。
2,不可篡改。因為說服其他三個人需要消耗太多算力和體力。
3,典型的價值互聯網。我兜里的價值數字貨幣www.gendan5.com/digitalcurrency/btc.html用不了八圈,就跑到他們兜里去了。
4、去中心化,每個人都可以是庄,完全就是點對點。
5、UTXO,未花費的交易支出。
還有另外一種賒賬的區塊鏈玩法,假設大家身上都沒現金
細究一下,在大家達成共識時,我們看不到任何中介或者第三方出來評判丙贏了,大家給丙的獎勵也不需要通過第三方轉交給丙,都是直接點對點交易,這一過程就是去中心化,牌友們(礦工)各自記錄了第一局的戰績,丙大胡自摸十三幺,乙杠了甲東風,記錄完成後就生成了一個完整的區塊,但要記住,這才只是第一局,在整個區塊鏈上,這才僅僅是一個節點,開頭說的8局打完,也就是8個節點(區塊),8個區塊連接在一起就形成了一個完整賬本,這就是區塊鏈。因為這個賬本每人都有一個,所以就是分布式賬本,目的就是為了防止有人篡改記錄,打到最後,誰輸誰贏一目瞭然。
4個男士(甲乙丙丁)湊在一塊打麻將來錢,大家都沒帶現金,於是請一美女(中心化)用本子記賬,記錄每一局誰贏了多少錢、誰輸了多少錢?最後結束時,大家用支付寶或微信支付結總賬,但是如果這位美女記賬時記錯了或者預先被4人中的某人買通了故意記錯,就保證不了這個游戲結果的公正公平合理性,你說是不是?那怎麼辦呢?如果你「打麻將」能用「區塊鏈」作為游戲規則改編為如下:
4個男士(甲乙丙丁)湊在一塊打麻將來錢,大家都沒帶現金,乙說讓她帶來的美女記賬,甲說這位美女我們都不認識,於是甲乙丙丁4人一致約定每個人每局牌都在自己的手機上(區塊鏈節點)同時記賬(去中心化),最後打完麻將,直接手機上以電子貨幣結賬時,大家都對一下記賬的的結果,本來應該是一樣的記賬結果。
假設本來結果是甲手機上記的賬:乙欠甲10元。但乙手機上的記錄卻是不欠,可是其餘2人(丙、丁)和甲的記賬一樣,那還是按照少數服從多數規則結算,另外大家心裡對乙的誠信印象就差評了,下次打麻將就不會帶乙一起玩了。
除非乙預先買通(丙、丁)2人讓其故意作假,但乙買通他們2人的代價是10萬元(賴賬10元的1萬倍),那常理上乙只能選擇放棄,因為做假成本太高了。
假設即使乙在打牌的過程中,偷偷願意以高價10萬元預先買通丙、丁做這筆巨虧的傻貓交易,但區塊鏈的規則是按時間戳記賬的,原來是下午1點鍾記賬乙欠甲10元的,即丙和丁下午3點鍾再改賬時,時間是不可逆的,只能記下午3點鍾,那就又不吻合游戲規則了。
實際上在2017年博主已經開發出了一套麻將幣
中國最早的區塊鏈項目:四個礦工一組,最先從 148 個隨機數字中碰撞出 14 個數字正確哈希值的礦工,可以獲得一次記賬權激勵,由於分布式記賬需要得到其他幾位礦工的共識,因此每次記賬交易時間長約十幾分鍾。
一、比特幣誕生之前,5個對區塊鏈未來有重大影響的互聯網技術
1969年,互聯網在美國誕生,此後互聯網從美國的四所研究機構擴展到整個地球。在應用上從最早的軍事和科研,擴展到人類生活的方方面面,在互聯網誕生後的近50年中,有5項技術對區塊鏈的未來發展有特別重大的意義。
1、1974誕生的TCP/IP協議:決定了區塊鏈在互聯網技術生態的位置
1974年,互聯網發展邁出了最為關鍵的一步,就是由美國科學家文頓瑟夫和羅伯特卡恩共同開發的互聯網核心通信技術--TCP/IP協議正式出台。
這個協議實現了在不同計算機,甚至不同類型的網路間傳送信息。所有連接在網路上的計算機,只要遵照這個協議,都能夠進行通訊和交互。
通俗的說,互聯網的數據能穿過幾萬公里,到達需要的計算機用戶手裡,主要是互聯網世界形成了統一的信息傳播機制。也就是互聯網設備傳播信息時遵循了一個統一的法律-TCP/IP協議。
理解TCP/IP協議對掌握互聯網和區塊鏈有非常重要的意義,在1974年TCP/IP發明之後,整個互聯網在底層的硬體設備之間,中間的網路協議和網路地址之間一直比較穩定,但在頂層應用層不斷涌現層出不窮的創新應用,這包括新聞,電子商務,社交網路,QQ,微信,也包括區塊鏈技術。
也就是說區塊鏈在互聯網的技術生態中,是互聯網頂層-應用層的一種新技術,它的出現,運行和發展沒有影響到互聯網底層的基礎設施和通訊協議,依然是按TCP/IP協議運轉的眾多軟體技術之一。
2、1984年誕生的思科路由器技術:是區塊鏈技術的模仿對象
1984年12月,思科公司在美國成立,創始人是斯坦福大學的一對夫婦,計算機中心主任萊昂納德·波薩克和商學院的計算機中心主任桑蒂·勒納,他們設計了叫做「多協議路由器」的聯網設備,放到互聯網的通訊線路中,幫助數據准確快速從互聯網的一端到達幾千公里的另一端。
整個互聯網硬體層中,有幾千萬台路由器工作繁忙工作,指揮互聯網信息的傳遞,思科路由器的一個重要功能就是每台路由都保存完成的互聯網設備地址表,一旦發生變化,會同步到其他幾千萬台路由器上(理論上),確保每台路由器都能計算最短最快的路徑。
大家看到路由器的運轉過程,會感到非常眼熟,那就是區塊鏈後來的重要特徵,理解路由器的意義在於,區塊鏈的重要特徵,在1984年的路由器上已經實現,對於路由器來說,即使有節點設備損壞或者被黑客攻擊,也不會影響整個互聯網信息的傳送。
3、隨萬維網誕生的B/S(C/S)架構:區塊鏈的對手和企圖顛覆的對象
萬維網簡稱為Web,分為Web客戶端和伺服器。所有更新的信息只在Web伺服器上修改,其他幾千,上萬,甚至幾千萬的客戶端計算機不保留信息,只有在訪問伺服器時才獲得信息的數據,這種結構也常被成為互聯網的B/S架構,也就是中心型架構。這個架構也是目前互聯網最主要的架構,包括谷歌、Facebook、騰訊、阿里巴巴、亞馬遜等互聯網巨頭都採用了這個架構。
理解B/S架構,對與後續理解區塊鏈技術將有重要的意義,B/S架構是數據只存放在中心伺服器里,其他所有計算機從伺服器中獲取信息。區塊鏈技術是幾千萬台計算機沒有中心,所有數據會同步到全部的計算機里,這就是區塊鏈技術的核心,
4、對等網路(P2P):區塊鏈的父親和技術基礎
對等網路P2P是與C/S(B/S)對應的另一種互聯網的基礎架構,它的特徵是彼此連接的多台計算機之間都處於對等的地位,無主從之分,一台計算機既可作為伺服器,設定共享資源供網路中其他計算機所使用,又可以作為工作站。
Napster是最早出現的P2P系統之一,主要用於音樂資源分享,Napster還不能算作真正的對等網路系統。2000 年3月14 日,美國地下黑客站點Slashdot郵寄列表中發表一個消息,說AOL的Nullsoft 部門已經發放一個開放源碼的Napster的克隆軟體Gnutella。
在Gnutella分布式對等網路模型中,每一個聯網計算機在功能上都是對等的,既是客戶機同時又是伺服器,所以Gnutella被稱為第一個真正的對等網路架構。
20年裡,互聯網的一些科技巨頭如微軟,IBM,也包括自由份子,黑客,甚至侵犯知識產權的犯罪分子不斷推動對等網路的發展,當然互聯網那些希望加強信息共享的理想主義者也投入了很大的熱情到對等網路中。區塊鏈就是一種對等網路架構的軟體應用。它是對等網路試圖從過去的沉默爆發的標桿性應用。
5、哈希演算法:產生比特幣和代幣(通證)的關鍵
哈希演算法將任意長度的數字用哈希函數轉變成固定長度數值的演算法,著名的哈希函數如:MD4、MD5、SHS等。它是美國國家標准暨技術學會定義的加密函數族中的一員。
這族演算法對整個世界的運作至關重要。從互聯網應用商店、郵件、殺毒軟體、到瀏覽器等、,所有這些都在使用安全哈希演算法,它能判斷互聯網用戶是否下載了想要的東西,也能判斷互聯網用戶是否是中間人攻擊或網路釣魚攻擊的受害者。
區塊鏈及其應用比特幣或其他虛擬幣產生新幣的過程,就是用哈希演算法的函數進行運算,獲得符合格式要求的數字,然後區塊鏈程序給予比特幣的獎勵。
包括比特幣和代幣的挖礦,其實就是一個用哈希演算法構建的小數學游戲。不過因為有了激烈的競爭,世界各地的人們動用了強大的伺服器進行計算,以搶先獲得獎勵。結果導致互聯網眾多計算機參與到這個小數學游戲中,甚至會耗費了某些國家超過40%的電量。
二、區塊鏈的誕生與技術核心
區塊鏈的誕生應該是人類科學史上最為異常和神秘的發明和技術,因為除了區塊鏈,到目前為止,現代科學史上還沒有一項重大發明找不到發明人是誰。
2008年10月31號,比特幣創始人中本聰(化名)在密碼學郵件組發表了一篇論文——《比特幣:一種點對點的電子現金系統》。在這篇論文中,作者聲稱發明了一套新的不受政府或機構控制的電子貨幣系統,區塊鏈技術是支持比特幣運行的基礎。
論文預印本地址在http://www.bitcoin.org/bitcoin.pdf,從學術角度看,這篇論文遠不能算是合格的論文,文章的主體是由8個流程圖和對應的解釋文字構成的, 沒有定義名詞、術語,論文格式也很不規范。
2009年1月,中本聰在SourceForge網站發布了區塊鏈的應用案例-比特幣系統的開源軟體,開源軟體發布後, 據說中本聰大約挖了100萬個比特幣.一周後,中本聰發送了10個比特幣給密碼學專家哈爾·芬尼,這也成為比特幣史上的第一筆交易。伴隨著比特幣的蓬勃發展,有關區塊鏈技術的研究也開始呈現出井噴式增長。
向大眾完整清晰的解釋區塊鏈的確是困難的事情,我們以比特幣為對象,盡量簡單但不斷深入的介紹區塊鏈的技術特徵。
1、區塊鏈是一種對等網路(P2P)的軟體應用
我們在前文提過,在21世紀初,互聯網形成了兩大類型的應用架構,中心化的B/S架構和無中心的對等網路(P2P)架構,阿里巴巴,新浪,亞馬遜,網路等等很多互聯網巨頭都是中心化的B/S架構,簡單的說,就是數據放在巨型伺服器中,我們普通用戶通過手機,個人電腦訪問阿里,新浪等網站的伺服器。
21世紀初以來,出現了很多自由分享音樂,視頻,論文資料的軟體應用,他們大部分採用的是對等網路(P2P)架構,就是沒有中心伺服器,大家的個人計算機都是伺服器,也都是客戶機,身份平等。但這類應用一直沒有流行起來,主要原因是資源消耗大,知識版權有問題等。區塊鏈就是這種領域的一種軟體應用。
2、區塊鏈是一種全網信息同步的對等網路(P2P)軟體應用
對等網路也有很多應用方式,很多時候,並不要求每台計算機都保持信息一致,大家只存儲自己需要的的信息,需要時再到別的計算機去下載。
但是區塊鏈為了支持比特幣的金融交易,就要求發生的每一筆交易都要寫入到歷史交易記錄中,並向所有安裝比特幣程序的計算機發送變動信息。每一台安裝了比特幣軟體的計算機都保持最新和全部的.比特幣歷史交易信息。
區塊鏈的這個全網同步,全網備份的特徵也就是常說的區塊鏈信息安全,不可更改來源。雖然在實際上依然不是絕對的安全,但當用戶量非常大時,的確在防範信息篡改上有一定安全優勢。
3、區塊鏈是一種利用哈希演算法產生」通證(代幣)」的全網信息同步的對等網路(P2P)軟體應用
區塊鏈的第一個應用是著名的比特幣,討論到比特幣時,經常會提到的一個名詞就是「挖礦」,那麼挖礦到底是什麼呢?
形象的比喻是,區塊鏈程序給礦工(游戲者)256個硬幣,編號分別為1,2,3……256,每進行一次Hash運算,就像拋一次硬幣,256枚硬幣同時拋出,落地後如果正巧編號前70的所有硬幣全部正面向上。礦工就可以把這個數字告訴區塊鏈程序,區塊鏈會獎勵50個比特幣給礦工。
從軟體程序的角度說,比特幣的挖礦就是用哈希SHA256函數構建的數學小游戲。區塊鏈在這個小游戲中首先規定了一種獲獎模式:給出一個256位的哈希數,但這個哈希數的後70位全部是0,然後游戲者(礦工)不斷輸入各種數字給哈希SHA256函數,看用這個函數能不能獲得位數有70個0的數字,找到一個,區塊鏈程序會獎勵50個比特幣給游戲者。實際的挖坑和獎勵要更復雜,但上面的舉例表達了挖礦和獲得比特幣的核心過程。
2009年比特幣誕生的時候,每筆賞金是50個比特幣。誕生10分鍾後,第一批50個比特幣生成了,而此時的貨幣總量就是50。隨後比特幣就以約每10分鍾50個的速度增長。當總量達到1050萬時(2100萬的50%),賞金減半為25個。當總量達到1575萬(新產出525萬,即1050的50%)時,賞金再減半為12.5個。根據比特幣程序的設計,比特幣總額是2100萬。
從上述介紹看,比特幣可以看做一個基於對等網路架構的猜數小游戲,每次正確的猜數結果獎勵的比特幣信息會傳遞給所有游戲者,並記錄到每個游戲者的歷史資料庫中。
4、區塊鏈技術因比特幣的興起產生的智能合約,通證、ICO與區塊鏈基礎平台
從上面的介紹看,比特幣的技術並不是從天上掉下來的新技術,而是把原來多種互聯網技術,如對等網路架構,路由的全網同步,網路安全的加密技術巧妙的組合在一起,算是一種組合創新的演算法游戲。
由於比特幣通過運作成為可以兌換法幣,購買實物,通過升值獲得暴利,全世界都不淡定了。抱著你能做,我也能做的態度,很多人創造了自己的仿比特幣軟體應用。同時利用政府難以監管對等網路的特點,各種山寨幣與比特幣一起爆發。這其中出現了很多欺詐和潛逃事件,逐步引起各國政府的關注。
區塊鏈基礎平台:用區塊鏈技術框架創建貨幣還是有相當的技術難度,這時區塊鏈基礎平台以太坊等基礎技術平台出現了,讓普通人也可以方便的創建類「比特幣」軟體程序,各顯神通,請人入局挖幣,炒幣,從中獲得利益。
通證或代幣:各家「比特幣」、「山寨幣」如果用哈希演算法創建的猜數小游戲,產生自己的「貨幣」時,這個「貨幣」統稱「通證」或「代幣」。
ICO:由於比特幣和以太幣已經打通與各國法幣的兌換,其他新虛擬幣發幣時,只允許用比特幣和以太幣購買發行的新幣,這樣的發幣過程就叫ICO,ICO的出現放大了比特幣,以太幣的交易量。同時很多ICO項目完全建立在虛無的項目上,導致大量欺詐案例頻發。進一步加深了社會對區塊鏈生成虛擬貨幣的負面認識。
智能合約:可以看做區塊鏈上的一種軟體功能,是輔助區塊鏈上各種虛擬幣交易的程序,具體的功能就像淘寶上支付寶的資金託管一樣,當一方用戶收到的貨物,在支付寶上進行確認後,資金自動支付個給買家貨主,智能合約在比特幣等區塊鏈應用上也是承擔了這個中介支付功能。
三、區塊鏈技術在互聯網中的歷史地位和未來前景
1、區塊鏈處於互聯網技術的什麼位置?是頂層的一種新軟體和架構。
我們在前面的TCP/IP介紹中提到,區塊鏈與瀏覽器、QQ、微信、網路游戲軟體、手機APP等一樣,是互聯網頂層-應用層的一種軟體形式。它的運行依然要靠TCP/IP的架構體系傳輸數據。只是與大部分應用層軟體不同,沒有採用C/S(B/S)的中心軟體架構。而是採用了不常見的對等網路架構,從這一點說,區塊鏈並不能顛覆互聯網基礎結構。
2、區塊鏈想要顛覆誰?想顛覆萬維網的B/S(C/S)結構。
它試圖要顛覆其實是89年年誕生的萬維網B/S,C/S結構。前面說過。由於89年年歐洲物理學家蒂姆· 伯納斯· 李發明萬維網並放棄申請專利。此後近30年中,包括谷歌,亞馬遜,facebook,阿里巴巴,網路,騰訊等公司利用萬維網B/S(C/S)結構,成長為互聯網的巨頭。
在他們的總部,建立了功能強大的中心伺服器集群,存放海量數據,上億用戶從巨頭伺服器中獲取自己需要的數據,這樣也導致後來雲計算的出現,而後互聯網巨頭把自己沒有用完的中心伺服器資源開放出來,進一步吸取企業,政府,個人的數據。中心化的互聯網巨頭對世界,國家,互聯網用戶影響力越來越大。
區塊鏈的目標是通過把數據分散到每個互聯網用戶的計算機上,試圖降低互聯網巨頭的影響力,由此可見區塊鏈真正的對手和想要顛覆的是1990年誕生的B/S(C/S)結構。但能不能顛覆掉,就要看它的技術優勢和瓶頸。
3、區塊鏈的技術缺陷:追求徹底平等自由帶來的困境
區塊鏈的技術缺陷首先來自與它的對等網路架構上,舉個例子,目前淘寶是B/S結構,海量的數據存放在淘寶伺服器集群機房裡,幾億消費者通過瀏覽器到淘寶伺服器網站獲取最新信息和歷史信息。
如果用區塊鏈技術,就是讓幾億人的個人電腦或手機上都保留一份完整的淘寶資料庫,每發生一筆交易,就同步給其他幾億用戶。這在現實中是完全無法實現的。傳輸和存儲的數據量太大。相當於同時建立幾億個淘寶網站運行。
因此區塊鏈無法應用在數據量大的項目上,甚至小一點的網站項目用區塊鏈也會吃力。到2018年,比特幣運行了近10年,積累的交易數據已經讓整個系統面臨崩潰。
於是區塊鏈採用了很多變通方式,如建立中繼節點和閃電節點,這兩個概念同樣會讓人一頭霧水,通俗的說,就是區塊鏈會向它要顛覆的對象B/S結構進行了學習,建立數據伺服器中心成為區塊鏈的中繼節點,也用類瀏覽器的終端訪問,這就是區塊鏈的閃電節點。
這種變動能夠緩解區塊鏈的技術缺陷,但確讓區塊鏈變成它反對的樣子,中心化。由此可見,單純的區塊鏈技術由於技術特徵有重大缺陷,無法像萬維網一樣應用廣泛,如果技術升級,部分採用B/S(C/S)結構,又會使得區塊鏈有了中心化的信息節點,不在保持它誕生時的夢想。
4、從互聯網大腦模型看區塊鏈的未來前景
我們知道互聯網一般是指將世界范圍計算機網路互相聯接在一起的網際網路,在這基礎上發展出覆蓋全世界的全球性互聯網路稱互聯網,即是互相連接一起的網路結構。
從1969年互聯網誕生以來,人類從不同的方向在互聯網領域進行創新,並沒有統一的規劃將互聯網建造成什麼結構,當時間的車輪到達2017年,隨著人工智慧,物聯網,大數據,雲計算,機器人,虛擬現實,工業互聯網等科學技術的蓬勃發展,當人類抬起頭來觀看自己的創造的巨系統,互聯網大腦的模型和架構已經越來越清晰。
通過近20年的發展依託萬維網的B/S,C/S結構,騰訊QQ,微信,Facebook,微博、twitter亞馬遜已經發展出類神經元網路的結構。互聯網設備特別是個人計算機,手機在通過設備上的軟體在巨頭的中心伺服器上映射出個人數據和功能空間,相互加好友交流,傳遞信息。互聯網巨頭通過中心伺服器集群的軟體升級,不斷優化數億台終端的軟體版本。在神經學的體系中,這是一種標準的中樞神經結構。
區塊鏈的誕生提供了另外一種神經元模式,不在巨頭的集中服務中統一管理神經元,而是每台終端,包括個人計算機和個人手機成為獨立的神經元節點,保留獨立的數據空間,相互信息進行同步,在神經學的體系中,這是一種沒有中心,多神經節點的分布式神經結構。
有趣的是,神經系統的發育出現過這兩種不同類型的神經結構。在低等生物中,出現過類區塊鏈的神經結構,有多個功能相同的神經節,都可以指揮身體活動和反應,但隨著生物的進化,這些神經節逐步合並,當進化成為高等生物時,中樞神經出現了,中樞神經中包含大量神經元進行交互。
四、關於區塊鏈在互聯網未來地位的判斷
1、對比特幣的認知:一個基於對等網路架構(P2P)的猜數小游戲,通過高明的金融和輿論運作,成為不受政府監管的」世界性貨幣」。
2、對區塊鏈的認知:一個利用哈希演算法產生」通證(代幣)」的全網信息同步的對等網路(P2P)軟體應用。
3、區塊鏈有特定的用途,如大規模選舉投票,大規模賭博,規避政府金融監管的金融交易等等領域,還是有不可替代的用處。
4、在更多時候,區塊鏈技術會依附於互聯網的B/S,C/S結構,實現功能的擴展,但總體依然屬於互聯網已有技術的補充。對於區塊鏈目前設想的絕大部分應用場景,都是可以用B/S,C/S結構實現,效率可以更高和技術也可以更為成熟。
5、無論是從信息傳遞效率和資源消耗,還是從神經系統進化看,區塊鏈無法成為互聯網的主流架構,更不能成為未來互聯網的顛覆者和革命者。
6、當然B/S,C/S結構發展出來的互聯網巨頭也有其問題,但這些將來可以通過商業的方式,政治的方式逐漸解決。
『玖』 請問區塊鏈的架構是什麼
首先需要知道區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密演算法等計算機技術的新型應用模式,其次對於區塊鏈系統的組成架構金窩窩集團認為是由數據層、網路層、共識層、激勵層、合約層和應用層組成。
1、數據層:封裝了底層數據區塊以及相關的數據加密和時間戳等技術
2、網路層:則包括分布式組網機制、數據傳播機制和數據驗證機制等;
3、共識層:主要封裝網路節點的各類共識演算法;激勵層將經濟因素集成到區塊鏈技術體系中來,主要包括經濟激勵的發行機制和分配機制等;
4、合約層:主要封裝各類腳本、演算法和智能合約,是區塊鏈可編程特性的基礎;目前西南地區金窩窩已經率先開始了以區塊鏈為底層技術的大數據研究,也提供以區塊鏈為底層技術的大數據服務。
5、應用層:則封裝了區塊鏈的各種應用場景和案例。該模型中,基於時間戳的鏈式區塊結構、分布式節點的共識機制、基於共識算力的經濟激勵和靈活可編程的智能合約是區塊鏈技術最具代表性的創新點