区块链双重支付指南:比特币如何解决独特的数字货币之谜

2019-01-14 13:16 栏目:经验之谈 来源: 查看()

区块链双重支付指南:比特币如何解决独特的数字货币之谜

双重支付的问题:比特币是如何解决的?

数字货币的概念已经存在了很长时间,并不是10年前比特币首次出现。但是,我们之前的所有尝试都因为简单的原因——双重付款而失败。

什么是双重付款?

这个名字几乎完全说明了这一点,双重付款是两次使用同一笔钱的行为。这是一个特定于加密的问题,不会影响传统的实际货币。一旦你花了你的钱,它会离开你的财产而你不能在其他地方使用它,因为你没有它。

对于数字货币,情况有所不同,因为它们更容易复制和消费两次。这是任何想要创建数字货币的人首先需要解决的问题之一。比特币创造者Satoshi Nakamoto提出了一个解决方案。

解决双重付款

为了解决这个问题,中本采用了共享公共账户的概念,我们现在将其称为区块链技术。这个想法已经存在了一段时间,但直到2009年它才被比特币本身实现。

这个过程相当简单。——比特币持有人与其他人交易其他交易。该组被称为块,并且为了确保商家将获得他的钱,并且不会发生双重支付,需要验证在块中分组的交易。

一种选择是让一个集中的第三方进行验证,但如果是这种情况,那么它们将是一种责任,任何攻击都会试图使该服务对整个加密货币系统产生重大影响。

比特币选择的另一个选择是让一大群人参与块的结算(验证交易)以换取回报。通过这种方式,即使其中一些人成为黑客的受害者,其余人仍然可以完成这一过程。在交易被验证之后,它们被存储在区块链中,并且区块链用作确认商家确实已经付款并且确实花费了顾客的代币。

如果有人同时做两件事怎么办?

这种可能性也存在。如果某人使用相同的资金进行两笔交易,则第一笔结算和存储的交易将被视为有效交易。在此期间,第二个不会通过,商家将不会收到资金。考虑到这可能会对商家造成损害,建议在解决好几个街区之后再运送它们(每个街区在10分钟内创建)。

因此,建议商家等待大约一个小时,这样就可以解决6个街区。此时,商家将确定他们是否有报酬或被欺骗,他们可以继续酌情继续。同时,客户无法返回和撤销交易,因为这样做会占用很多资源,知识和对区块链的控制,这是任何人都无法做到的。

是否可以加倍支付?

不幸的是,理论上可以进行双重消费攻击并尝试两次花相同的钱。然而,这在理论上是可行的,但实际上非常困难,并且没有已知的成功案例。有几种情况可能会发生这种情况,但如前所述,这只能在理论上实现。

种族攻击

第一种方法称为种族攻击,这种方法适用于接受比特币和其他货币以换取服务的人。但是,为了实现这一目标,商家必须立即放弃他们的商品,而不是等待区块链上出现其他确认区块。诈骗者可以同时使用两个交易。如果商家决定不等待确认,则可以先处理发送给他人的付款。

2.芬尼攻击

这种类型的攻击非常类似于种族攻击,除了它是由决定试图欺骗商人的矿工完成的。例如,如果矿工有两个地址,其中一个拥有比特币,他们可能会将BTC从一个地址发送到另一个地址。然后他们挖掘数据块但不广播结果,因此交易仍然处于“不确定状态”。 “此时,他们可能会欺骗商人,选择不等待其他街区解决,并在收到双重付款后放弃他们的商品和服务。”

这是矿工广播包含原始交易的块(即他们发送给自己的交易)。在这种情况下,发送给商家的交易将由其他人解决,并且它将是无效的,因为相同的钱已被发送到矿工的第二地址。

3. 51%的攻击

第三种也是最后一种攻击形式是51%的攻击,只有那些控制区块链网络哈希率超过一半的人才能进行这种攻击。这在理论上也是非常困难的,因为没有人有足够的资源和计算能力来与正在运作的大型现实世界矿工组竞争。

在这种情况下,他们可能会使区块链的私有分支看起来像主链,因为它会变得更快,因为更高的哈希率会出现更多的块。通过这种方式,他们可以欺骗商人并让他们认为他们收到的钱以前没有用过,但事实上,攻击者正在进行双重攻击。

微信二维码
售前客服二维码

文章均源于网络收集编辑侵删

提示:仅接受技术开发咨询!

郑重申明:资讯文章为网络收集整理,官方公告以外的资讯内容与本站无关!
NFT开发,NFT交易所开发,DAPP开发 Keywords: NFT开发 NFT交易所开发 DAPP开发