简介
区块链作为一个新的词汇,在技术层面可以简单的划分为应用层的技术跟底层技术。通常讲应用层的技术,指的是Dapp(区中心化的应用程序或web程序)、应用钱包等等。而底层技术通常来说是指私链、公链或者联盟链。当然完全这样来划分或许并不准确,但这仅仅是一个表达的纬度。而底层技术层面又包含很多细分的技术。比如: 加密算法、数据结构、P2P网络、分布式存储、交易&交易模型、虚拟机等等。同时区块链底层技术由于目前很多都还处于研发实验阶段,所以在研读区块链底层技术时不仅仅需要关注代码,还要理解白皮书里面阐述的设计思想与哲学。由于绝大多数区块链项目都是由一篇白皮书开始的,所以阅读并能实现白皮书中的设计思想,是区块链底层技术的核心也是必要条件。
区块链底层技术不仅涵盖内容广泛、技术难度高,而且需要绝对安全。正是因为此,区块链底层技术也充满了活力与魅力,而我正在学习、实践的路上,也希望成为一名技术geek!
基础
编程语言
- Go语言
- C++
数据结构
- 基础数据结构与算法
- MerkleTree 默克尔树
- MerkleDAG
加密算法
分布式共识算法
交易模型
- UTXO交易模型
- 账户模型
网络
- HTTP&Restful API基础理论及实践
- RPC&gRPC基础理论与实践
- P2P对等网络基础理论与实践
- 分布式Hash表简易实现
分布式存储
进阶
虚拟机&解析器
- EVM以太坊虚拟机
- LLVM
- Clang