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版本和大部分的山寨币的源码结构也是一样的。

目标

使阅读比特币源码,了解比特币原理与实现 更方便,更快捷.