在比特币系统中,没有中心机构负责产生区块及“造币”,而是有所有的参与节点进行
竞争,竞争的胜利者获得“产生区块”(或称为记账)的权利,把一批交易记入区块链(即账本),每个新建区块中的coinbase交易相当于“造币”,凭空生成出比特币。
由于coinbase中的输出(区块奖励)由产生该区块的节点指定,这就鼓励了节点积极参与竞争、争取记账权利。
这个竞争通过“挖矿”实现:
有一个系统级的参数:挖矿难度系数。该参数指明的是Hash值的开头有多少个零,或者把Hash值看作数字的话,该参数指明一个目标值target,挖矿的目标是找到Hash值小于该目标值的区块。
如何找?:对区块头中的nonce值进行修改并计算相应的区块头的Hash值,如果Hash值小于target,则说明挖到了一个有效(可以成为区块链上)的区块,可以用这个区块区参与竞争记账。
1