主页 > 苹果手机imtoken下载 > 区块链开源代码,区块链k线基础知识
区块链开源代码,区块链k线基础知识
区块链实际上是多种技术的结合。 非区块链技术人员入门需要掌握哪些知识? 我们来看一张思维导图。
区块链知识图谱
眼里有些花草树木? 搞技术这么难,得不断学习再学习。 简单总结一下这张图,有些知识点没有列在图中。
1.编程语言
你要懂C,因为比特币的源码是用C写的,要想懂比特币,就得懂C;
懂golang是因为以太坊和Hyperledger的架构都是用go写的;
Solidity是以太坊的智能合约语言,开发DApp必须学习;
2.分布式基础
区块链的基础是P2P网络,因此需要掌握P2P网络相关的知识:
KAD算法,即以太坊的P2P路由查询算法;
泛洪机制,也就是比特币使用的P2P路由查询算法;
NAT穿透,比如比特币使用的upnp协议;
3、比特币的运行机制:
交易原理、交易验证原理、比特币交易脚本等。
4. 共识算法:
区块链的核心之一是共识。 通用共识算法:
Paxos算法:非拜占庭共识算法,常用私有链;
Pbft算法:拜占庭容错共识算法,一般用于联盟链;
Pow/pos/dpos算法:公链中使用的一些共识算法。 比特币和以太坊使用 PoW,也称为挖矿。
5.算法:
区块链中使用的加密算法,特别是非对称加密和数字签名技术,以及哈希算法;
零知识证明:区块链常用的算法:
另外,比如Merkle trees,Bloom filters等。你还需要掌握以下内容;
6. 以太坊工具:
Web3.js、geth、truffle等以太坊开发工具需要熟练使用,将用于搭建私有链和部署自己的合约。
7. 区块链安全:
一些区块链安全相关的知识也要了解,比如比特币的双花攻击原理,以太坊的经典安全事件和原理等;
8.数据库数据库
NoSql数据库需要掌握,比如google的level db比特币运作机制图解,redis等,很多区块链公司需要掌握这些非关系型数据库。
9. 源代码:
源代码是最好的教程。 源代码面前没有秘密。 比特币、以太坊等经典区块链都是开源的,所以学习源码是必不可少的。
总之,非区块链岗位的技术人员如果想从区块链入手,需要学习的知识还是很多的。 从最近找工作的经历来看,从事后台开发的技术人员加入行会相对容易,而其他则相对困难。 可以考虑做一些更高层次的方向比特币运作机制图解,比如钱包,交易所。