主页 > imtoken1.0钱包下载 > 比特币技术在区块链中的书写过程是怎样的

比特币技术在区块链中的书写过程是怎样的

imtoken1.0钱包下载 2023-03-13 05:43:36

本文主要介绍《比特币技术在区块链中的书写过程是怎样的》。 在日常操作中比特币链上数据查询,相信很多人都对比特币技术在区块链中的书写过程有何疑惑。 各种资料,整理出简单易用的操作方法,希望能帮助大家解答“比特币技术在区块链中的编写过程是怎样的”的疑惑! 接下来就请跟随小编一起学习吧!

0) 用户提交交易(个人补充):A是真人,他想给B转账,A需要使用比特币客户端,选择转账金额和B的钱包ID,点击发送。 比特币客户端可以获得A的地址,即A的钱包ID和电子签名。 因此,一笔交易所需的所有信息都是可用的,除了前一笔交易的输出。

1)节点广播交易:这笔交易通过比特币客户端发送给比特币的一个系统节点N1。 N1收到交易信息后,会广播给其他节点。 这是异步的,不等待其他节点回复,其他节点收到新的交易信息后也会进行广播。

区块链与比特币的联系_哈比特币区块链_比特币链上数据查询

2)节点打包交易:假设系统的每个节点都有向区块链写入数据的能力(实际上一个节点向区块链写入数据就是写入本地磁盘)。 每个节点将收到的有效交易信息放入一个区块中保存在本地,我们称之为候选区块。

3)挖矿:(工作量证明)挖矿这个词很流行。 我们之前提到过,每个区块的头部都有一个随机数。 挖矿的本质是利用计算机的计算能力找到一个合适的nonce,使得这个区块中所有信息的hash后的小数点足够小,比如前70位是0。因为变化nonce的值会影响整个hash值,所以改变nonce值可以改变hash后的值。 由于这个阈值足够小,需要大量的计算,通常在10分钟内挖出nonce,挖出nonce的节点才有资格将候选区块写入本地区块链,这证明了工作量。 这个挖矿节点可以称为矿工。

为什么这些矿工不合作,各自在一定范围内挖矿呢? 这是不可行的。 由于每个矿工都有不同的本地候选块,因此每个候选块适用的nonce值也不同。 可能你被分配了一个根本不能挖的范围,所以每个矿工只能自己挖。

哈比特币区块链_区块链与比特币的联系_比特币链上数据查询

为什么有人想成为一名矿工? 人不做吃力不讨好的事,因为矿工挖矿就得到了比特币。 这笔钱将以账单的形式记录在每个区块的开头。 所以,其实每个矿工需要的是CPU的算力和电量。 算力越高,能挖到矿的概率就越大,人越有钱,有能力继续增加算力。

这样一来,矿山开采的时间就会越来越短,因为计算机的计算能力在逐年提升。 在这里比特币链上数据查询,中本聪设计了挖矿难度可以动态调整,即哈希后的值需要小于的阈值是可调的。 如果你挖得快,把它调低一点,如果你挖得慢,就把它调高一点。 使整个区块链稳定在每 10 分钟增加一个区块的水平。

因此,挖矿的过程可以概括为:挖属于自己候选区块的矿,将候选区块写入本地区块链。

比特币链上数据查询_区块链与比特币的联系_哈比特币区块链

4)广播区块:矿工在写入这个区块B后,需要将B广播给其他节点。

5)验证区块并写入:当节点收到一个区块B时,会验证B是否符合要求,交易是否合法,即没有重复消费比特币。 B不符合要求不予录取。 如果满足要求,将B写入本地区块链的末尾。

6)继续写: Step 5)只把这个block写到本地,那怎么告诉别人我认得这个block呢? 方法如下:若有新区块产生,则追加到B的末尾,继续广播新区块。 也说明该节点相信B的有效性,并打算在B之后添加数据。

比特币链上数据查询_区块链与比特币的联系_哈比特币区块链

理想的运作模式

一个理想的工作模式是:严格按照一个节点每10分钟挖一次,一个块可以在10分钟内到达所有节点。

例如:比特币节点有几千个,一个节点在1:00挖矿,可以向区块链写入一个区块,并在1:10之前将这个区块广播给所有其他节点,其他节点也验证了这个区块并且将此块添加到本地链。 此时,所有节点数据都是一致的。 1点10分,另一个节点挖了矿,继续循环。

比特币链上数据查询_区块链与比特币的联系_哈比特币区块链

这样整个分布式系统中的数据始终是一致的,不一致的时间不超过10分钟。 由于严格控制写入速度,所以系统没有冲突。 系统就这样愉快地运行了。

然而,现实并没有那么美好。 可能10分钟后两个节点挖矿,链会发生冲突,也就是数据不一致。 我们将在下一节介绍冲突解决和双重支出问题。

至此,“比特币技术在区块链中的编写过程是怎样的”的学习就结束了,希望能解开大家的疑惑。 理论与实践相结合能更好的帮助你学习,快去试试吧! 如果你想继续学习更多相关知识,请继续关注易速云官网,小编会继续努力,为大家带来更多实用文章!