比特币原理和协议中较为关键的数据结构、算法与协议

资讯 9个月前 manoon
0

周末抽空看了一些比特币原理相关的资料。虽然不敢说每一个细节都完全了解,但总体思路和关键部分的主要原理还是比较清晰的。写一篇文章分享给大家。这篇文章的定位会比较大众化,尽量用类比来解释比特币的基本原理。本文不会涵盖算法和协议的更详细部分。打算从程序员的角度再写一篇关于比特币原理的文章。从技术人员的角度来看,比特币系统中将会有更多关键的数据结构和算法。对协议做一些解释。

在本文中,我将给出一个名为“比特村”的虚拟村庄。整篇文章将以讲故事的方式告诉你比特币的动机,它解决了什么问题,以及一些关键组件的目标和设计方案。.

问题陈述

让我们从比特币的动机开始。

比特村易货

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

实物货币

终于有一天,村民们觉得一直这样以物易物太不方便了,于是全体村民开会讨论如何解决这个问题。有人建议,为了便于区分稀有的东西,比如黄金,作为一般等价物,应该把其他物品和黄金的对应关系编成一个表格,比如一克黄金对应一只羊,一克黄金对应一只羊,一克黄金对应一只羊。一克黄金对应一袋面粉等,这时候老张再也不用气喘吁吁地带着一袋面粉去老李家换羊了。他只要从家里拿出一克金子就可以去老李家带回一只羊羔,老李拿着这个一克金子可以换一袋面粉,谁愿意卖面粉,当然,

此时,比特村已经进入了实物货币时代。

符号货币

好景不长,过了一段时间,实物货币的弊端也出现了。由于比特村附近金矿不多,开采和冶炼黄金太费时费力。在使用过程中,黄金总是会因磨损、丢失或故意囤积而枯竭。全村人又坐在一起,开始商量对策。这时候就有人说,其实不用真的用黄金。找一张纸,写上“一克黄金”。只要全村人都同意这张纸等于一克黄金,问题就解决不了。. 其他人同意,但同时也出现了新的问题:真正的黄金需要开采和冶炼,金矿有限,开采和冶炼也需要成本,所以没有人能在短时间内凭空产生大量的黄金,只是书写不同。只要我有足够的纸笔,想写多少就写多少,那么这将成为家里的一大堆纸,说不定一万张纸就可以换一只羊(实际上,这在经济上是会发生的。学术通胀)。

每个人都在思考。但此时有人提出了一个解决方案:这篇论文对任何人都无效,我们只认得村里受人尊敬的老村长写的字,大家都知道老村长的话。老村长写了一些纸,同时根据每户人家的黄金存量,分给大家等量的纸。比如老张家有两百克黄金,老村长送了两百张“一克黄金”给老张。与此同时,老张的黄金作为抵押被带走。就这样,老村长把村里所有的金子都收集到了家里,并按照每户上交的金子数量,把等量的金子分发到纸上,上面写着字。此时,村民可以用纸当黄金进行交易,大家都能认出老村长的字,其他人无法伪造。另外,如果某人的纸磨损得太厉害,也可以找老村长换新的等价纸。另外,老村长还承诺,如果有人想兑换真金,只需要把纸带回来。将等量的黄金返还给那个人。因为老村长写的纸上的金币数量和家里实际留下的金币数量是一样的,所以只要按照废纸多少,新写多少纸的原则,每张有效纸总是可以兑换成相应的真金。. 老村长的字谁都能认得出来,别人是造不出来的。另外,如果某人的纸磨损得太厉害,也可以找老村长换新的等价纸。另外,老村长还承诺,如果有人想兑换真金,只需要把纸带回来。将等量的黄金返还给那个人。因为老村长写的纸上的金币数量和家里实际留下的金币数量是一样的,所以只要按照废纸多少,新写多少纸的原则,每张有效纸总是可以兑换成相应的真金。. 老村长的字谁都能认得出来,别人是造不出来的。另外,如果某人的纸磨损得太厉害,也可以找老村长换新的等价纸。另外,老村长还承诺,如果有人想兑换真金,只需要把纸带回来。将等量的黄金返还给那个人。因为老村长写的纸上的金币数量和家里实际留下的金币数量是一样的,所以只要按照废纸多少,新写多少纸的原则,每张有效纸总是可以兑换成相应的真金。. 他们还可以让老村长换取新的等价纸。另外,老村长还承诺,如果有人要兑换真金,只需要把纸带回来。将等量的黄金返还给那个人。因为老村长写的纸上的金币数量和家里实际留下的金币数量是一样的,所以只要按照废纸多少,新写多少纸的原则,每张有效纸总是可以兑换成相应的真金。. 他们还可以让老村长换取新的等价纸。另外,老村长还承诺,如果有人想兑换真金,只需要把纸带回来。将等量的黄金返还给那个人。因为老村长写的纸上的金币数量和家里实际留下的金币数量是一样的,所以只要按照废纸多少,新写多少纸的原则,每张有效纸总是可以兑换成相应的真金。. 因为老村长写的纸上的金币数量和家里实际留下的金币数量是一样的,所以只要按照废纸多少,新写多少纸的原则,每张有效纸总是可以兑换成相应的真金。. 因为老村长写的纸上的金币数量和家里实际留下的金币数量是一样的,所以只要按照废纸多少,新写多少纸的原则,每张有效纸总是可以兑换成相应的真金。.

此时,比特村进入了象征性货币(纸币)时代。老村长承担了政府和银行的角色。

中央系统虚拟货币

几年后,老村长每天都要检查大量的旧钞票,写新钞票,还要仔细记录各种账目。来来回回,老村长劳累过度,不幸开车到河西。

比特村再次召开全体会议,讨论应该怎么做。这时,老村长的儿子二狗子自愿接过父亲的笔,承担了发行货币的责任。年轻的村长二狗子很聪明。他做了几天,发现自己真的不需要写那么多论文。可以这样:村民把钞票全部上交并销毁,但二狗子会记录每户上交的钞票数量。以后要交钱,比如老张想用一克黄金换老李换一只羊,他会一起叫二狗子,说老张名下的一克黄金将分配给老李。老李的名字。,二狗子拿出账本,看看老张名下有没有一克黄金,如果老张名下有1克黄金,则从​​老张名中减去1克,在老李名上加1克即可完成支付。这时候,老李在电话里听到二狗子确认转账已经完成的时候,他才放心,老张把羊带走了。

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

分布式虚拟货币

这个新上任的二狗子很聪明,但有时这个人聪明却被误认为聪明。一天二狗子盯着账本,心想这村子谁有钱就是我说的。那我.... 于是他火了,私下从老张的账户里掏了十克黄金到自己的名下。

本以为就完美了,没想到老张也有记账的习惯。有一天,他正要付款,却被二狗子告知,他的账户没钱了。老张查了一下账本,发现还有十克,于是拿着账本去找二狗子理论。这次检查发现了未经老张批准的转让。

比特币原理和协议中较为关键的数据结构、算法与协议

东窗事件!比特村爆炸了。二狗子的弹劾在所难免,但通过这件事比特币交易原理,大家都发现了将账本集中在一个人手中的弊端:

该系统完全依赖于账簿持有人的个人信用。如果这个人不守规矩,随意篡改账本,那么整个货币体系就会崩溃。如果此人的家着火或账簿被盗,也会给整个系统带来破坏。吹

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

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

建立账簿披露机制的基础设施

Satoshi Nakamoto首先解释说,现有的账本应该修改如下:

账本不再记录每个村民的余额,而只记录每一笔交易。即记录每笔交易的付款人、收款人和付款金额。只要确定账本的初始状态,每笔交易记录都是可靠的,有时序的,就可以计算出每个人目前持有多少钱。账簿由私有变为公有。只要有村民需要,就可以获得当前完整的账本。账簿记录了从创建账簿到当前账簿的所有交易记录。

此话一出,锅底顿时炸了。第一条无所谓,但第二条简直不能接受,因为账本记录了村民的所有交易,让大家的隐私没有完全暴露。

中本聪不着急,拿出一对奇怪的东西。

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

中本聪说,不要惊慌。在他的机制下,任何人都不使用真实身份交易,而是使用唯一代码进行交易。

他展示了手中的神奇之物,说这两样东西叫做机密印章和印章扫描仪。之后,他会为村里的每家每户发放机密印章和印章扫描仪。两者的作用如下:

机密印章可以印在纸上,每印上一个印章,就隐含着一串全村独有的文字,却是肉眼看不见的。也无法通过观察做出相应的印记。印章扫描仪可以扫描已经盖章的印章,读出隐藏的信息,并在液晶屏上显示一串字符

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

建立虚拟矿工组织(挖矿组)

下一步,中本聪从全村招募虚拟矿工。招聘要求如下:

矿工被分组为一个单位。一个组可以是一个家庭,也可以是几个家庭加入一个组成为矿工。不影响货币的正常使用。矿工每天花费一定的时间从事比特币的“挖矿”活动,但与挖矿不同。在金矿中,虚拟矿工无需携带工具即可在现场工作。他们可以在家完成工作。矿工有一定的可能获得报酬。他们在采矿活动中付出的努力越多,获得报酬的可能性就越大。矿工可以随时退出,也可以随时添加新矿工

很快,大约五分之一的村民加入了比特币矿工组织,他们分成了 7 个小组。

创建初始账本(创世区块

接下来,中本聪宣布,根据二狗子的账本,所有抵押的黄金将按照账本中记录的余额返还给每个村民,然后这个账本将被彻底销毁。

接着,中本聪拿出了一本新的账本,在账本的第一页上记录了一些交易记录。尤其是这些记录的payer一栏都是“系统”,payee是每个印章对应的隐藏字符,代表初始时刻。系统默认为每个家庭分配一定数量的比特币,但数量非常少,只有少数,甚至一些不幸的村户没有得到比特币。

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

支付与交易

经过这么多准备,我终于说到点子上了。下面我们来谈谈如何在这样的系统下完成支付。以老张支付老李10比特币为例。

付款人签署交易单

为了支付10个比特币,老张必须先询问老李的识别字符串,比如“ABCDEFG”,而老张也有一个识别字符串,比如“HIJKLMN”,然后老张写了一个内容为“HILKLMN pay”的列表10个比特币给ABCDEFG”,然后用自己的保密印章换了一章,把名单交给了老李。另外,为了便于资金来源的追溯,需要在列表中注明资金来源记录在哪个页面。例如,在这个列表中,老张的10个比特币来自创建账本并记录在账本中时系统赠送的。第一页。

收款人确认文件的签署人

老李拿到订单后,需要确认订单上确实是“HIJKLMN”这个人(也就是老张)签字的。这并不困难。因为名单上肯定有机密印章,老李拿出印章扫描仪扫描了这一章。如果液晶屏上显示的字符与付款人(此处为“HIJKLMN”)相同,则可以确认列表确实是付款人。签。这是因为按照机密封印的机制,其他人都无法伪造封印。任何扫描印章的人都可以确认付款人和盖章的人是否相同。

收款人确认付款人的余额

到目前为止,该系统仍然存在很大问题。通过保密印章,收款人虽然可以确认付款人确实签署了这份表格,但无法确认付款人是否有足够的余额支付。在之前的中央虚拟货币系统中,二狗子负责检查付款人的余额并通知收款人交易是否有效。现在二狗子开通了,谁负责记账,确认每笔交易的有效性?

正如我之前所说,中本聪设计的系统是一个分布式货币系统,不依赖任何中心人,所以不会有一个人或少数人来负责这件事。上面提到的矿工最终将接手这项工作。组织。老张、老李和村里其他任何使用比特币进行交易的村民都依靠矿工的工作来完成交易。

矿工的工作

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

矿工工具

俗话说,工欲善其事,必先利其器。比特币矿工虽然不需要铁铲、铁锹、探照灯等工具,但还是有一些必备的东西。

初始账簿。每个小组首先制作一份初始账簿的副本。初始账本只有一页,记录了系统的第一份礼物。

空的分类帐纸。每个组都有许多账簿。每个页面只有账本结构,没有内容。具体的内容写入规则将在后面描述。下面是一张空账簿纸,后面会提到各个字段的含义

代码生成器(哈希函数)。Satoshi Nakamoto 还向矿工组织的每个小组发送了几个代码生成器。这件事太神奇了。将一页帐簿和帐簿的内容放入本机。该列自动打印由“0”和“1”组成的一系列数字,共256个数字。最神奇的是,数字生成器有以下功能:

生成的数字只与账本纸上填写的内容有关,与人、字体、时间等因素无关。同一张账本会生成相同的号码,但如果内容只改变一个字符,号码就会是不可识别的代码生成器在打印代码时还需要把填写在账本纸上的所有交易单据都放进去. 机器会扫描交易单并填写交易单以确保一致性,尤其是保密印章。如果发现保密印章与付款人不一致,将拒绝打印代码。将一张打印好的帐簿纸放入其中。机器会判断号码是否有效机器打印,号码和内容是否一致。该号码不可在交易单收件箱中伪造。每个矿工团队需要在门口挂一个盒子来收集交易订单。布告栏。每个矿工组还需要一个公告板来发布一些信息。

有了以上工具,矿工组织就可以开始工作了!

收集交易订单

中本聪规定,每笔交易的发起人不仅要将交易单交给收款人,还要复制几张相同的交易单,同时投递到各矿工组的收件箱。

矿工团队的人会定期去他们的收件箱中挑选出收集到的交易并将其取出。

填写户口本

比特币原理和协议中较为关键的数据结构、算法与协议

这时,队员们拿出一张空账簿纸,将这些交易填入“交易清单”一栏,同时找到当前账簿的最后一页,将最后页码复制到“前面的帐单号码栏“”。注意还有一个“幸运号码”,你可以随意填一个数字,比如12345。然后,把账本纸放进号码生成器,打印号码,然后一个账号书完成。

如果你认为矿工的工作就是这么简单,那你就大错特错了。中本聪有个变态规则:只有数字的前10个数字是0,这页账本纸才算有效。

根据前面对号码生成器的描述,如果要修改号码,只能修改账本的内容,“交易清单”和“上次账本号码”是不能随便改的,所以你只能改幸运数字。因此,为了生成有效的账本纸,团队中的矿工们不断地复制账本纸,但每张纸的幸运数字不同,然后反复将纸放入编码器中。如果生成的数字不符合规定,这张纸即使已经过时,也要重复这个过程,直到生成一串有效的数字。

我们知道,如果数字的每个数字都是随机的,那么平均可以得到1000多张不同幸运数字的纸的数量,才能获得一个有效数字。

这就奇怪了,为什么这些矿工拼命做这种看似毫无意义的事情?记得我之前说过矿工是有报酬的,这就是矿工的动力。中本聪规定:每个账本的交易列表中的第一笔交易是“系统向该组支付50比特币”。换句话说,如果你生成了一个有意义的账本,并且被所有挖矿团队接受,就意味着这笔交易也被接受了,你的挖矿团队已经收到了50个比特币。

这就是为什么矿工被称为矿工,以及为什么据说比特币的数量会随着交易和矿工的活动而不断增加。比如下面是一个挖矿过程,这个群的比特币公众号是“UVWXYZ”。

当幸运数字达到“533”时,系统生成有效账本。

确认账本

当一个挖矿团队有幸生成有意义的账本时,为了获得奖励,它必须立即要求其他团队确认他们的工作。前面已经提到,目前村里有7个采矿组,所以这个组必须将6份有效账簿发给其他6组进行确认。

中本聪规定,当一个集团收到其他集团的会计凭证时,必须立即停止其手中的挖矿工作,以确认会计账簿。

需要确认三个信息:

账本编号有效 账本有效交易清单上一页有效

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

在第二部分中,您需要将帐簿页上的“帐簿纸号上一页”与该组当前保存的有效帐簿的最后一页号进行比较。如果它们相同,请确认。如果它们不同,则需要将现有账簿向前比较。直到你找到这个编号的页面。如果没有找到指定的“账簿纸号上一页”对应的页面,团队将丢弃该页面。不得证实。

需要注意的是,上述机制可以保证,如果每个组中的账本相同,则可以按照相同的顺序将它们全部绑定到同一个账本中。因为下一张纸的数量总是取决于上一张纸的数量,所以代码生成器的机制保证了每组中所有合法账簿的相对顺序是相同的(可能有分支,但它们会没有出现)戒指,我们稍后再说)。

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

第一个是系统奖励给生成这页账本的组的50个奖励。默认情况下识别此事务。只要按照上面的方法,就可以确认HIJKLMN是否真的有10个比特币支付给了ABCDEFG。

如果以上所有验证都完成并全部通过,团队将承认上述账本有效,然后将此账本合并到团队的主账本中,丢弃当前正在进行的工作,后续的挖矿工作将基于这本书。执行更新的主分类帐。

账本确认反馈

对于挖矿团队来说,账本纸发出后,如果后面还有其他团队发来的账本纸,而“上一页账本纸号”是之前发出的账本纸,则表示他们的这项工作得到了其他小组的成功认可,因为一些小组根据他们的账簿继续工作。至此,大致可以说已经拿到了50个比特币。

另外,当任何一个集团生成新的有效账簿或确认其他集团的账簿时,都会在公告板上写下该集团认可的最新交易,然后收款人只需发现相关交易已被批准每组。,你基本可以认为钱到了你的账户,然后他在付款的时候就可以把钱的来源指向交易。

比特币原理和协议中较为关键的数据结构、算法与协议

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

工作机理分析

虽然上面解释了比特币的基本运行规则,但村民们仍然有很多疑问。因此,中本聪召开了问答会,回答常见问题。下面总结了村民最关心的问题。

如果我同时收到两个法定账簿页面怎么办?

注意,在上述运行机制中,每个挖矿团队都是并行工作的,所以一个团队完全有可能收到两个不同的账本页面,这些账本页面都是基于当前团队主账本的最后一页。,而且内容完全合法,我该怎么办?

对此,中本聪表示,集团不应以线性方式组织账本,而应以树状结构组织账本。在任何时候,都以当前最长的分行作为主账本,但保留其他分行。比如一个群同时收到两个账本页A和B,经过核算后都是合法的。这时候群应该把两个页面组织成分叉的形式,如下图所示

黑色代表当前账本的主干。此时可以选择任意页面作为当前主分支,例如选择A:

这时候如果有一个新的基于A的账本页面,那么这个主干继续:

如果这个主干继续这样下去,就意味着大家基本都用A作为主干,B就会被遗忘。但也有可能突然 B 变得更长:

然后我们需要使用B分支作为当前的主干,并基于这个分支进行后续工作。

从局部来看,虽然在某一时刻各组的主账簿可能不一致,但大体方向是一致的。那些偶尔因为不同步而产生的小分支很快就会被历史淹没。

挖矿团队有人伪造账本怎么办

对于这个问题,中本聪表示,只要挖矿组织中的大多数人是诚实的,系统就是可靠的,答案具体分为几个方面。

首先,基于保密印章机制,任何人都不能伪造他人身份进行支付,因为代码生成器在打印代码时会检查所有交易订单的保密印章,印章和付款人将拒绝如果印章与付款人不一致,则打印。

并且诚实的矿工不会承认非法交易(例如,某个交易付款人的余额不足)。

因此,只有一种可能的攻击,即收款人确认收到付款后,从另一个分支创建另一个交易订单,取消之前的付款,再次向另一个人支付相同金额的款项(所谓的双花问题)。下面还通过一个例子来说明这个问题。

假设攻击者拥有 10 个比特币,他要同时向两个受害者 A 和 B 支付这笔钱,并且他们都被承认了。

第一步,攻击者准备从受害者 A 那里购买 10 个比特币的黄金。 他向受害者 A 签署交易单,然后将 10 个比特币转移给受害者 A。

比特币原理和协议中较为关键的数据结构、算法与协议

第二步,在最新的账本页面确认交易,并由各个挖矿团队公布。受害者A看到公告,确认比特币到了,并给了攻击者价值10比特币的黄金。

第三步,攻击者找到账本,从包含刚才交易的账本页的上一页做一个分支,生成比前一个分支更多的帐单页。因为刚才攻击者创建的分支变成了主分支,而包含受害者A收到的钱的分支变成了侧分支,矿机不再认可刚才的转账,受害者A获得的10个比特币被取消. NS。

第四步,攻击者可以再次签署交易单,向受害者B支付等量的钱,受害者B确认钱到了后,向攻​​击者支付等量的金币。

到目前为止,攻击者两次花费了 10 个比特币,并从两个受害者的每一个那里购买了等值的黄金。攻击者也可以这样做,取消与受害者 B 的转账,并向其他人支付相同的金额......

对于这次攻击,中本聪给出的解决方案是,建议收款人不要在公告发布时立即确认交易完成,而是应该观察一段时间,等待每个矿工团队再发布6个确认帐户。,而且之前的账本没有注销,只能确认钱到了。

中本聪解释说,之前设置了异常编号规则是为了防止这种情况。综上所述,生成一个有效的账本页面并不是那么简单。反复尝试不同的幸运数字需要耗费大量人力,过程完全靠运气。如果某个账本页面包含了你收到钱的确认,并且后面还有6个continue,那么攻击者在落后6页时很难从另一个分支赶上当前的master分支,除非攻击者它拥有大量的人力,比所有其他诚实矿工的人力都多。

而且,如果攻击者有这么多的人力,与其花那么多精力进行这种攻击,不如做一个挖矿的好公民。这可以防止从动机形成攻击。

比特币会继续上涨,会不会严重通胀?

中本聪说,这个我也想到了。之前忘记说了。我给矿工组织的操作规则手册会说明,在我们的协议开始时,每生成一页账本,该组将获得50比特币的奖励。之后,每当账本增加 21,000 页时,奖励将减半。达到210,000页后,每生成一个页面奖励25比特币,达到420,000页后,每生成一个页面奖励12.5,以此类推。当账本达到693万页时,不会有新生成的账本页。奖励。这时候比特币的总量大约是2100万,也就是比特币的总量,所以不会无限增加。

没有奖励之后,没有人会成为矿工。没有人帮忙确认交易吗?

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

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

将不会。中本聪解释说,虽然可以随意加入和退出矿工组织,导致矿工数量发生变化,每个矿工也会得到一个代码生成器,但我在代码生成器中加入了控制机制,当前工作代码生成器越多,每台机器的效率越低,生成新账本页的速度保持不变。

虽然每个人的代号都是匿名的,但如果有人的代号被泄露,账簿公开,他的账户不就都被查出来了吗?

这是真的。比如你想和某人交易比特币交易原理,你必须先得到他的代码,然后才能填写交易单。因为收款人栏需要填写那个人的代码。不过中本聪表示,他可以提供无限制的保密印章,建议每笔交易使用不同的保密印章,这样通过查账簿就无法追踪到同一个人的所有账户。

答案结束了。

阐明

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

为了便于理解,我做了很多简化,所以一些机制细节可能与实际的比特币不完全一样。但总体思路和关键原则是相同的。由于计算机世界中的很多东西(比如公钥系统、网络传输)在现实世界中都没有特别好的对应物,所以在故事中难免会出现一些生硬不合理的细节。本文介绍了比特币网络本身的技术原理和运行机制。当比特币交易在 Mtgox 等交易市场进行时,市场充当了中间代理,并不遵循上述机制。参考比特币:点对点电子现金系统云峰的博客:比特币的基本原理

版权声明:manoon 发表于 2021-11-11 1:57:11。
转载请注明:比特币原理和协议中较为关键的数据结构、算法与协议 | 198区块链导航

暂无评论

暂无评论...