技術控看過來,一張圖告訴你區塊鏈的知識圖譜

區塊鏈實際上是由多種技術組合起來的一個東西,非區塊鏈崗的技術人員要想入門需要掌握哪些知識呢,來張思維導圖看看。

技術控看過來,一張圖告訴你區塊鏈的知識圖譜

區塊鏈知識圖譜

眼睛有點花有木有?搞技術就是這麼苦逼,得不斷的學啊學。簡單概括一下這個圖吧,圖裡有些知識點實際上都沒列出來。

1、編程語言

要懂C++是因為比特幣的源代碼就是C++寫的,要想看懂比特幣,必須得會C++;

要懂golang是因為以太坊和超級賬本的fabric是用go寫的;

solidity是以太坊的智能合約語言,要想從事DApp的開發必須得學;

2、分佈式基礎

區塊鏈的基礎就是P2P網絡,因此和P2P網絡相關的知識需要掌握:

KAD算法,這是以太坊的P2P路由查詢算法;

泛洪機制,這是比特幣中用到的P2P路由查詢算法;

NAT網絡穿透,比如比特幣中用到的upnp協議;

3、比特幣的運行機制:

交易的原理,交易驗證的原理,比特幣的交易腳本等等;

4、共識算法:

區塊鏈的核心之一就是共識。常用的共識算法:

paxos算法:非拜占庭一致性算法,私鏈往往要用到;

pbft算法:拜占庭容錯的一致性算法,聯盟鏈中一般都採用pbft;

pow/pos/dpos算法:公鏈中用到的一些共識算法,比特幣和以太坊用的就是PoW,也就是常說的挖礦。

5、算法:

加密算法,尤其是非對稱加密和數字簽名技術,另外還有hash,這都是區塊鏈中用到的;

零知識證明:區塊鏈中常用的一種算法;

另外像merkel樹,bloom filter等也需要掌握以下;

6、以太坊工具:

web3.js,geth,truffle等以太坊開發工具需要熟練運用,會用他們搭建私鏈並部署自己的合約。

7、區塊鏈安全:

一些與區塊鏈安全相關的知識也要了解,例如比特幣中的雙花攻擊的原理,以太坊上經典的安全事件及原理等等;

8、數據庫

NoSql數據庫需要掌握,比如google的level db,redis等等,很多區塊鏈公司都要求掌握這些非關係型數據庫。

9、源碼:

源碼是最好的教程,在源碼面前沒有秘密可言,比特幣和以太坊等經典的區塊鏈都是開源的,蕩下源碼學習是必不可少的。

總之,非區塊鏈崗的技術人員想入門區塊鏈還是有很多知識要學,從近期找工作的經驗看,一般從事後臺開發的技術族入行會比較容易,其他的就相對難一些,可以考慮做做錢包、交易所等偏上層一些的方向考慮。


分享到:


相關文章: