您当前的位置:首页 > 美文欣赏 > 内容

比特币挖矿机原理图解(比特币挖矿机原理图)

比特币挖矿机原理图解(比特币挖矿机原理图)

比特币矿机示意图。在本文中,我将给出一个名为比特村。整篇文章会通过讲故事的方式,一步步告诉你比特币的产生动机,解决了哪些问题,以及一些关键部件的目标和设计方案。

提出问题

让让我们从比特币的动机说起。

一五一五彼得特村

在这个世界上,有一个叫比特村的小村庄,有几百户人家。村子几乎与世隔绝,过着自给自足的生活。因为没有大规模的贸易,比特村的村民一直过着以物易物的生活,也就是说,村民之间没有统一的货币。他们之间的交易基本上是老张家老李拿一袋面粉给一只羊王姐用一筐野果换了刘阿姨的两尺布。村民们一直过着这样简单的生活。

实物货币

终于有一天,村民们觉得一直以物易物太不方便了,于是全体村民开会讨论如何解决这个问题。建议将黄金等容易分割且稀有的东西作为通用等价物,将其他物品与黄金的对应关系编成表格,如一克黄金对应一只羊,一克黄金对应一袋面粉,等等。这时,老张并没有我不必气喘吁吁地背着一袋面粉去找老李是换羊的家。他可以去找老李只要他找到一克黄金,就带一只羊回来,老李灿用这一克黄金交换任何愿意卖面粉的人。

比特币矿机示意图。此时,咬村进入了实物货币时代。

代用货币

好时光没有不会持续太久。过了一段时间,实物货币的弊端也显现出来了。因为比特村附近金矿不多,采金、炼金太费时费力。然而,随着使用,黄金总是会磨损,丢失或故意囤积。全村人又坐在一起,开始商量对策。这时,有人说,其实你不不一定要真的用黄金。找一张纸,写下一克黄金。只要全村人都认同这张纸等于一克黄金,问题就解决了。也有人赞同,但同时也出现了新的问题:真金需要开采和冶炼,金矿是有限的,开采和冶炼也需要成本,没有人能在短时间内凭空造出大量的黄金,写作就不一样了。只要我有足够的纸和笔,我想写多少就写多少,然后就变成了拼谁的纸多的问题,也许一万张纸可以换一只羊(其实这样会导致经济通货膨胀)。

大家都这么认为。然而这时候有人提出了一个解决方案:这篇论文并不是对所有人都成立的。我们只认村里德高望重的老村长写的字,大家都认识老村长的话。老村长写一些纸,同时根据各家的黄金存量给大家同等数量的纸。例如,当老张家有200克黄金,老村长给了老张200张纸,上面写着一克黄金上面写着,拿走了老张的金子的家人作为抵押。老村长就这样把村里所有的金子都收进了自己的家里,按照各家上交的金子多少,分发等量的带字的纸。这时,村民们可以用这种纸当金子来交易了,大家都认识了老村长的笔迹,但其他人可以不要伪造它。此外,如果有人纸磨损得太厉害,他们也可以从老村长那里拿过来换成新的等价纸。另外,老村长承诺,如果有人想换真金,只要把纸拿回来,就把等值的黄金还给那个人。因为老村长写的纸含金量和真正家里的含金量是一样的,只要严格遵循纸毁多少,新写多少的原则,每一张有效的纸总能换来相应的真金。

此时,咬村进入了符号货币(纸币)时代。老村长承担了政府和银行的角色。

中央系统虚拟货币

几年后,老村长每天都要清点大量的旧钞和写新钞,认真记录各种账目。长此以往,老村长劳累过度,不幸去了西部。

咬村再次召开全体会议讨论该怎么办。这时,老村长的儿子二狗子自告奋勇来接替父亲笔并承担货币发行的责任。年轻的村长子很聪明。他这样做了几天,发现他没有我真的不需要写这么多论文。它完全有可能:村民把所有的钞票都交上来销毁,但两只狗会记录下每家每户交的钞票数量。如果以后要打款,比如老张要和老李用一克黄金换一只羊,你就一起打电话给子,说明要把一克黄金转到老张名下老李的名字的名字,而子就会拿出账本,看看老张名下有没有一克黄金的名字。如果有,你就从老张身上减去一克的名字,给老李加一克的名字,从而完成支付。这时,老放心,老张会领着羊群在电话里听到二狗确认转移的消息。

此时,咬村进入了中枢系统的虚拟货币时代。不是每个村民都不需要实物支付,支付过程就变成了二狗子维护的账本里数字的变化。

分布式虚拟货币

新来的两只狗很聪明,但有时候这个人聪明却被聪明误了。一天,二狗盯着这本账本,认为它这个村子里每户人家有多少钱由我来决定,所以我不会。我…于是他头脑一热,偷偷从老张那里抽出十克黄金他名下的账户。

我认为它是完美的,但我没有。我没想到老张会有记账的习惯。有一天,他准备付款的时候,被二狗告知,他的账户没钱了。老账查了自己的账本,名下还有十克,就拿着账本去找二狗理论。这次检查发现了没有老张的转账的同意。

事情发生了!咬村爆炸了。二狗被弹劾是必然的。但是,通过这件事,大家发现了把书集中在一只手里的弊端:

这个系统完全依赖于账户持有人的个人信用。如果这个人不如果你不遵守规则,随意篡改账簿,整个货币体系就会崩溃。

如果这个人家着火或者他的账本被盗,也会给整个系统带来毁灭性的打击。

就在人们不知所措的时候,村里一位名叫中本聪的宅男科学家走上舞台,告诉大家他设计了一个名为比特币的虚拟货币系统,这个系统不会不依赖任何中央处理器,可以解决上述问题。然后他慢慢描述了他的计划。

让让我们看看中本聪是如何设计这个系统的。

基础设施建设

开放账簿机制

首先,中本聪解释说,现有的账簿应该进行如下改革:

账本不再记录每个村民的余额,只记录每笔交易。即记录每笔交易的付款人、收款人和付款金额。只要确定了账本的初始状态,每笔交易记录都是可靠的、时序的,就可以计算出每个人当前持有的货币量。

户口本由私有变为公有,任何一个村民都可以拿到当前完整的户口本,里面记录了从创建户口本到现在的所有交易记录。

此言一出,下面的炸锅立刻就下去了。第一个没有 matter,但是第二个根本无法接受,因为账本记录了村民的所有交易,以至于大家的隐私没有完全暴露。

中本聪不慌不忙,拿出一副奇怪的东西。

身份签名机制(公钥加密系统)

中本聪说,唐不要惊慌。在他的机制下,没有人用他的真实身份交易,只有一个唯一的代号。

他展示了手里的神奇的东西,说这两个东西分别叫秘密印章和印章扫描仪。之后,他会给村里每家每户送去一个秘密印章和印章扫描仪。两者的功能如下:

秘密印章可以用印章在纸上盖章。每一枚印章都代表一条独特的线

邮票扫描仪可以扫描加盖的邮票,读出隐含的信息,并在LCD屏幕上显示一串字符。

有了这两样神奇的东西,每个人都可以在不暴露真实身份的情况下进行交易,印章所隐含的一串字符就是这一家的代号。下面将详细介绍如何熟练使用秘密印章和印章扫描仪进行交易。

设置虚拟矿工组织(矿业集团)

接下来,中本聪为全村招募虚拟矿工。招聘要求如下:

以矿工为单位。一个小组可以是单个家庭,也可以是几个家庭的组合。

成为矿工不影响正常用钱。

矿工每天花一定的时间从事比特币采矿活动,但与黄金开采不同的是,虚拟矿工可以在家里完成工作,而无需带工具进行野外作业。

矿工有可能获得报酬,他们在采矿活动中付出的努力越多,获得报酬的可能性就越大。

矿工可以随时退出,也可以随时有新的矿工加入。

很快,大约五分之一的村民加入了比特币矿工组织并被分成七组。

建立初始账簿(创建块)

下面,中本聪宣布,根据尔沟子手里,把抵押的黄金按照账本记载的余额全部返还给每个村民,然后这个账本就彻底销毁了。

然后,中本聪拿出一个新的账本,在账本的第一页上记录了一些交易记录。特别是,这些记录的付款人一栏都是系统,而收款人则是每枚印章对应的隐藏字符,代表初始时刻。系统默认给每户分配一定数量的比特币,但数量很少,只有几个,甚至一些不幸的村户也没有无法获得比特币。

然后中本聪说,由于目前市场上很少有比特币,你可以回到黄金被用作货币的时代。由于我不是村长,我没有权利强迫你承认比特币,你可以自己决定要不要接受。但随着比特币的流动和矿工的活动,比特币会逐渐增多。

支付交易

做了这么多铺垫,终于说到点子上了。这里it’在这样的系统下如何完成支付。就拿老张支付10个比特币给老李为例。

付款人签署交易订单。

为了支付10个比特币,老张首先要求老李的标识字符串,如ABCDEFG 而且老张还有一个识别字符串,比如HIJKLMN 。然后老张写了一张单子,内容是希尔克曼向ABCDEFG支付10个比特币,然后改了一章自己的密印,把这个单子给了老李。另外,为了追查这笔钱的来源,还需要在清单上注明这笔钱的来源记录在哪一页。比如,在这份名单中,老张 10比特币来自于建立账本时系统的馈赠,账本首页有记载。

收款人确认单据的签字人。

老李拿到这份名单后,需要确认这份名单确实是这个人签的HIJKLMN (也就是老张)。这个不难。因为单子上肯定有秘密印章,老李拿出印章扫描仪扫描了印章。如果LCD屏幕上显示的字符与付款人的字符一致(HIJKLMN 这里),可以确认清单确实是付款人签字的。这是因为根据秘密封印机制,其他任何人都无法伪造封印。任何人只要扫描印章,就能确认付款人和清单的签字人是否是同一个人。

收款人确认付款人平衡

这个系统还是很有问题的。有了保密章,收款人可以确认付款人已在票据上签字,但可以无法确认付款人是否有足够的余额支付。在之前的中央虚拟货币系统中,二狗子负责核对付款人并通知收款人交易是否有效。现在二狗子开放了,谁来负责记账,确认每笔交易的有效性?

正如我之前所说,中本聪设计的系统是一个分布式货币系统,它不依赖于任何中心人物,因此不会有一个或几个人负责它。最后,是矿工之前提到的组织承担这项工作。老张、老李以及村里其他任何使用比特币进行交易的村民,都是靠矿工的工作组织来完成交易。

矿工的工作

矿工工作是整个系统的核心,也是最复杂的地方。以下是矿工的逐步介绍工作内容和目的。

矿工工具

俗话说,工欲善其事,必先利其器。比特币矿工不会不会用铲子、铁锹、探照灯之类的工具,但也需要一些必备的东西。

初始账簿。每个小组首先自己复制一个初始账簿。初始账簿只有一页,记录的是系统给的第一张免费账簿纸。每个组有几个账簿,每页只有账簿结构,没有内容。具体内容的书写规则将在后面描述。下面是一张空账纸的样子。稍后将描述每个字段的含义。

代码生成器(哈希函数)。中本聪还向矿工的每个组件发送了一些代码生成器组织。这东西太神奇了。将一页写满内容的账本纸放入本机,机器将自动打印出由0 & gt;和1 在这个账单号码的账本纸,共计256张。最神奇的是,数字生成器具有以下功能:

生成的数字只与账簿填写的内容有关,与填制人、字体、填制时间等因素无关。

同样内容的帐纸生成的数字总是一样的,但如果内容只改变一个字符,数字就完全无法辨认了。

代码生成器在打印代码时,还需要放入账簿纸中填写的所有交易单。机器将扫描交易单和填写的交易单之间的一致性,尤其是秘密印章。如果发现密印与付款人不一致,将拒绝打印代码。

当放入打印好的账本纸时,机器会判断号码是否为机器打印的有效号码,号码与内容是否一致。这个号码不能伪造。

交易列表收件箱。每个矿工组需要在门口挂个箱子,收集交易单。公告板。每个矿工组还需要一个公告栏来宣传一些信息。

有了以上工具,矿工们组织可以动手了!

收集交易单

中本聪规定,每笔交易的发起者不仅要把交易单交给收款人,还要复印几份完全相同的交易单,送到每个矿工的收件箱组。

矿工小组定期查看他们的收件箱,列出并取出收集的交易。

填写帐簿

这时,小组拿出一张空的账本纸,在这些交易中填写了交易列表列,找到当前账簿的最后一页,并将最后一页的编号复制到最后一个账单号列。请注意,还有一个幸运数字。可以填写任意数字,比如12345。然后,将帐簿纸放入号码发生器,并打印号码,从而完成帐簿。

如果你认为矿工工作是如此简单,它这是一个大错误。中本聪有一个反常的规律:只有数字的前10位全是0,这个账本才有效。

根据前面对编号生成器的描述,要修改编号,只有账簿纸的内容可以修改,而交易列表和以前的账本纸张编号能不能随便改,所以只能改幸运数字。为了生成有效的帐纸,组里的矿工不断地复制帐纸,但每张纸的幸运数字都不一样,然后反复把纸放进编码器。如果生成的数不符合要求,则认为该纸无用,重复这个过程,直到生成一系列有效数。

我们知道,如果数字的每一位都是随机的,那么在avera上写1000多张不同幸运数字的纸就可以得到一个有效的数字

那很奇怪。为什么这些矿工会想尽办法去做这种看似毫无意义的事情?还记得以前矿工发工资吗?这就是矿工的动力。中本聪规定每张帐票的交易列表中第一笔交易为系统会付给这群人50个比特币。也就是说,如果你生成了一张有意义的账本纸,并且被所有挖矿组接受,就意味着这笔交易也被接受了,你的挖矿组获得了50个比特币。

那这就是为什么矿工被称为矿工,这这就是为什么之前有人说比特币的数量会随着交易和矿工的增加而不断增加。活动。例如,下面是一个挖掘过程。该群的公共比特币账户是UVWXYZ 。

当幸运数字达到533 ,系统生成有效的账簿。

确认账簿

当一个采矿组幸运地生成了一个有意义的账本,为了获得报酬,它必须立即要求其他组确认他们的工作。前面说了,村里目前有七个采矿组,所以这个组必须复印六份有效账本,发给其他六个组确认。

根据中本聪的规定,当某个小组收到其他小组发送的账簿时,必须立即停止挖掘工作以确认账簿。

确认需要三条信息:

账簿号有效。

账簿以前的账簿有效。

交易列表有效。

先看第一个。这种确认相对简单。只要将发送的账簿纸放入代码生成器进行验证,如果验证通过,则该编号有效。

第二部分需要比较以前的账簿纸张编号在当前该组保存的有效账簿的最后一页的账簿页上。如果它们相同,它们将被确认。如果不同,则需要沿着现有的账簿进行比较,直到找到具有该编号的页面。如果页面对应指定的以前的账簿号未找到,该组将丢弃此页面。没有确认。

注意,上述机制可以保证,如果每个组中的账簿相同,则可以按照相同的顺序将其全部绑定到相同的账簿中。因为后一篇论文的编号总是依赖于前一篇论文的编号,所以代码生成器的机制保证了所有合法账户论文在每组中的相对顺序是相同的(可能有分支,但没有循环,后面会讨论)。

最后,如何确认交易清单的有效性,其实就是确认当前每一笔交易的付款人都有足够的余额来支付这笔钱。由于交易信息包含资金的来源,它还包含记录交易来源的票据编号。例如,HIJKLMN想给ABCDEFG 10个比特币,并表明这10个比特币来自OPQRST支付给HIJKLMN的前一笔交易。在确认的时候,首先要确认之前的这笔交易是否存在,并检查HIJKLMN在此之前没有将这10个比特币支付给他人。这一切确认之后,这个交易的有效性就确认了。

第一个是由系统奖励给生成此账簿的小组的50个。这个交易默认大家都认可。只要按照上述方法追查到后一个,就可以确认HIJKLMN目前是否真的有10个比特币支付给ABCDEFG。

如果上述所有验证均已完成并全部通过,集团将认可上述账簿有效,然后将该账簿并入集团的主账簿,放弃当前工作,后续的挖掘工作将基于这个更新后的主账簿进行。

账簿确认反馈

对于矿业集团,账簿送出时,如果后面有其他集团送出的账簿,且其以前的账簿号是之前发出去的账本,那么就说明他们的工作已经成功得到了其他团体的认可,因为有些团体已经基于他们的账本继续工作了。至此,大致可以说已经获得了50个比特币。

此外,当任何一个集团新生成有效账簿或确认其他集团账簿时,都会在公告栏上写下该集团认可的最新交易,这样收款人只要发现相关交易已经被各个集团认可,就基本可以认为钱已经到了他的账户,然后在进行支付时就可以将钱的来源指向这笔交易。

以上是整个比特币支付系统。让让我们分析一下为什么这个系统能够工作,以及它可能面临的风险。

工作机理分析

虽然上面描述了比特币的基本操作规则,但是村民们还是有很多疑问。因此,中本聪举办了一场特别的问答会。回答常见问题的会议。让让我们总结一下村民们最关心的问题。

核心问题回答

同时收到两个合法账号页面怎么办?

注意,在上面的操作机制中,所有挖掘组都是并行工作的,所以完全有可能某个组收到两个不同的账簿页,都是基于当前组的最后一页的主账本,内容完全合法。我该怎么办?

在这个问题上,中本聪表示,集团不应该以直线方式组织账簿,而应该以树状方式组织账簿。在任何时刻,目前最长的分支是主账簿,但保留其他分支。比如某集团同时收到A、B两个账簿页,核算后合法。这时,组应该以分叉的形式组织这两个页面,如下图所示:

黑色表示当前账簿主干。此时,你可以选择任何页面作为当前主分支,例如,选择一个:

如果此时有基于A的新账簿页,则此主干将继续:

如果这个主心骨继续这样下去,就意味着大家基本都以A为主心骨,B就被遗忘了。但也有可能B突然变长:

然后需要以B分支为当前骨干,以此分支为基础开展后续工作。

从局部来看,虽然某个时刻各集团的主账簿可能会出现不一致的情况,但大方向是一致的,那些偶尔出现的不同步的小分支很快就会淹没在历史中。

矿队有人篡改账本怎么办?

对于这个问题,中本聪表示,只要矿业组织中的大多数人是诚实的,这个系统就是可靠的,答案将从几个方面给出。

首先,基于秘密封印机制,没人能假冒别人的身份来进行支付,因为代码生成器在打印代码时会检查所有交易订单的秘密印章,如果与付款人不一致,印章会拒绝打印。

此外,诚实的矿工不会承认非法交易(例如,付款人交易的余额不够)。

所以只有一种可能的攻击,就是收款人确认付款后,从另一家分行建立另一笔交易订单,取消之前的付款,再次将同样的钱支付给另一个人(即所谓的重复支出问题)。下面举个例子来说明这个问题。

假设有一个攻击者拥有10个比特币。他要把钱同时付给两个受害人A和B,两人都承认了。

第一步,攻击者准备向受害者A购买10个比特币的黄金,他在受害者A的交易单上签字,并向受害者A转账10个比特币。

第二,交易在最新账号页面确认,各矿组公布。a受害者看到了公告,确认了比特币的到来,给了攻击者10个比特币等值的黄金。

第三步,攻击者找到账本,从刚才包含交易的账本页面的上一页进行分支,生成更多的账单页面,超过上一个分支。此时,攻击者刚才做的分支变成了主干分支,而包含受害者A获得的钱的分支变成了侧支,因此挖矿组织不再认可刚才的转账,受害者A获得的10个比特币被注销。

第四步。攻击者可以再次签署交易单,向受害者B支付同样的钱,受害者B确认钱到了,向攻击者支付了等值的黄金。

此时,攻击者花了两次10个比特币,从两个受害者手中各买了等值的黄金。攻击者也可以做同样的事情,取消与受害者B的转账,并向其他人支付相同的钱。

对于这种攻击,中本聪的解决方案是建议收款人不要在挂出公告的时候马上确认交易完成,而应该再等一段时间,等每个矿业集团再挂出6个确认账本,并且之前的账本还没有注销,才能确认钱到账。

中本聪解释说,之前设定异常编号规则就是为了防止这种情况。根据以上,生成一个有效的账簿页面并不是那么简单。反复尝试不同的幸运数字需要大量的人力,过程全靠运气。如果一个账号页面包含了你收到钱的确认,后面还有6个,攻击者很难从后面有6个页面的另一个支行追到当前的主支行,除非攻击者的人力很多,超过了其他所有诚实矿工的人力总和。

而且,如果袭击者有这么多人力,与其花这么大力气搞这种袭击,还不如好好为好市民挖矿获利。这就从动机上防止了攻击的形成。

比特币将继续增加,韩元这不会引起严重的通货膨胀吗?

中本聪说,我也想到了这一点。我之前忘了说,我给矿工的操作规则手册组织将声明,在开始时,我们同意每生成一页账本奖励小组50个比特币。后来账本每增加21000页,奖励减半。比如达到21万页时,每生成一页账本奖励25个比特币,42万页后每生成一页奖励12.5个比特币,以此类推。此时的比特币总数约为2100万,这是比特币的总数,不会无限增加。

没有奖励之后,就没人当矿工了,也没人帮忙确认交易了。

到那时,矿工们收入将从采矿收入变为收费。比如转账的时候可以指定其中的1%作为手续费支付给生成账簿页面的组,每个组会选择手续费高的交易单进行优先确认。

如果矿工越来越多,比特币产生的速度会更快吗?

不。中本聪解释说,虽然加入和退出矿工队是可能的随意组织,导致矿工数量的变化,每个矿工还会得到一个代码生成器。但是,我在代码生成器中添加了一个调节机制。我目前在做的代码生成器越多,每台机器的效率越低,生成新账本的速率不变。

虽然大家的代号是匿名的,如果有人的代号暴露了,账本也打开了,不会他所有的账目都被查出来了吗?

那这是真的。例如,如果你想和某人交易,你必须得到他的代号来填写交易单。因为收款人一栏要填那个人的代号。但中本聪表示,可以提供无限量的秘密印章,并建议每笔交易使用不同的秘密印章,这样同一个人的所有账户都可以查账本查不到。

回答问题。

解释

本文用通俗的比喻来解释比特币的运行机制。有几点需要说明:

为了更容易理解,我做了很多简化,所以有些机制细节可能和实际的比特币不完全一样。但是总体思想和关键原则是相同的。

因为计算机世界里的很多东西(比如公钥系统、网络传输)在现实世界里都没有特别好的对等物,所以故事里难免有一些生硬、不理智的细节。

本文阐述了比特币网络本身的技术原理和运行机制。比特币在Mtgox这样的市场交易时,市场充当的是中介,并不遵循上述机制。

标签:比特币交易矿工


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 曹冲称象文言文原文阅读答案(曹冲称象文言文原文)

下一篇: 华为最热销手机排行榜(华为手机大全)



推荐阅读

网站内容来自网络,如有侵权请联系我们,立即删除! | 软文发布 | 粤ICP备2021106084号