- 综合介绍
- 从比特币到比特币核心
- 比特币开发环境
- 编译比特币核心的源代码
- 运行比特币核心节点
- 配置比特币核心节点
- 比特币核心 API
- 不同语言客户端、库和工具包
- 简单的应用开发(一):使用bitcoinj客户端监听转账,和发起转账
- 简单的应用开发(二):使用rust与BRC-20交互
- 综合介绍
- 公钥密码学
- 输出和输入脚本
- IP 地址:比特币的原始地址(P2PK)
- 历史遗留地址P2PKH
- Base58check编码
- 压缩公钥
- 历史遗留的支付到脚本哈希地址(P2SH)
- Bech32地址
- 高级密钥和地址
- 综合介绍
- 序列化的比特币交易
- 版本
- 扩展Marker和Flag字段
- 输入
- 输出
- 见证结构(Witness Structure)
- 锁定时间
- Coinbase交易
- 权重和V字节(Vbytes)
- 历史遗留序列化
- 综合介绍
- 交易脚本和脚本语言
- 脚本化的多重签名
- 支付到脚本哈希(Pay to Script Hash,P2SH)
- 数据记录输出(OP_RETURN)
- 带控制流的脚本(条件子句)
- 复杂脚本示例
- 默克尔替代脚本树(MAST)
- 支付到合约(P2C)
- 无脚本多签名和门限签名
- Taproot
- Tapscript
- 综合介绍
- 谁支付交易费用?
- 手续费和费率
- 确定合适的费率估算
- 替换交易(RBF)费率提升
- 子支付父(Child Pays for Parent,CPFP)费率调整
- 交易包中继
- 交易固定
- CPFP削减和锚定输出
- 将费用添加到交易中
- 时间锁对抗费用抢夺
- 综合介绍
- 比特币经济学与货币创造
- 去中心化共识
- 交易的独立验证
- 挖矿节点
- 构建区块头
- 挖掘区块
- 中位时间过去(Median-Time-Past, MPT)
- 成功挖掘区块
- 验证新区块
- 组装和选择区块链
- 挖矿和哈希彩票
- 哈希攻击
- 改变共识规则