bitcoin-notes 比特币源码分析
吐槽
比特币最大的问题是挖矿,算力的集中,与其去中心化的理想背道而驰.
这是对现实的折中,也使其有了被主流接受的可能.
如果去中心化最终成为主流,比特币将因此被淘汰.
简介
主要是对源码的注解,也有一些总结性的东西.仅供参考,欢迎反馈
源码的注解重点是头文件(头文件明白了,cpp文件基本也没问题).
目前计划只包含核心的文件,不含qt界面的代码.
本项目主要针对山寨币开发者,各路大牛请绕道
文件目录
头文件 | 状态 |
---|---|
addrman.h | ✔️ |
alert.h | ✔️ |
allocators.h | ❌ |
base58.h | ✔️ |
bignum.h | ✔️ |
bitcoinrpc.h | ✔️ |
bloom.h | ✔️ |
checkpoints.h | ✔️ |
checkqueue.h | 🕐 |
clientversion.h | 🕐 |
compact.h | ✔️ |
crypter.h | ✔️ |
db.h | ✔️ |
hash.h | ✔️ |
init.h | 🕐 |
key.h | ✔️ |
keystore.h | ✔️ |
leveldb.h | ✔️ |
limitedmap.h | ✔️ |
main.h | ❌ |
mruset.h | ✔️ |
netbase.h | ✔️ |
net.h | ❌ |
protocol.h | ✔️ |
script.h | ❌ |
ui_interface.h | ❌ |
serialize.h | ❌ |
sync.h | ❌ |
threadsafety.h | ❌ |
txdb.h | ❌ |
uint256.h | ❌ |
util.h | ❌ |
version.h | ✔️ |
walletdb.h | ✔️ |
wallet.h | ❌ |
前置知识
- C++
- 密码学相关知识
欢迎Issue、PR
版本
源码的版本是0.8;
最新的比特币源码结构和0.8版本有所差异,但是核心内容是不变的.
0.8版本和大部分的山寨币的源码结构也是一样的。
目标
使阅读比特币源码,了解比特币原理与实现 更方便,更快捷.