系统架构

Bitcoind

外部(点对点网络):

  • 发现其它节点并与它们连接
  • 从其它节点接收信息或向其它节点发送信息

内部:

  • 将RPC公开给矿池软件和mAPI
  • 可以启用可选的REST接口

矿池软件

外部(stratum协议):

  • 公开的API使ASIC矿机连入并开始进行区块头运算(挖矿)
  • 向ASIC矿机发送工作任务
  • 接收有效的share或验证区块头

内部(Miner ID):

  • 从Miner ID请求coinbase文档,并将其纳入coinbase交易中
  • 从Miner ID收到签名的coinbase文档(coinbase2)

mAPI

外部(mAPI公共接口):

  • 对外公开mAPI调用,以宣传交易费报价以及接收交易
  • 接受事件通知的回调注册
  • 以交易费报价和交易响应(以及Merkle证明)来进行响应

内部(Bitcoind RPC):

  • 连接Bitcoind RPC提交交易
  • 接收交易响应(如txid)
  • 提供“双花”和Merkle证明的事件通知