在上一篇文章中,我們學習到區塊鏈是由一個個的區塊組成的,所有的區塊串聯起來就組成了區塊鏈,在區塊鏈的世界裡,遵循特定的算法邏輯,一切數據都在去中心化運行,所有的數據都無法被惡意篡改。
我們也了解到區塊鏈分為公有鏈,聯盟鏈,以及私有鏈,而且鏈的發展又分為區塊鏈1.0時代,區塊鏈2.0時代和區塊鏈3.0時代。
區塊鏈按照圈子的發展又分為鏈圈,礦圈和幣圈。
在這篇文章中,我們開始從區塊鏈的發展來展開學習區塊鏈中的比特幣,以太坊,超級賬本,以及其他一些主流鏈的一些技術知識。
比特幣
比特幣剛開始出來的時候,大家對區塊鏈的技術底層還不是很了解,隻是覺得比特幣就是區塊鏈,其實真實情況不是這樣的。
比特幣其實是運用了區塊鏈的技術而發行出來一種代幣,這種代幣我們又可以稱它為通證,積分,在當時的技術條件前提下,比特幣隻能支持持有,轉賬,慢慢的認可它價值的人多了,這個代幣迄今為止還是處於很高的一個價位。
對於比特幣的了解,我們只要知道,它是區塊鏈發展最初階段的技術的產物,而且它不等同於區塊鏈,僅僅是利用區塊鏈技術實現的一種虛擬貨幣而已。
以太坊
由於比特幣處於區塊鏈1.0的階段,最直觀的缺點就是它的交易速度,我們要轉一筆賬,這通常要花費10分鐘左右的時間。
以太坊的誕生將區塊鏈的交易時間又往前進步了一些,達到每筆交易大概花費10秒左右的時間。
以太坊是由天才V神帶領團隊創建出來的,他的年齡不大,年僅20歲左右就已經創建出了以太坊。
以太坊之所以稱之為區塊鏈2.0時代,除了交易時間上加快之外,還在於它創建了智能合約可編程技術。
以太坊迄今為止是生態發展最好最龐大的鏈,而且其通證ETH價值也是挺高的,我們剛開始入門區塊鏈技術的學習,大部分都是先從學習以太坊開始。
以太坊的智能合約編程說的是它可以利用代碼編程實現代幣的發行,通過智能合約,我們可以在以太坊網絡上輕松的發行任何代幣,也可以上線任何智能合約產品,後面發展壯大的web3.0就是合約直接跟前端交互,而無需像傳統項目一樣需要後端接口和後端的數據庫。
以太坊智能合約的編程語言可以用solidity,vyper,cpp,python來實現,其中,solidity是以太坊最容易上手,也是用得最多的一門語言,而且基於以太坊的EVM虛擬機可以實現在線編程。
Hyperledger Fabric
Hperledger Fabric又稱之為『超級賬本』,因為這門技術就是專門存儲數據的,而且是分佈式存儲數據。
Hyperledger Fabric屬於聯盟鏈,它需要我們開發者掌握Go,Nodejs或者Java語言,shell腳本語言,一些運維功底以及算法,分佈式數據庫的使用。
在做聯盟鏈開發的過程中,我們首先要使用到多臺服務器部署節點環境,利用前面講的任一編程語言編寫sdk以及鏈碼邏輯,再通過使用kafka或者etcdRaft算法分配節點,再利用shell編寫部署腳本,使用paas或者saas平臺發佈部署的底層節點環境。
總的來說,Hyperledger Fabric要求的技術棧是比較深的。
Pokadot
Pokadot就是波卡,由以太坊技術黃皮書主要編寫者Gavin Wood博士創建的。
波卡想要達到的目的就是做跨鏈,由唯一的中繼鏈作為波卡的中心,其它的鏈作為它的平行鏈存在。
區塊鏈發展到這個階段,大家都意識到,區塊鏈的每條鏈都孤立存在的,所有的鏈都彼此孤立,數據不共享,資產不共享,所以就有了跨鏈的存在。
波卡技術的實現用的是substrate框架,底層用的rust語言,也因為rust語言的高級安全檢查內存等特性,所以目前想要在波卡上做應用的必須是要學會rust編程語言。
我們之前講過區塊鏈的私有鏈和聯盟鏈是自己的搭建的,但是如果自己有玩過應該曉得私有鏈以及聯盟鏈搭建的步驟是比較繁瑣的,而substrate框架的一大進步就在於它可以在幾分鐘內就可以運行一條鏈,這又是區塊鏈的一大進步。
Bianace Okex Heco Polygon Tron Eos Fisco-Bcos layer2網絡
Binance就是幣安智能鏈,Okex就是歐科雲鏈,Heco就是火幣鏈,Polygon就是Maitc鏈,這四大鏈都是在以太坊底層的基礎上改改共識,改改出塊就形成了自己的一條獨有的鏈了。
在技術上還是只要掌握了solidity合約編程語言就可以完全將我們的應用部署到這四條鏈上,跟以太坊非常類似。
Tron就是波場鏈,加了一些帶寬的概念以及用戶創建需要成本的概念;Eos就是柚子,比較出名的就是它的柚子錢包;Fisco-Bcos是webank開源的聯盟鏈。
這三條鏈我接觸得少,有興趣的可以了解了解。
layer2網絡,我們單獨拿出來講,它是屬於側鏈,也可以說它是鏈的擴容,通過以太坊的知識我們了解到,以太坊生態圈龐大,擁護極多,而隨著數據在鏈上越來越多,鏈的交易速度就會變得非常擁堵,那麼交易手續費也隨之高漲,令人望而卻步。
layer2網絡的誕生就是為了兼容以太坊的,讓用戶可以在layer2網絡上做交易,同時又可以與以太坊無縫交互,比如Aurora。
Avalance Solana Flow Neo Nervos Terra Near
這幾條鏈算是後面的後起之秀,也是後面區塊鏈技術發展的方向,因為隨著區塊鏈技術的不斷發展,對rust的要求也越來越多,這幾條鏈又是國外的鏈,用戶群體也是比較大,在這上面的生態也是比較成熟的,如果區塊鏈技術往後再進一步發展的話,這幾條鏈還是應該學習的,畢竟像以太坊這樣的擁堵已經嚇跑了許多的用戶,現在用戶更加迫切需要一條穩定的,可持續的,有前景的鏈來做支撐。
好了,這篇文章主要還是給大家講了區塊鏈的發展之路,更重要的是每個發展時間段,對技術開發者技術棧的要求是不一樣的,比如精通以太坊的開發,但是可能過一陣子以太坊的熱度就退去了,進而又是超級賬本或者其它一些鏈的發展,那麼對區塊鏈技術開發人員的挑戰是很大的,所以作為區塊鏈技術開發者,要一直保持學習,因為技術更新迭代太快,對區塊鏈技術開發者的要求越來越高。
總結一下:如果想在區塊鏈開發領域不被淘汰的話,一定要熟悉多門編程語言,熟悉每一條鏈的規則,這樣才可能在熟悉鏈的規則以及熟悉其編程語言的前提下做應用。
在下一篇的文章中,我們開始講解入門學習以太坊的一些技術知識。