1. 程式人生 > >2區塊鏈底層技術-邏輯架構

2區塊鏈底層技術-邏輯架構

新的 sha 最終 網絡架構 篡改 根據 幣圈 容量 ima

  區塊鏈因為比特幣而為大家熟知,隨之而來衍生出一些優秀的項目,比較有代表性的有以太坊(Ethereum)、鋸齒湖(Sawtooth Lake)、超級賬本(Hyperledger)、比特股(bitshares)、瑞波(Ripple)、小蟻等,根據不同的應用場景分為應用於公眾的公有鏈,需要授權使用的私有鏈和聯盟鏈,還有在原有區塊鏈基礎上進行擴展的側鏈等,隨著區塊鏈的發展,相信還會有其他形式的應用出現,任何的應用都不是絕對的,應該按實際的業務需求來定。

  比特幣在犧牲資源和性能的情況下增加了安全和穩定,相較於比特幣,新衍生的區塊鏈項目在一定程度上解決了資源浪費和性能這兩方面的問題,但安全性有待繼續研究,我們經常會看到某某區塊鏈被攻擊,發現了某某區塊鏈的漏洞等,這也充分說明了,我們還有很多坑要踩,很多問題需要研究和嘗試。

  從比特幣開始,到現在眾多新的區塊鏈項目出現,區塊鏈的層次結構基本分為應用層、合約層、激勵層、共識層、網絡層、數據層。

技術分享圖片

  應用層一般是業務平臺或應用平臺,通過業務邏輯處理形成需要上鏈的數據,按照區塊鏈定義的規則,將數據發送給區塊鏈。最終可以是一筆交易,也可以是需要上鏈的規則數據,還可以是一筆合同等等。對於應用層我們可以理解為各種應用場景或案例。

  合約層在比特幣的時候是腳本代碼,新出現的區塊鏈項目提出了智能合約的概念,智能合約采用圖靈完備的編程語言,以期滿足更廣泛的應用的場景,因為有了智能合約才有了現在各種各樣的幣,以及針對於不同行業的區塊鏈應用。但是圖靈完備具有一定漏洞缺陷,所以智能合約還需要一段時間的嘗試。

  共識層是區塊鏈中比較重要的環節,區塊鏈是分布式的系統,對於分布式系統來說,分布式一致性是關鍵的問題,為了使這種分散的節點達成一致,而采用了共識機制。目前論證和使用比較多的共識機制有:工作量證明(Pow)、權益證明(Pos)、股份授權證明機制(DPOS)、驗證池(Pool)、實用拜占庭容錯(PBFT)、授權拜占庭容錯(dBFT)、權威證明(PoA)等,以後會專門講解這部分內容。

  激勵層在中本聰的設計中采用全員記賬的方式,記錄系統中產生的交易,為了使全網節點競爭記賬,而采取的獎勵措施,是一種獎勵的發行和分配機制,獎勵包括系統獎勵和交易手續費。這種通過競爭記賬最終獲得獎勵的過程就是我們常說的“挖礦”。目前幣圈流行的各種幣都是激勵層的傑作,這種獎勵機制在公有鏈中使用比較普遍,隨著區塊鏈的發展和特定業務場景的需求,聯盟鏈也開始嘗試使用獎勵機制(ibm的超級賬本也要加入Token了)。

  網絡層用於實現區塊鏈各個節點的信息交互,區塊鏈網絡是分布式網絡,網絡中存在多個節點。提到分布式大家可能會想到客戶機/服務器模式,這種模式存在“中心化”的弊端,區塊鏈采用的是對等網絡架構,是一種在對等者之間分配任務和工作負載的分布式應用架構。網絡中的節點彼此共享資源,服務和內容。這種分布式架構具有高度的容錯性和抗攻擊性,但是性能問題是亟待解決的問題。個人認為分布式架構在區塊鏈應用中是十分重要的存在。

  數據層是區塊鏈最終的數據存儲,區塊鏈基本數據單位為區塊,以hash作為塊標識,用來與下一區塊相連,最終形成首尾相連的鏈表式數據結構。區塊是信息記錄集,記錄了被創建時發生的所有事情,區塊中的數據采用了密碼學技術來保障數據的安全性。需要註意的是,對於區塊的容量在設計階段要做好詳細的規劃,以免出現比特幣的容量限制問題。

  總結,對於區塊鏈可能還會存在多種的邏輯應用,以上列出的是目前區塊鏈架構普遍采用的方式,如果大家有什麽想法可以互相討論。

  另外,現在區塊鏈火熱的點很多都在“幣”上,不知道專家,大佬們閑暇之余是否可以考慮一下,用區塊鏈解決一些問題呢,比如保護莘莘學子成績不被篡改,不被冒名頂替,又比如文藝工作者的確權問題,侵權盜版等。

2區塊鏈底層技術-邏輯架構