比特币确实是最安全的加密货币。它在协议的多个级别提供安全性。它经常呈现持续复杂的攻击。在本节中,我们将了解在比特币系统中的一些可能的攻击类型。
Sybil攻击发生在点对点网络中。恶意攻击者希望对比特币网络进行此攻击。在这种情况下,网络中的节点同时运行多个身份并破坏信誉系统中的权限。其主要目的是在网络中获得大部分影响力,以在系统中执行非法行为。
Sybil攻击难以检测和预防,但以下措施可能有用:
竞赛攻击要求收件人接受未经证实的交易作为付款。作为攻击者,您可以使用两台不同的计算机将相同的硬币发送给不同的供应商。如果供应商在没有等待块确认的情况下交付东西,他们很快就会意识到在挖掘过程中交易被拒绝了。解决方案是供应商必须在发送之前等待至少一个块确认。
当攻击者与受害者节点直接连接时,此攻击更容易实现。因此,建议关闭用于接收付款的节点的传入连接,以便您的节点识别自己的同行,并且不允许付款人直接向付款人提交付款。
芬尼攻击(Finney attack)以哈尔芬尼的名字命名。芬尼攻击是双重支出的类型之一。在这种情况下,攻击者是正常开采拦截的矿工。在该区块中包括一项交易,该交易将他的一些硬币发回给自己而不广播该交易。当他找到预先开采的区块时,会在第二次交易中发送相同的比特币。第二笔交易将被其他矿工拒绝,但这需要一些时间。为防止此类攻击,卖方应在发货前等待至少六次确认。
Vector76攻击是竞赛攻击和芬尼攻击的组合,因此即使有一个确认的交易仍然可以被撤销。矿工创建两个节点,其中一个节点连接到交换节点,另一个节点连接到区块链网络中连接良好的对等节点。现在,矿工创建了两个交易,一个是高价值,一个是低价值。然后,攻击者将高价值交易预先挖掘到交换服务。当块被宣布时,他会快速将预先挖掘的块发送到交换服务。当Exchange服务确认高价值交易时,受损的攻击者会向区块链网络发送一个低价值的交易,最终拒绝高价值交易。攻击的结果将损坏的攻击者的帐户存入高价值交易的金额。可以通过禁用传入连接并仅连接到连接良好的节点来保护此攻击。
对区块链网络的51%攻击通常是比特币,是指矿工或一组矿工试图控制超过50%的网络挖掘能力,计算能力或哈希率。在此攻击中,攻击者可以阻止新事务发生或被确认。他们还可以撤销在他们控制网络时已经确认的交易,从而导致双重支出问题。
当矿工形成有效的交易块时,该个人将该块广播给网络上的其他矿工。只有当块中的所有事务都根据区块链上的现有记录有效时,才能接受它。但是,具有超过网络哈希率的50%的损坏的 minor 不会向网络的其余部分广播解决方案。这导致形成两个版本的区块链的情况。其中一个是区块链的公共版本,其后是合法的矿工,以及腐败矿工使用的第二个区块链,他们没有将其广播到网络的其余部分。
这种类型的攻击是虚构的,因为获得具有整个网络50%以上计算能力的计算能力是昂贵的。