主页 > imtoken苹果端手机下载平台 > 从零开始的区块链:比特币是如何开采的? ——比特币经典论文研究(四)
从零开始的区块链:比特币是如何开采的? ——比特币经典论文研究(四)
ScalersTalk Growth Club 2018年目前正在招募中,报名人数已突破1100人。 看这里。
一枚比特币是怎么来的? 本节我们将得到答案。
本系列历史文章列表
7. 工作证明 (2)
连接的伏笔到这里就很容易理解了。
(1)比特币采用SHA256标准进行哈希运算,平均工作量和0位数量呈指数增长。
(2)出于时间戳的考虑,在计算每个区块的哈希值时,加入一个随机数(nonce)。 随机数每次加1生成一个hash值,检查是否满足前缀为几个0的要求。 CPU需要做大量的计算才能得到满足要求的解。 如果要修改区块内容,需要重新计算,找到满足条件的哈希值。这里参考的是哈希的细节敏感特性。 当您修改内容时,哈希值会发生变化。
(3) 工作量证明也解决了一个“集体决策”的“多数”问题。 在互联网中,究竟用什么来代表“多数”? 如果一个 IP 地址代表一票,那么拥有多个 IP 地址的人就可以操纵结果。 所以作者采用了“一个CPU,一票”的方式来代表大多数人的意见。 因为链条的产生需要大量的工作,最长的链条一定是工作量最大的,也就是代表了大多数人的意见。 工作量实际上是由CPU来计算的,所以这就贯彻了一个CPU,一票的精神。 笔者这里的逻辑是选择一个比较难的指标,计算工作量,然后把大部分人的工作量聚集在一起,形成一个共识。 但是让笔者没想到的是,现在很多人都有很多CPU,而且不仅仅是CPU,还有专用芯片……
(4)如果大部分CPU算力都在好人手里,那么大家一起工作一起计算,工作积累会非常快,链的增长速度会超过其他链。 如果要修改过去的块,攻击者必须重做该块之后的所有其他块。 作者后面会证明,随着链条的增长,成功的概率不断降低。 你可以理解为:历史的潮流浩浩荡荡手机上怎样挖比特币,你要逆潮流而动,则比潮流有余力。
(5)综合考虑,不断调整出块速度。 如果增加的速度太快,计算工作量的难度会增加。
工作量证明部分结束。 我有两个想法:
(1)你有没有发现,在看论文的时候,如果把基础打牢,即使需要一些时间,效果也是可以复合的。 例如,我昨天花了很多时间讨论 HashCash。 弄清基本情况后,再讨论工作量证明就比较容易了。
(2) 中本聪在设计比特币时,想利用CPU去中心化来构造一个无人可以操纵的结果。 但是自比特币发展以来,越来越多的算力掌握在少数人手中,这也很有意思。 现在所谓的挖矿,其实就是计算哈希值的一种比喻表达。
(3)有人认为基于工作量证明的机制太浪费资源,所以又开发了一种不需要挖矿工作的新机制,后面会讲到。
8.互联网
这部分描述了比特币网络运行的基本规则:
(1) 所有交易都在网络上广播。
(2) 每个节点将新交易合并到一个块中。
(3) 每个节点计算对应区块的工作量证明,即求哈希值。
(4) 如果一个节点计算出哈希值,即工作量证明完成,将在全网广播。
(5) 如果一个区块中的所有交易都有效且没有双花,则节点接受该区块。 注意每个节点都会有所有的网络交易,每个交易都有一个可以验证的签名。
(6) 节点认可一个区块的方式是把这个区块当作上一个区块,继续寻找下一个区块的工作量证明。 如果下一个区块数据字段中有“前一个区块哈希值”,则填入认可的哈希值。
除此之外,还有几个重要的点:
(1) 节点只将网络中最长的链识别为正确结果,然后继续延长链。
(2) 如果同时有两个节点发现新的不同的块并广播出去,那么有的节点先收到第一个,有的节点先收到第二个,怎么办? 该怎么办。 继续挖掘之前收到的区块,但保留另一个分叉。 下一个方块出现时,总会有一个变长,那时候就换一个更长的方块。
(3) 不用担心丢包,少了总能通过各种方式补上。
九、激励机制
激励机制一直是 P2P 网络研究中的一个关键问题 [14,15]。 只要是去中心化的,就会面临激励机制的问题。 为什么? 因为你让很多人去做一个中心能做的事情,一个是我为什么要做这些事情,对我有什么好处? 二是牵扯的人多了,就会出现搞小动作的人。 激励机制的出现,就是设计一个制度手机上怎样挖比特币,鼓励大家努力工作,不惹事生非。
P2P网络最初是本着“人人有我,人人有我”的原则设计的。 但由于部分节点频繁“搭便车”,导致网络运行不如设计。 比如在BT下载中,会出现“吸血鬼”节点,这些节点只从其他节点下载,而从不或很少上传。 这样,社会科学中所谓的“公地悲剧”最终就会出现[16]。
公地悲剧是指在共享资源的系统中,每个个体独立行动以实现自身利益最大化,但这些行动最终导致的结果却与共同利益背道而驰。 在 P2P 网络中,如果吸血节点越来越多,网络最终会拥塞崩溃。 在社会环境上,每个工厂都向外排放污水,最后生态环境被破坏,谁也逃不掉。
比特币的激励机制是如何设计的?
(1) 区块中的第一笔交易,由区块创建者生成一个新币。 这样可以激励节点参与P2P网络的维护,也可以让新发行的币进入市场流通。 因为就比特币而言,没有中央机构发行货币。 这样,出现在网络中的币就以恒定的速度发行,就像淘金者挖出黄金一样; 除了比特币消耗的是功率和CPU计算率。
(2) 激励机制还包括交易手续费。 如果交易的输出值小于输入值,那么这个差值就是交易费,在包含该交易的区块下计算。 货币一旦进入流通,激励主要靠手续费,不受通货膨胀的影响。
(3) 激励机制允许节点选择做一个诚实的节点,不做坏事。 因为如果一个攻击者组织了比诚实节点更多的算力,他将面临这样的选择:要么选择用它来欺骗其他人,这样他就可以偷回花掉的钱; 或用它来生成新的硬币。 但毕竟创造新币应该是划算的,因为我已经拥有了一半以上的算力,其实我可以赚到比别人更多的钱,按规矩办事对自己也有好处; 否则,整个网络将被摧毁。 给自己留一堆硬币是没有用的。
因此,比特币的激励机制是用“币”的方式简单直接地激励节点。 这种激励的效果如何? 因为我们知道挖矿可以赚比特币,现在已经有专门的人从事矿机的生产制造,已经形成了相当规模的产业。 这样一来,激励效果还是挺不错的……
综上所述,本节主要关注两个主题:
(1) 比特币是通过哈希碰撞开采的
(2) 以比特币作为激励,鼓励节点参与网络运行
用苹果手机一次性打赏S的私密红包
参考
[14]马RTB,李SCM,吕JCS,等。 一种P2P网络的激励机制,2004[C].
[15] Zhang K, Antonopoulos N, Mahmood Z. 点对点系统激励机制综述, 2009[C].Oct.
[16] Hardin G. 公地悲剧[J]. 自然资源政策研究杂志,2009,1(3):243-253。
ScalersTalk 增长延续理论
★★★★★
ScalersTalk成长大会是Scalers发起的社区生态系统,专注于“N阶段持续行动理论体系和能力建设”1000多天,以“从初级英语到同声传译的全栈解决方案”和“持续输入”为特色和输出训练实践拓宽认知边界”作为指导。
微信公众号 l ScalersTalk 成长延续论
新浪微博 l @Scalers
WebsitelScalersTalk.com
开放社区 l 100小时培训QQ群 C 456036104
畅销书l《刻意学习》现已开售
★★★★★
2018年成长俱乐部申请须知
▼
本文原文: