版权声明:本文版权归属麻烦的名字,如需转载,请与作者联系。同时,本文授权BH好文好报群摘编、转载以及相关转授权推文行为。
简介:本文对比特币论文原稿进行了拆分,分为一、二、三、四四个部分,并将以四篇文章先后对这四部分进行翻译。翻译原文的目的,是为了加深自己对比特币以及区块链原理的认识,同时,也为广大想要了解比特币原文的读者们提供一个渠道。希望本文的翻译对您有帮助。文末有原文链接,想要了解的朋友可以自行查阅。
2018年7月12日
比特币论文原稿之翻译(三)
7.回收硬盘空间
一旦一笔最新的交易之前堆积了足够多的区块,那么这笔交易之前已经完成的交易将被释放,以此保证磁盘空间大小。为了避免损害到区块的哈希散列值,交易都是在默克尔树下进行哈希运算的,并且只有树根包含了区块的哈希散列值。通过将该树的分支拔除,老的区块将会被压缩。而内部的哈希散列值不需要被保存。
如果一个区块内没有交易信息,那么它的大小可以达到80个字节。我们假设每十分钟生成一个区块,那么,一年就可以生成4.2MB字节的数据(80bytes*6*24*365=4.2MB)。2008年,电脑系统通常的内存容量为2GB,按照摩尔定律的预言,即使将全部的区块头存储于内存中也不是问题。
8.简化的支付验证
即使不运行全网节点也可以验证支付。用户需要保存一份已经完成工作量证明的最长链的区块头副本,它可以不断向网络节点发起询问,直到它确认已经获得了最长的链条,并能够通过默克尔分支通向它被加上时间戳并且被纳入区块的那次交易。节点不能自己检验交易的有效性,但是可以追溯到链条的某个位置,这样它就可以看到网络中的节点曾经接受过它,并且随后增加的区块也进一步证明了全网曾经接受了它。
例如,只要诚实的节点控制了网络,那么这个验证就是可靠的。相反,如果网络被黑客控制,这个验证就会变得更加脆弱。当全网的节点可以自己验证交易的时候,并且只要黑客继续控制着全网的大多数节点,那么这个简化的方法将会被黑客利用来捏造不真实的交易信息。有一种策略可以防止这种情况的发生,当网络中的节点侦查到无效的区块时,将会发出警告,并且提示用户的软件去加载所有的区块,随后,提醒它们去证实交易信息是否一致。对于需要频繁地进行收付操作的商业机构来说,他们可能更倾向于运行自己的完整节点,以保持较大的独立安全性和验证的快速性。
9.价值的组合和分割
尽管处理完整的硬币不存在问题,但是将一笔交易中的硬币单位拆分成分却是一个笨拙的操作。为了方便价值的分割和组合,交易被设计为可以纳入多个的输入和输出。正常情况下,是某次价值较大的前次交易构成的单一输入;或者是几个价值较小的前次交易共同构成的并行输入,并且最多只有两个输出:一个用于支付,另一个用于找零(如果有的话)。
值得注意的是,当一笔交易依赖于之前的多笔交易时,之前的多笔交易又依赖于其他的多笔交易,但并不存在任何问题。因为这种工作机制并不需要提取完整的、单独的交易历史。
比特币论文原稿:https://bitcoin.org/bitcoin.pdf
早赞声明:为方便早赞、避免乱赞,“BH好文好报群”为点赞者、写作者牵线搭桥,实行“先审后赞、定时发表”的规则,也让作品脱颖而出、速登热门!加群微信:we01230123(天平)