笔记 | 普林斯顿公开课《比特币和数字货币技术》3.5

公开课地址:https://www.coursera.org/learn/cryptocurrency/home/welcome

3.5 比特币网络

bitcoin p2p network

  • ad-hoc协议(TCP 8333)
  • ad-hoc网络,随机拓扑
  • 节点对等
  • 新节点随时加入
  • 3小时遗忘失去连接的节点

如何加入网络?详细讲解
seed node

transaction propogation (flooding)
详细讲解如何传播交易
gossip protocol

一个节点判断是否要relay一个交易消息的标准:
1- txn is valid with current blockchain
2- script matches whitelist(避免异常交易)
3- 之前没见过(避免死循环)
4- 不能与其他交易冲突(避免双花)

2~4都只是sanity checks,也就是说,节点并不一定都会执行这些规则。

不同节点的txn pool可能不一致。 txn pool / block may differ!
race condition:

  • 默认行为:接受首先听到的消息
  • 网络位置有关
  • 矿工可能实现其他逻辑!

block propogation

  • block达成hash计算目标
  • block具有所有有效交易(运行所有脚本,即使不relay)
  • block建立在最长链上(避免分叉)

block传播的时间统计分析
75%分位点超过30秒钟

网络有多大?

  • 无法度量
  • 1M IP/month
  • only 5-10k full nodes(持久连接 & 完全验证)

完全验证节点

  • 持久连接
  • 包含完整交易记录数据
  • 收听和传播所有的节点和交易

比特币完整区块链大小统计图线

UTXO多少,多大,可以完全放在内存里(提高速度)

Thin/SPV节点

  • trust full validating nodes
    1000x cost savings!
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容