主页 > imtoken苹果闪退 > 比特币P2P虚拟货币原理详解

比特币P2P虚拟货币原理详解

imtoken苹果闪退 2023-09-12 05:07:25

比特币挖矿机显卡原理_比特币运行原理_比特币原理详解

前天36氪报道《

比特币P2P货币:史上最危险的项目一文引发热议。

比特币(Bitcoin)是一种开源的P2P虚拟货币,不可追踪、不可破解。 有的用它来卖毒品,有的用它来支持自己喜欢的内容,还有的用它来打扑克。 这种货币可以影响政府、扰乱经济并提供无法控制的全球走私交易。

这篇文章的目的是抛砖引玉,但是抛砖引玉也没有白抛,引来了玉:

看到这篇文章后,云峰进行了深入的调查,详细解释了比特币的工作原理。 把这篇文章拿出来分享给大家。 也欢迎大家抛砖引玉。 以下为正文:

昨天看了

比特币的中文介绍很有意思。不过上面文章的解释很不靠谱,我花了一个晚上去

比特币官网仔细看了下,终于明白是怎么回事了。 感觉很有启发,尤其是对于虚拟货币的流通和发行,有很多借鉴意义。 今天写这篇博客来整理一下。

比特币运行原理_比特币挖矿机显卡原理_比特币原理详解

什么是货币? 货币是交换商品(包括服务)的媒介。 我们现在使用的货币都是有信誉的银行发行的,基本上都是靠信誉来保证的。 只要使用它的每个人都同意,那么我们就可以使用它进行交易。 货币具有一定的保值特性。 我把自己的劳动/服务/所有商品换成货币后,银行保证我以后可以换成几乎等价的东西。 这个保证的前提是银行不会涌入新的货币,大家相信这一点。

以前,我们使用贵金属作为货币。 因为贵金属的产量不高,新货币增加的速度有限,而经济在不断扩张,市场需要更多的货币,让商品尽可能流通。 哪里有需求,哪里就有价值。 从这个意义上讲,贵金属生产其他东西的价值是次要的,经济需要货币来流通商品。 这个需求是主要的。 但是贵金属的产量是有限的,已经流通的贵金属货币会因为各种原因退出市场,所以即使是新创造出来的贵金属货币,其价值也是一样的,甚至更高。

为什么比特币保值,BTC(比特币的货币简称)存在于一个庞大的p2p网络中。 比特币社区已经认可了一种算法,在当前条件下,每小时只会产生大约 6 个新的 BTC 集合,而当前的集合是 50 个。也就是说,在这个世界上,每小时只会产生大约 300 个 BTC。 此输出也将受到网络自动难度调整的限制。 不能通过修改大家的Client(客户端是开源的)的算法和参数来加速出币。 假币将被网络丢弃(除非你控制了大部分网络节点)。

BTC本身的价值是多少?

BTC 的价值在于交易渠道本身。 一组新铸造的比特币提供了将旧比特币从一个账户转移到另一个账户的数学保证。 这种安全保障背后的代价是大量的算力。 产生这样一个安全通道会消耗大量能量,因此整个 BTC 用户群都会奖励币矿工(目前是 50 BTC)。

简单的说,我的理解是现在世界上所有的BTC都是由电脑运行的能量产生的,它们的总价值,(到现在一共产生了12w组左右的BTC,每组50个组,市场价格约为每支7.3美元),这应该小于所消耗能源的总市场价值。 但我认为,用于生产 BTC 的大部分能源本来就是一种没有被使用和浪费的资源。

一个没有中心节点的“银行”如何让大家信任和工作?

比特币原理详解_比特币挖矿机显卡原理_比特币运行原理

答案是这个p2p网络上的每个节点都记录了自BTC诞生以来每一笔交易的详细清单,由此可以推断出每个BTC的唯一所有者是谁。 这样,当你接受一笔交易时,你就可以知道别人给你的钱是否合法。

让我们从基础开始:

每个账户其实就是一对公私钥,拥有私钥的人就是账户的主人。 如果A想转一笔钱给B,A就把这笔钱加到B的公钥上,用自己的密钥签名。 B看到这个签名,就可以明白确实是A把BTC转给他了。

那么这笔交易就需要一个见证人来保证交易发生了。 这样以后B想用这笔钱的时候就合法了。 担保人是使用 BTC 的整个网络。

当 A 发起这笔交易时,他必须尽可能地将签名后的交易形式广播到 p2p 网络中,最终让每个节点都知道。 B 在 p2p 网络上不断收到其他人的确认信息。 当它收到足够多的确认信息时,它就认为A确实发送了这个交易订单。 之后,B 可以随意使用这笔钱。

当 B 使用 A 转给它的钱给 C 时,它也会广播给足够多(最终每个人都收到)的人来担保它。 每个担保人仅在确定 B 有足够的钱支付时才确认。 从本质上讲,BTC 网络并没有记录每一块钱属于谁。 它记录了从出生到现在的每一笔交易,并计算每个账户里有多少钱。 当任何人试图确认一笔交易订单时,需要确认的只是转账账户上是否有那么多钱。

比特币要解决的核心问题是如何避免一笔钱被花两次。

比特币原理详解_比特币挖矿机显卡原理_比特币运行原理

整个计费序列是一个循环。 当每个人在完整的全球账单上签署新的金额时,他们需要使用之前的信息来生成后者。 这种票据序列称为区块链。 每个区块包含几条经过确认和哈希签名(难以伪造)的交易记录。 每个块都与全局表上的前一个块相关联。 每张账单最终都会通过p2p网络转发给创建新区块的节点。

这个创建新块的过程称为挖矿。 创建新区块就是将最近收到的账单打包到新创建的区块中。 这个包装过程就是生产过程,只有极少数的机会才能成功生产出来。 (你可以理解为把新收到的钞票放在一起,一次成型不能修改,如果制造失败就得重做)一旦制造成功,你把新的块(算作是旧全球区块链的链接)续)广播出去。

因为是p2p网络,可能很多人同时在创建新的区块,但是有一种排序机制保证只有最优的(最难的,计算量最大的)新区块才会被网络社区接受,并且是挂在全球区块链上。 重复一遍,整个BTC网络只有一张全局计费表,每个节点都保存一份完整的副本。

这个全球计费表会越来越大,区块链会越来越长。 在最新的部分比特币运行原理,一定有很多胡茬。 这是因为 p2p 网络的挖矿过程是分开并行进行的,每一个新的票据不能立即广播到所有节点。 每个挖矿节点都有责任将新收到的在他认可的旧全球票据上不存在的票据整合到他要制作的新区块中。 一旦一个新的区块被创建,它会立即被广播以获得更多人的认可。 主要是被想挖矿的人认可,这些人会基于这个区块创造新的区块。

如果 p2p 网络太大,交易账单无法尽快广播到全网。 会出现 p2p 网络的本地部分维护一个由小组同意的全局账单。 全球法案的多个分支可能同时发展。 因为每个小组可能认为他们看到的部分更长,更有效。 然而,只有当有人发现另一个分支更长时,它才会转换阵营。 所以,你的法案有一定的几率会被一小群人接受,但过一段时间后,就会被更大的阵营放弃。

但是算法参数决定了新区块的产生非常缓慢。 如果你的账单被多达6个人确认,那么基本上可以保证它合并成的全球账单是被p2p网络认可的。

由于生成新区块需要时间和精力,因此生成新区块的概率就像买彩票中奖一样。 有多少人还要去执行计算新区块的程序? 答案是,每个创建新区块的人都有权构建一个法案,说明上帝给了我 50 BTC。 这个规则是所有BTC用户都认可的。 把出块等同于挖金只是一个形象的比喻。 事实上,没有人可以挖出黄金并囤积起来。 每个新区块必须包含前一个区块在全局表上的哈希值,BTC 网络会自行调整难度,大约每 10 分钟生成一个新区块。 如果你没有在 10 分钟内做出新的区块,那几乎意味着你在前 10 分钟所做的工作被浪费了。 从最新版本的块继续计算。

比特币原理详解_比特币运行原理_比特币挖矿机显卡原理

所以更恰当的比喻是买彩票。 每 10 分钟抽奖一次的彩票。 你一直花钱买,10分钟内赢了,就是你的了。 如果您未能获胜,则第一轮购买将作废,然后进行下一轮。

从数学上讲,如何确保挖矿过程消耗大量 CPU 时间? 而且成功的几率很小?

这里我们使用一个叫做

哈希现金系统。 它最初是为了改善电子邮件垃圾邮件问题而发明的。

就是给特定的信息(比如这封邮件是谁发的)加上特定的哈希头。 这个哈希头需要大量的 CPU 时间来计算。 发送垃圾邮件的人没有那么多的CPU时间去为群里发送的每封邮件计算一个符合要求的hash header,所以认为带有这个合法hash header的邮件不太可能是垃圾邮件(CPU时间花在了上面)

这个算法就是把你要保护的信息找一串数字,相加后,用公认的哈希算法,比如SHA-2,计算出一个哈希值。 如果哈希值以一长串0开头(具体数字决定难度),则成功。

一条信息,要找到这串数字,目前除了暴力尝试,没有什么好的办法。 即随机改变数字,哈希一次进行比较。 经过可预测的尝试次数后,通常会找到所需的次数。

比特币原理详解_比特币运行原理_比特币挖矿机显卡原理

每个想要通过挖矿赚取 BTC 的人都会不断监控来自 BTC 网络的信息。 如果有人发布了一个新的合法块,他将被合并到本地全局表中。 并重新设置自己的计算过程,从新获得的区块开始。 如果有新出的交易单,也记录下来。 不断结合最新区块的哈希值、新收到的交易订单、50 BTC的奖励订单,计算SHA-256比特币运行原理,看结果是否满足条件。 一旦满意,广播新区块。

当有足够多的人认可时,(据此计算后面的区块),他也得到了 50 BTC。

为了匹配BTC的经济规模。 所有的比特币客户端都设置为每210,000个区块,生产一个新区块的人被认为凭空获得比以前一半的BTC(如果他此时还在包里写他已经获得50 BTC) ,其他人不会确认他的区块)。 这将减缓BTC总量的增长速度。 生成新块的速率受难度调节。 这个难度会由p2p网络根据近期出块速度自动调整。 所以即使以后算力增加,也能保证10分钟左右的速度。

此外,随着产生新区块的收益减少,愿意将其 CPU 贡献给挖矿的节点也越来越少。 (如果降低太多,就降低难度)

最后,p2p 网络不再凭空创造新的 BTC。 此时创建新区块的驱动力是什么? 那就是交易税。 由于很少有人愿意生产新的区块,因此发起交易变得困难。 (任何区块都不能持有交易票。) 想要交易被确认的人可以声明,如果有人创建一个新区块来接受他的交易票,他将向他支付少量交易税。 当很多人这样做时,制作区块又变得有利可图了。 只是没有新的BTC直接诞生,只是在这些BTC用户之间流通而已。

总会有一些BTC会消失,主要是那些账户的私钥丢失了,账户上的钱谁也转不了。 不能流通的货币就不是货币。 但最终BTC总量会达到一个比较大的规模,准确的说是2100万。 但是BTC本身是可以分的,比如你可以分给别人0.01个BTC。 所以BTC本身会升值,总量永远是充足的。

如果你觉得这篇文章对你有用,可以捐一点BTC给云峰,他的账号是1CDPtAPKf3EKLby85nnR35yBwPPsqHn8Cr

这里有人免费发送 BTC,每个 gmail 帐户 0.02 BTC。

云峰博客地址:.