织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

Jan | 祛魅比特币(3)

时间:2021-04-28 15:42来源:未知 作者:admin 点击:
比如 Alice 要给 Bob 转 100 个币。Alice 会减少 100 个币,Bob 会增加 100 个币。相同的改动是所有的节点都会做的,都会在本地维护的数据中做相应的改动。这

比如 Alice 要给 Bob 转 100 个币。Alice 会减少 100 个币,Bob 会增加 100 个币。相同的改动是所有的节点都会做的,都会在本地维护的数据中做相应的改动。这就是为什么即使你不在线,别人也可以给你转账的原因。

甚至你都没有用过比特币,但只要你有比特币地址即可。别人给你转账其实不是把指令发给你,而是把指令广播到整个网络。整个网络中都会知道 Alice 要给 Bob 转 100 个比特币。共识机制就会保证所有人都会做相同的修改。因为有副本,有共识机制,哪怕你不在线,也会有很多节点共同维持想象中的数据库。

等你回到链上,别人会告诉你比如三天前 Alice 给你转了 100 个币,我们都检查过了,转账没有问题,你同步一下。你就可以使用新收到的这笔转账了。

比特币的共识机制

晚风说:这是通过多重博弈,有其他人存在来保证做记录的人都倾向于记录真实数据而不会说谎吗?

谢晗剑:这就涉及到比特币具体的共识机制是怎样的。比特币的共识机制是工作量证明,它是带有博弈机制的设计。

具体来说,当刚才那个例子中 Alice 想要转账时,她会把指令广播给网络中的每一个节点。每个节点都会不停地处理交易。处理交易的方法是等一个固定的间隔,比特币是十分钟。节点会在这十分钟内收集它听到的交易,可能在这十分钟有很多人都发起了转账。节点可能收到了三十笔转账的信息,会把它们打包到一起。

这十分钟收集到的交易集合我们称之为一个区块。节点产生了区块之后就要解一个数学上的难题。只有解开了这个难题才有资格把新产生的这个区块广播给别的节点。如果我的节点没有算出这个难题,那我就放弃了。可能还没有算出来就会收到别人产生的区块。这就说明别人先把难题算出来了。

每隔十分钟,比特币网络中会自动产生一个数学上的难题。网络中所有的节点都会共同解这道题,比谁算得快。

解题的方法基本上靠猜,没有特别的捷径。 只能特别随机的猜答案,验证一下是不是。如果不是就换下一个答案。所以总会有一个运气特别好的人,纯粹是运气好,第一下就猜中了,或者猜了 3000 次就猜中了,别人要猜 1 万次才能猜中。

这个运气特别好的人,因为找到了答案,就是把他打包的区块,就是十分钟交易的集合,附带上它猜到的答案广播给网络中其他所有的节点。因为其他所以有节点还在猜的过程中,但也会不停的看是否有其他人已经猜出来了。他们收到新的区块就会验证这个猜的答案是不是对的。如果是对的,它们就会接受这个区块。这个区块的交易就被处理了,大家再去等下一个十分钟接收新的交易。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容