矿机是专门设计用于挖比特币的计算机硬件系统。 专业挖矿设备连接着一个运行完整比特币节点的服务器。 一些矿工是在没有完整节点的条件下进行挖矿。——矿池 挖矿节点时刻监听着传播到比特币网络的...
精通比特币(73):什么样的交易能通过节点校验?
每一个节点在校验每一笔交易时,都需要对照一个长长的标准列表: ▷交易的语法和数据结构必须正确。 ▷输入与输出列表都不能为空。 ▷交易的字节大小是小于 MAX_BLOCK_SIZE 的。 ▷每一个输出值...
精通比特币(72):比特币的去中心化共识
在不考虑相信任何人的情况下,比特币网络中的所有参与者如何达成对任意一个所有权的共识呢?所有的传统支付系统都依赖于一个中心认证机构,依靠中心机构提供的结算服务来验证并处理所有的交易。比特币没有中心机构,...
精通比特币(71):比特币发行方案
通过创造出新区块,比特币以一个确定的但不断减慢的速率被铸造出来。大约每十分钟产生一个新区块,每一个新区块都伴随着一定数量从无到有的全新比特币。每开采210,000个块,大约耗时4年,货币发行速率降低5...
精通比特币(70):比特币的共识机制和货币发行机制
共识机制 矿工们在挖矿过程中会得到两种类型的奖励:创建新区块的新币奖励,以及区块中所含交易的交易费。为了得到这些奖励,矿工们争相完成一种基于加密哈希算法的数学难题,这些难题的答案包括在新区块中,作为矿...
精通比特币(69):挖矿简介
“挖矿”这个词有点误导,更多将人们的注意力集中到创造每个区块中获得的奖励。 虽然挖矿能够获得这种奖励作为激励,但挖矿的主要目的不是这个奖励或者产生新币。 如果您只是把挖矿视为创建新币的过程,则会将比特...
精通比特币(68):使用测试区块链进行开发的流程
Bitcoin的各种区块链(regtest,segnet,testnet3,以及主干网)为比特币开发提供了一系列测试环境。 无论你是开发比特币核心还是另一个全节点共识客户端,诸如钱包,交易所,电子商务...
精通比特币(67):比特币的测试区块链
2009年1月3日由Satoshi Nakamoto创建的“主要”比特币块链,即本章研究的创世区块所在的网络,被称为主干网。另外还有其他用于测试的比特币区块链:现存的有testnet,segnet和r...
精通比特币(66):Merkle树和简单支付验证(SPV)
SPV节点不保存所有交易也不会下载整个区块,仅仅保存区块头。它们使用认证路径或者Merkle路径来验证交易存在于区块中,而不必下载区块中所有交易。 例如,一个SPV节点想知道它钱包中某个...
精通比特币(65):区块中的Merkle树
区块链中的每个区块都包含了产生于该区块的所有交易,且以Merkle树表示。 Merkle树是一种哈希二叉树,它是一种用作快速归纳和校验大规模数据完整性的数据结构。这种二叉树包含加密哈希值...