主页 > 最新imtoken官网下载 > 好文分享——比特币:一种点对点的电子现金系统

好文分享——比特币:一种点对点的电子现金系统

最新imtoken官网下载 2023-01-17 08:05:10

比特币:一种点对点电子现金系统 比特币:一种点对点电子现金系统

原作者:中本聪

[摘要]:本文提出了一种完全通过点对点技术实现的电子现金系统,使在线支付可以由一方直接发起并支付给另一方,中间没有任何金融机构。 虽然数字签名(Digital signatures)部分解决了这个问题,但是如果仍然需要第三方的支持来防止双花(double-spending),那么这样的系统就失去了它的价值。 我们(我们)在这里提出一个解决方案,使现金系统在点对点环境中工作,并防止双重支出问题。 网络通过将所有交易散列到一个不断延伸的基于散列的工作量证明链中作为交易记录来为所有交易打上时间戳,除非再次完成所有工作量证明,并且形成的交易记录不会被更改。 最长的链不仅可以作为观察到的事件序列的证明,而且可以被视为来自最大的 CPU 计算能力池。 只要大部分 CPU 算力不打算合作攻击全网,那么诚实节点就会产生超过攻击者的最长链。 系统本身需要很少的基础设施。 信息以最大努力的方式在网络中传播,节点可以随时离开和重新加入网络,以最长的工作量证明链作为节点离线时发生的交易的证明。

1 简介

几乎所有的互联网交易都需要借助金融机构作为可靠的第三方来处理电子支付信息。 尽管此类系统在绝大多数情况下运行良好,但它们仍然固有地受到“基于信任的模型”的弱点的影响。 不可能实现完全不可逆的交易,因为金融机构总会不可避免地出面调解纠纷。 金融中介机构的存在也会增加交易成本,限制实际的最小交易规模,限制日常小额支付交易。 而潜在的损失是许多商品和服务无法退货。 如果没有不可逆的支付手段,互联网交易将受到很大限制。 由于可能会退款,

交易双方都需要有信任。 此外,由于商家还必须谨慎对待客户,因此他们会要求客户提供完全不必要的个人信息。 在实际经营中,一定比例的欺诈客户也被认为是不可避免的,相关损失作为销售费用处理。 在使用实物现金的情况下,由于此时没有第三方信用中介,可以避免这些销售成本和支付问题的不确定性。 因此,我们非常需要这样一种电子支付系统,它基于密码学原理而不是信用原理,使得任何达成协议的双方都可以直接进行支付,而无需第三方中介的参与。 消除撤销支付交易的可能性可以保护特定卖家免受欺诈; 对于那些想要保护买家的人来说,在这种环境下建立通常的第三方担保机制也是轻松愉快的。 在本文中,我们(我们)将提出一种点对点的分布式时间戳服务器,根据时间生成并记录电子交易证明比特币是如何运作的,从而解决双重支付问题。 只要诚实节点控制的算力总和大于合作攻击者的算力总和,系统就是安全的。

2. 交易

我们定义一个电子币是一系列的数字签名:每个拥有者对上一次交易的一个随机哈希数和下一个拥有者的公钥(Public key)进行签名,并将这个签名附加到电子货币的末尾,而电子货币被发送给下一个所有者。 收款人可以通过验证签名来验证链的所有者。

t币和比特币是一样吗_q币和比特币是货币吗_比特币是如何运作的

这个过程的问题是接收者很难验证前任所有者是否双花了硬币。 通常的解决方案是引入可信任的第三方机构,或者类似铸币厂的机构,对每笔交易进行验证,防止重复支付。 每次交易后,电子货币将被铸币厂回收,铸币厂将发行新的电子货币; 只有铸币厂直接发行的电子货币才会被认为是有效的,这样可以防止双重支出。 但这种解决方案的问题在于,整个货币体系的命运完全取决于运营铸币厂的公司,因为每一笔交易都必须经过铸币厂的确认,铸币厂就像一家银行。

我们需要某种方式让收款人确保之前的所有者没有在较早的交易上签字。 从逻辑上看,为了达到我们的目的,其实我们需要关注的只是这笔交易之前发生的交易,而不需要关注之后是否会有重复支付的尝试此交易发生。 为了保证一个交易不存在,唯一的办法就是知道之前发生过的所有交易。 在造币厂模型中,造币厂知道所有交易并确定交易完成的顺序。 如果要在电子系统中排除第三方中介,那么交易信息应该公开(publicly announced) 1、我们需要整个系统的所有参与者都有一个唯一被认可的历史交易顺序。 收款人需要确保交易过程中的大多数节点都同意交易是最先发生的。

1 W Dai,一组无法追踪的数字假名在没有外部帮助的情况下相互支付金钱并在彼此之间执行合同的计划(没有外部帮助的电子现金机制),“B-money”,1998 年 2 H. Massias, XS阿维拉和 J.-J。 Quisquater,“具有最低信任要求的安全时间戳服务的设计”,比荷卢经济联盟第 20 届信息论研讨会,1999 年 5 月。3 秒。 Haber, WS Stornetta,“如何为数字文档添加时间戳”,载于《密码学杂志》,第 3 卷,第 1 期。

q币和比特币是货币吗_比特币是如何运作的_t币和比特币是一样吗

2,第 99-111 页,1991。4D。 Bayer, S. Haber, WS Stornetta,“提高数字时间戳的效率和可靠性”,序言 II:通信、安全和计算机科学方法,第 329-334 页,1993 年 5 秒。 Haber, WS Stornetta,“位串的安全名称”,第 4 届 ACM 计算机和通信安全会议论文集,第 28-35 页,1997 年 4 月。关于计算机和通信安全,第 28-35 页,1997 年 4 月。

3.时间戳服务器

本方案首先提出“时间戳服务器”。 时间戳服务器通过实现随机散列并广播散列来对一组数据以块的形式进行时间戳,就像在新闻或Usenet Posting中的2345一样。显然,时间戳可以证明特定数据必须存在于某个时刻,因为对应的随机哈希值只有在那个时刻存在的时候才能得到。 每个时间戳都应该将之前的时间戳合并到它的随机散列值中,之后的每个时间戳都应该加强之前的时间戳,从而形成一条链。

比特币是如何运作的_t币和比特币是一样吗_q币和比特币是货币吗

4. 工作量证明

为了在点对点的基础上构建一组去中心化的时间戳服务器,仅仅像报纸或全球新闻网络那样工作是不够的,我们还需要一个类似于 Adam Back 提出的哈希现金(Hashcash)6。 在进行随机散列时,工作量证明机制引入了针对特定值的扫描工作,例如 SHA-256,其中随机散列值以一个或多个零开头。 那么随着0个数的增加,求解所需的工作量会呈指数级增长,但只需要一次随机哈希运算就可以检验结果。 我们在区块中附加一个随机数(Nonce),这个随机数使得给定区块的随机散列值根据需要出现尽可能多的零。 我们通过反复试验找到这个随机数,直到找到为止。 这样,我们就构建了一个工作量证明机制。 只要 CPU 消耗的工作量能够满足工作量证明机制,除非重新完成相当大的工作量,否则区块的信息是无法更改的。 由于此块之后链接了后续块,如果要更改此块中的信息,则需要重做所有后续块的所有工作量。

t币和比特币是一样吗_比特币是如何运作的_q币和比特币是货币吗

同时,工作量证明机制也解决了集体投票时谁占多数的问题。 如果确定多数的方式是基于IP地址,一个IP地址,一票,那么如果有人有权分配大量IP地址,这个机制就被打破了。 工作量证明机制的本质是一个CPU,一票。 “多数”决定表示为最长的链,因为最长的链包含最大的工作量。 如果大部分 CPU 由诚实节点控制,那么诚实链将以最快的速度扩展并超越其他竞争链。 如果要修改一个已经出现的区块,攻击者必须重新完成这个区块的工作量加上这个区块之后所有区块的工作量,最终赶上并超过诚实节点的工作量。 稍后我们将证明,如果较慢的攻击者试图追赶后续区块,成功的概率会呈指数下降。 另一个问题是硬件的计算速度正在快速提高,节点在网络中的参与程度会出现波动。 为了解决这个问题,工作量证明难度(the proof-of-work difficulty)将使用移动平均目标的方法来确定,即难度指向以预定平均值每小时产生块的速度数字。 如果块生成得太快,难度会增加。

5.网络

运行网络的步骤如下:

1)新交易广播到全网;

比特币是如何运作的_t币和比特币是一样吗_q币和比特币是货币吗

2)每个节点将接收到的交易信息合并到一个区块中;

3)每个节点都试图在自己的区块中找到一个具有足够难度的工作量证明;

4)当一个节点找到一个工作量证明时,它向全网广播;

5)当且仅当区块中包含的所有交易都有效且之前不存在,其他节点同意该区块的有效性;

6) 其他节点表示接受该块,接受的方式是跟随块的末尾,创建一个新的块来扩展链,并将接受块的随机哈希值作为一个随机哈希值先验到新区。

节点总是将最长的链视为正确的链,并继续工作并扩展它。 如果两个节点同时广播不同版本的新区块,其他节点收到区块的时间就会有差异。 在这种情况下,他们将在最先收到的区块的基础上工作比特币是如何运作的,但也会保留另一条链,以防后者成为最长的链。 僵局(tie)的打破会等到找到下一个工作量证明,并且其中一条链被确认为较长的那条,那么工作在另一条支链上的节点就会切换阵营,开始在较长的那条链上工作链。 在链上工作。

所谓“新交易广播”,其实并不需要到达所有节点。 只要交易信息能够到达足够多的节点,它们很快就会被整合成一个区块。 区块广播对丢弃信息具有容错能力 比特币:一个点对点的电子现金系统 8btc.com 执行翻译 Bitcoinblogger.com 独家赞助 6

的。 如果一个节点没有收到一个特定的块,该节点将意识到它丢失了一个块并且可以请求自己下载该块。

6.动机

我们同意每个区块的第一笔交易是专门化的,这个交易产生一种新的电子货币,为区块的创建者所有。 这增加了节点支持网络的激励,并提供了一种无需中央机构发行货币即可将电子货币分配到流通中的方法。 这种不断向货币体系中添加一定数量的新货币的方式,与消耗资源挖掘金矿,将黄金注入流通领域非常相似。 此时CPU的时间和功耗就是消耗的资源。 另一个激励来源是交易费用。 如果一笔交易的输出值小于输入值,那么差额就是交易费,这将被添加到区块的激励中。 只要一定数量的电子货币进入流通,激励机制就可以逐步转为完全依赖交易手续费,货币体系就可以免于通货膨胀。 激励系统还有助于鼓励节点保持诚实。 如果一个贪婪的攻击者能够调动比所有诚实节点加起来更多的 CPU 计算能力,那么他将面临一个选择:要么将其用于诚实工作以生成新的电子货币,要么将其用于二元支付攻击。 然后他会发现遵守规则和诚实工作更有利可图。 因为这些规则让他拥有更多的电子货币,而不是破坏系统,损害他自己财富的有效性。

7.回收硬盘空间

比特币是如何运作的_q币和比特币是货币吗_t币和比特币是一样吗

如果最近的事务已包含在足够的块中,则可以丢弃该事务之前的数据以回收磁盘空间。 为了同时保证区块的随机哈希值不被破坏,在对交易信息进行随机哈希时,以默克尔树(Merkle tree)7的形式构建,使得只有根( root) 包含在块值的随机散列中。 可以通过截断树的分支来压缩旧块。 不必保存内部随机散列值。

7R.C. Merkle,“公钥密码系统协议”,In Proc。 1980 年安全和隐私研讨会,IEEE 计算机协会,第 122-133 页,1980 年 4 月。S. Haber,WS Stornetta,“位串的安全名称”,第 4 届 ACM 计算机和通信安全会议论文集,第 28 页-35,1997 年 4 月。关于计算机和通信安全,第 28-35 页,1997 年 4 月。H. Massias、XS Avila 和 J.-J。 Quisquater,“具有最低信任要求的安全时间戳服务的设计”,比荷卢经济联盟第 20 届信息论研讨会,1999 年 5 月。比特币:点对点电子现金系统 8btc.com 执行翻译 Bitcoinblogger.com 独家赞助 7

q币和比特币是货币吗_t币和比特币是一样吗_比特币是如何运作的

没有交易信息的区块头(Block header)大小只有80字节。 如果我们将块生成速率设置为每 10 分钟一个,那么每年将生成 4.2MB 的数据。 (80 字节 * 6 * 24 * 365 = 4.2MB)。 2008年,PC系统的常用内存容量为2GB。 按照摩尔定律的预测,即使把所有的区块头都存入内存也不成问题。

8. 简化支付验证

也可以在不运行完整网络节点的情况下验证支付。 用户需要保留一份最长工作量证明链的区块头副本,它可以不断询问网络,直到它确信自己拥有最长的链并可以通过 merkle 分支找到它为止- 标记和包含在块中的交易。 一个节点不可能自己验证交易的有效性,但是通过回溯到链中的某个位置,可以看到一个节点已经接受了它,之后添加的区块进一步证明了整个网络已经接受了它。

比特币是如何运作的_t币和比特币是一样吗_q币和比特币是货币吗

在这种情况下,只要诚实节点控制网络,验证机制就是可靠的。 但是,当整个网络受到具有超强算力的攻击者的攻击时,就会变得更加脆弱。 由于网络节点可以自行确认交易的有效性,只要攻击者能够持续保持算力优势,简化机制就会被攻击者伪造的交易所欺骗。 那么一个可行的策略是,一旦发现无效区块,他们会立即发出警报,收到警报的用户会立即开始下载已被警告问题的区块或交易的完整信息,以便检查信息的不一致性。 决心。 对于日常支付量较大的商业机构而言,他们可能仍希望运行自己的全节点,以保持更大的独立性和验证速度。

q币和比特币是货币吗_t币和比特币是一样吗_比特币是如何运作的

9.合并和拆分值

虽然电子货币可以单独处理,但每种电子货币的单独交易将

比特币是如何运作的_q币和比特币是货币吗_t币和比特币是一样吗

这是一种笨拙的方式。 为了使价值易于组合和拆分,交易被设计为合并多个输入和输出。 一般来说,它是由前一笔价值较大的交易组成的单一输入,或者是由前几笔价值较小的交易组成的并行输入,但最多有两个输出:一个用于支付,另一个用于找零(如果任何)。 需要指出的是,虽然一个交易依赖于之前的多笔交易,而这些交易又各自依赖于多笔交易,但这并没有问题。 因为这个工作机制不需要开始检查之前发生的所有交易历史。

10.隐私

传统的薄荷模型为交易参与者提供了一定程度的隐私保护,因为从受信任的第三方索取交易信息的尝试受到严格限制。 但是,如果将交易信息广播到全网,则说明该方法无效。 但是仍然可以保护隐私:保持公钥匿名。 公众唯一知道的信息是有人向另一个人发送了一定数量的货币,但很难将这笔交易与具体的人联系起来,即公众很难确定这些人是谁. 这与证券交易所发布的信息类似。 每笔股票交易的时间和交易量均有记录并可供查询,但不公开交易双方的身份信息。 作为额外的预防措施,用户可以让每笔交易生成一个新地址,以确保这些交易无法追溯到一个共同的所有者。 然而,由于平行进口,一定程度的回溯是不可避免的,这意味着这些硬币都属于同一所有者。 此时的风险在于,如果确定某个人的某个公钥属于他,那么这个人的很多其他交易都可以被追溯。

t币和比特币是一样吗_比特币是如何运作的_q币和比特币是货币吗

11.计算

想象一下以下场景:攻击者试图以比诚实节点生成链更快的速度生成替代区块链。 即使达到了这个目的,整个系统也不完全受制于攻击者的任意意志,比如凭空创造价值,或者掠夺不属于攻击者的货币。 这是因为节点永远不会接受无效交易,诚实节点永远不会接受包含无效信息的区块。 攻击者最多能做的就是更改自己的交易信息,并试图取回他刚刚付给别人的钱。

诚实链和攻击者链之间的竞争可以用二进制随机游走(Binomial Random Walk)来描述。成功事件定义为诚实链被扩展一个区块,使其领先+1,而失败事件是攻击者链

被延长了一个方块,使得差距为 -1。

攻击者成功填补给定缺口的概率可以近似为赌徒破产问题。 假设一个赌徒有无限的透支信用,然后开始可能无限次地赌博以试图弥补他的亏空。那么我们可以计算他补足亏空的概率,即攻击者追上诚实的人的概率链,如下图

比特币是如何运作的_t币和比特币是一样吗_q币和比特币是货币吗

假设 p > q,那么由于块数的增加,成功攻击的概率呈指数下降。 由于概率是攻击者的敌人,如果他没有足够的运气迅速成功,他成功的机会会随着时间的推移而减少。 然后我们考虑收款人需要等待多长时间才能充分确信付款人难以更改交易。 我们假设付款人是支付攻击者,希望在一段时间内让收款人相信自己已经付款,然后立即将付款还给自己。 虽然收件人届时会发现,但为时已晚。 收款人生成一对新的密钥,然后只保留一小段时间将公钥发送给付款人。 这样可以防止出现以下情况:付款人预先准备好一条区块链,然后不断地计算这个区块,直到运气让他的区块链超过诚实链,然后立即执行支付。 在这种情况下,每当发出交易时,攻击者都会秘密准备一个包含交易替代版本的平行链。 然后收款人会等待交易出现在第一个区块,然后等到它后面上链了 z 个区块。此时,他仍然无法确切知道攻击者前进了多少个区块,但假设诚实区块将取生成区块的平均期望时间,则攻击者的潜在进度服从泊松分布,分布的期望值为

t币和比特币是一样吗_q币和比特币是货币吗_比特币是如何运作的

λ=zqp

比特币是如何运作的_t币和比特币是一样吗_q币和比特币是货币吗

q币和比特币是货币吗_比特币是如何运作的_t币和比特币是一样吗

t币和比特币是一样吗_比特币是如何运作的_q币和比特币是货币吗

12.结论

我们在此提出一种不需要信用中介的电子支付系统。

我们首先讨论电子货币的一般电子签名原理。 虽然此类系统提供了对所有权的强大控制,但它们不足以防止双重支出。 为了解决这个问题,我们提出了一个点对点网络,使用工作量证明机制来记录交易的公开信息。 只要诚实节点能够控制绝大多数 CPU 算力,攻击者就很难更改交易记录。 . 该网络的稳健性在于其结构简单。 节点之间的工作大多相互独立,需要很少的协调。 每个节点不需要明确自己的身份。 由于对交易信息的流转路径没有要求,只需要尽力传播即可。 节点可以随时离开网络,重新加入网络非常容易,因为它只需要补充在离开期间收到的工作量证明链。 节点通过自身的 CPU 算力投票,对自己对有效区块的确认进行投票。 他们继续扩展有效的区块链以表示他们的确认,并在无效的区块之后拒绝扩展区块以表示拒绝。 该框架包含 P2P 电子货币系统所需的所有规则和激励措施。 (全文)

几个值得思考的问题(换金币):

1)电子货币的安全性,安全风险造成的后果会更加严重,甚至无法追踪;

2)奖励本身会付出成本,而且随着参与者的增加(竞争激烈,实际上会变成一场资本争夺战,现在表现为谁的电脑多,谁的电脑速度快,这种竞争其实是资本,羊毛出在羊身上),这样的成本能比原来的第三方系统更划算吗?

3)这个系统会对金融系统产生多大的影响? 如果银行消失了,谁来提供原来金额的保全服务。 比如交易双方可以直接交易,但是保证金怎么保全? 还需要金融机构吗?

其他问题欢迎在评论区留言,一起讨论讨论。