您现在的位置是:首页 > 比特币 > 比特币指南比特币指南

什么是双花攻击,如何解决双花问题

2019-06-19来源:作者:经济常识笔记栏目:比特币指南

简介双花攻击是一个最为常见,并且能够威胁系统运转的攻击。举个简单例子来讲,比特币在进行转账交易的时候,用户与商户之间建立了连接,将钱转给了商户,在进行转账的这个过程中,钱仍然归属用户,利用这段时间,这钱是不是可以转账给其他人?

  关于区块链系统,我们经常会不断听到一些热门的词,从一开始的区块链“去中心化”、“不可篡改”,再到“侧链”、“闪电网络”、“双花攻击”等等,而针对这些技术上的探讨,有助于帮助我们更好的了解“区块链”的特征。今天,我们就来聊聊“双花攻击”是如何在区块链系统中操作的。

  双花攻击是一个最为常见,并且能够威胁系统运转的攻击。比如,之前比特币黄金曾遭受此攻击,大约有388000左右的BTG被双花。

  那么,我们该如何理解这个双花攻击呢?举个简单例子来讲,比特币在进行转账交易的时候,用户与商户之间建立了连接,将钱转给了商户,在进行转账的这个过程中,钱仍然归属用户,利用这段时间,这钱是不是可以转账给其他人?

什么是双花攻击

  一、如何正确看待双花?

  圈内人最喜欢这种有话题感的内容,“双花”的出现,让一些人找到了数字资产交易的漏洞,开始想着心思如何利用漏洞?还有一部分人想看看存有漏洞的系统,是否还能安全进行数字资产交易?

  所谓的“双花”攻击,其实就是指将用户所持有的数字资产中的余额,进行多次的交易行为。

  它在数字资产交易过程中是如何做到的呢?

  假设第一条交易已经生成,攻击者在交易成功前,再次生成一个新的区块,让新的区块比交易的那个区块速度更快,这样就能获得两次的交易过程,等同于这份交易中的数字资产被合理运用了两次。

  我们去追寻导致这个问题所发生的原因,才发现,在区块链系统中,最长的那条链就是最有效的链。

  在我们现实生活中就不会出现这种情况,这还是与数字资产的虚拟性相关的,毕竟每一次交易过程,都是生成一串特定的字符。而在数字资产交易过程中,用户所支付的数字资产从转账开始到确认成功,还需要一段时间来进行确认,这才让攻击者有机可乘。

  这也是“去中心化”系统所带来的一系列问题。

  二、如何解决双花问题?

  双花问题最需要解决的问题,其实就是时间的问题。如何在用户发起交易的过程中,去记录第一笔交易的时间和攻击者发出交易的时间,来选择最长链,这是解决该问题的关键。

  在区块链系统中,我们会经常听到一个词——时间戳。我们就以它为代表,举例说明如何解决双花问题?

  首先,我们要了解时间戳的概念。用最简单的方式来讲,就是对每一笔交易进行了盖章确认,并记录了交易发起的时间。类似于生活中,最为常见的买卖双方签订合同,有双方的签名以及合同生效的时间。

  也就是说,通过时间戳,用户发起的每一笔交易都能有时间记录,当攻击者在交易过程中发起交易时,系统能够分辨出交易发起的时间,根据时间顺序来看,就能够迅速确认第一笔交易时间。

  这样一来,就不会存在最长链就是最有效链的情况。

  总结

  随着区块链技术的不断发展,人们对技术上的需求也越来越高,正如现在的区块链已经不是当初只是人人谈概念的阶段,出现相应的问题,都在不断的探索和求解。就像双花问题的发生,能通过时间戳来解决,同样,在发展阶段中出现的任何漏洞,都会找到合适的解决方案。

双花攻击

很赞哦! ()

    股票