二重支払いとは、同じデジタル通貨が二重に支払われるリスクのことです。同じ通貨を違う取引にそれぞれ使用できてしまうと、通貨としての信頼性が無いにも等しくなってしまうという問題点があります。
これは当初、ビットコインにおいて特に懸念されていました。ビットコインは分散型の通貨であり、同じコインが2回以上使われたかどうかを確認する中央機関が存在しないためです。そこでビットコインは、ブロックチェーンとコンセンサスアルゴリズムのPoWを導入して各トランザクションの信頼性を検証することで、二重支払いを防ぎました。
ハッカーはこれを回避するためにさまざまな策略を用意しましたが、限られた成功しか収めていません。むしろこれまでに起きたビットコインの盗難のほとんどは、ユーザーが適切な安全対策を講じずにビットコインを保管したことが原因でした。
二重支払いの最大のリスクは51%攻撃です。攻撃者がブロックチェーンネットワークにおける過半数のコンピューティングパワーを制御している場合、最初に発生したトランザクションをなかったことのようにブロックチェーンに記録できるため、同じビットコインを複数回にわたって送金できるようになってしまいます。