Block

来自Bitcoin Wiki
跳转至: 导航搜索

Bitcoin网络中的数据永久记录在'block中。每个block都记录了最近的交易,一个nonce随机数,和它之前的block的散列值。当block的SHA-256散列值低于当前target时,它就“完成”了。一次散列计算就完成block的可能性很低,因此需要对nonce增量重新计算block散列直至完成。

Bitcoin交易发生时,交易发起者会将这个交易广播到整个网络,所有铸币端都收集这一信息并将其加入正在生成的block中。如果交易量相比平均交易量大很多,则这笔交易可能被收取一定费用。

block中的第一笔交易是特殊的:它为生成这个block的人创造新的比特币。仅当这笔交易的数量正确的时候,其他的端才会接受这个block。每个block生成的比特币数量是50,每生成210000个block(大约需要4年),这个数字减半。

网络预期每小时生成6个block。每生成2016个block(约花费2星期),所有Bitcoin客户端将目标与实际生成数量做比较,并改变target。这将增加或降低生成block的难度

客户端会接受“最长”的block链。block链的长度是指链的累积计算难度,最长的链是累计计算难度最高的链,而非包含最多block的链。这可以防止攻击者生成大量低难度block并将其接在链上被网络接受。

关于block的常见问题

总共有多少block?

目前的block总数

block的最大编号是多少?

block编号没有上限。平均每10分钟链上增加一个block

全部2100万比特币都生成出来之后也没有(编号上限)吗?

没有。block的作用是证实交易。全部比特币生成后人们仍然可以交易,只要还有人在用比特币交易block就会继续生成。

生成一个block需要花费我多少时间?

无法准确预知。这个计算器能够告诉你可能花费的时间。

是否能够得知生成block的进度? 不能。在block完成前不会有确定的进度。成功生成一个block的几率与已经用于生成这个block的时间无关。

这有点像一次抛37枚硬币,使每个硬币都正面都朝上。每次你成功的几率是一样的。

我在哪里能了解更多技术细节?

block散列算法页面有更多技术细节。

参看

比特币总量增长曲线