主页 > imtoken > 比特币是如何产生的? (算法)

比特币是如何产生的? (算法)

imtoken 2023-01-18 19:21:49

BTC$48360.41+2.46%ETH$3797.71+2.32%DOGE$0.17511+1.64 %EOS$3.1438+2.27%ADA$1.366187+1.10%XRP$0.85087+1.55%

一:区块的版本

第二:前一个区块的hash值:prev_hash

三:要写入的交易记录的哈希树的值:merkle_root

四:更新时间:ntime

五:当前难度:nbits

挖矿的过程就是找x提示

SHA256(SHA256(版本 + prev_hash + merkle_root + ntime + nbits + x )) <目标

上式中x的范围是0~2^32,TARGET可以根据当前难度计算。除了 x 之外,你还可以尝试更改 merkle_root 和 ntime。由于hash的特性,找到这样一个x只能靠蛮力来完成。

找到 x 后,您可以广播一个新区块,其他客户端将验证您的区块是否有效。如果你的区块被接受了,因为每个区块的第一笔交易必须是把新形成的25个比特币发送到一个地址,当然你要把这个地址设置为你拥有的地址来获得这25个比特币。

----------------------------------- ---------- ----------------

比特币从开始到现在的每一笔交易记录都保存在网络上,一个巨大的交易记录文件(现在大约12G),由整个比特币网络维护。此文件的平均更新周期为 10 分钟。新增的交易记录称为区块,而这个巨大的文件由一系列区块组成,称为区块链。

为什么是 25 个比特币?

这是规则。初始数量为 50 个比特币,剩余的比特币每形成一半,收益就会减半,这样最终可以形成的比特币总数接近 2100 万个。如果你还坚持自己挖了50个比特币,其他客户端不会接受,这个区块就白挖了。

如何保证平均更新周期为10分钟?

TARGET 越小,求解 x 的难度就越大。每形成 2016 个区块(约 14 天),网络会根据此期间形成新区块的平均间隔调整 TARGET。

估计最快的人总是先解决它吗?

没有。你总是想把挖矿收益当成自己的,所以每个人在估算的时候,发送挖矿收益的地址不一样,所以merkle_root是不一样的,也就是说,每个人都是从不同的初始状态开始求解的。

如何同时解决?

区块链会分叉,有的客户端会接受A,有的会接受B,直到某个分支出现更长,大家都会选择这个更长的分支。如果你挖的不幸的东西没有被选中,你的挖矿收益将无效。

由于我选择了较长的分支,如果我用太低的难度来解决怎么办?

客户端在众多分支中找到与当前难度匹配的最长分支。

这些估计是否浪费了?

如果您要花两次相同的钱,您需要这样做。挖掘一个新区块,但将其隐藏在广播中,并继续挖掘。找到A店,支付比特币,让网上的其他人挖区块,写下这个交易记录。找到B店,支付比特币比特币是如何产生的,写下你挖的区块。如果你能挖出两个区块并广播出去,大家就会用你更长的分支作为当前区块链,商家A收到的比特币就不会被识别。这种成功命中的概率取决于您估计散列的速率。如果整个网络的估计能力足够高比特币是如何产生的,这样的功率攻击要么成功率非常低,要么成本非常高。

欧易okex交易平台,欧易okex交易所官网,欧易okex官方下载APP