二重支払い攻撃に対する ZenCash の見解
最終更新:6月9日 午前 3時 01分 (日本時間)
ZenCash ネットワークに対し、日本時間の 6 月 3 日 11 時 43 分 (6 月 3 日 2 時 43 分, UTC) ごろ、「51%攻撃」が仕掛けられました。Zen チームは直ちに措置を取り、ネットワークへの攻撃に必要な難易度を大幅に高めました。
一連の流れ(日本時間にて表示)
- 6/3 (9:26) – マイニングプール運営者の一人が、攻撃が仕掛けられている可能性に関して警告
- 6/3 (9:34) – 即座に調査を開始し、ハッシュパワー分配の様子を精査
- 6/3 同時に、各種取引所に対し確認数の増加を要請
- 6/3 (9:42) – 調査の結果、二重支払いが行われていたことが発覚
- 6/3 〜 現在(進行中) – さらなる原因解明にあたると同時に、問題が発生した取引所とともに調査を実行中
- 6/3 (22:00) – 攻撃に関し、本記事にて公式発表を行う (最新情報がわかり次第更新中)
- 6/5 (0:50) – 調査により判明した新たな情報を発表
- 6/6 (22:46) – 共同設立者である Rob Viglione が、事件に関する見解を発表。事件に対する様々な誤解に関しても、説明を行う。
今までに発生した出来事:
- マイニングプール運営者の一人が、攻撃が仕掛けられている可能性に関して警告
- 即座に調査を開始し、ハッシュパワー分配の様子を精査
- 同時に、各種取引所に対し確認数の増加を要請
- 調査の結果、二重支払いが行われていたことが発覚
- 現在進行中: さらなる原因解明にあたると同時に、問題が発生した取引所とともに調査を実行中
51% 攻撃 あるいは 二重支払い とは、分散型でパブリックなブロックチェーン全てにとって主要なリスクのうちの一つです。ZenCash は Equihash というアルゴリズムを基盤としたブロックチェーンに依拠しており、Equihash に対応した大量のマイニングパワーに日々晒されています。ここにおいて、短期的な対応策として最も有効なのは、全ての取引所において各トランザクションの必要確認数を最低でも 100 とすることです。
現時点でわかっていること
攻撃発生時点においては、Zen ネットワークのハッシュレートは 58MSol/s となっていました。ハッカーにおいては、攻撃を行うのに十分なハッシュパワーを自ら保持していたり、これをレンタルするなどして攻撃を行なった可能性があります。なお、ネットのハッシュレートは最後に採掘されたブロックから導出されるため、リアルタイムでのハッシュレートは不明となっています。
問題のマイニングプールアドレスは znkMXdwwxvPp9jNoSjukAbBHjCShQ8ZaLib
であると考えられ、ブロック 318165 とブロック318275 の間にハッカーは複数回ブロックの巻き戻しを行なっており、最長で 38 ブロックの巻き戻しに成功しました。なお、二重支払い攻撃が行われたのは、ブロック 318204 およびブロック318234 においてでした。
注:Bittrex に関しては、攻撃前の段階でトランザクション必要確認数が 150 と設定されていたため、今回の攻撃の対象とはなりえませんでした。
最初の二重支払い: 3,317.4 ZEN (新たに発見された二重支払いに関するデータ)
孤立トランザクション
https://explorer.horizen.io/tx/e3a232af6d1175ad061b95f9bc12898fa22d6adcb2e9fdc9f45a2ff6711e5f93
孤立トランザクションが含まれている孤立ブロック
https://explorer.horizen.io/block/000000006fbe8353edc35b8d3a08ae60f689b92a5493f59995ccd1f0209bda29
二重支払いトランザクション
https://explorer.horizen.io/tx/cb072b3755547362b26fa32992380528d4f5f25b63d24bb50466a733b8edd513
二重支払いトランザクションが含まれているブロック
https://explorer.horizen.io/block/00000000245571c7c62059b7bf951c613c6d733242ead752767dc6e632a80128
二度目の二重支払い: 6,600 ZEN (以前はこれが最初の二重支払いと考えられていました)
孤立トランザクション
https://explorer.horizen.io/tx/574255141dd0b7c89e339e96ff46af818dcb298311ec13660eaf621d5b8f4f84
孤立トランザクションが含まれている孤立ブロック
https://explorer.horizen.io/block/000000006be2c36df986223a4d37a520d1028e0db85db9277d9b14e811d243f3
二重支払いトランザクション
https://explorer.horizen.io/tx/60b6555144530a0dce591ad7121a99464454821a25bb2ae3464c2ea6d2274003
二重支払いトランザクションが含まれているブロック
https://explorer.horizen.io/block/000000002e501b0a74eeae80091eddea52c8cd0f677f6de13abe0420af8397d9
三度目の二重支払い: 13,000 ZEN (以前はこれが二度目の二重支払いと考えられていました)
孤立トランザクション
https://explorer.horizen.io/tx/1fdca015076dc3578a06f0cee0a6b97f9993a129bb4559289c94a56e5ea618cf
孤立トランザクションが含まれている孤立ブロック
https://explorer.horizen.io/block/00000000129b387f2980e70a8c7ba90eda0bb674a2cd197a0edb1aefa723f62c
二重支払いトランザクション
https://explorer.horizen.io/tx/17c14153004c701b4986fa1368fb9b2711953723d696258f451786b91c8dfa46
二重支払いトランザクションが含まれているブロック
https://explorer.horizen.io/block/000000003b6cc6af447c4a422dd41b306211f9fc2990c744bae55c42df2a3b28
ここにおいて、ハッカーが取引所において用いた預け入れのためのアドレスは zneDDN3aNebJUnAJ9DoQFys7ZuCKBNRQ115
であると考えられます。
資産は安全か?
確認数を 100 に増加させることにより、51%攻撃が起こる可能性はかなり少なくなります。とはいうものの、取引所プラットフォームのセキュリティに関して不安があるという場合は、取引所に直接お問い合わせください。暗号通貨の保管に関しては、Ledger Nano S やペーパーウォレットといったコールドストレージを用いることにより、みなさん自らが資産をコントロールすることを ZenCash は推奨しています。
Zen チームは引き続きユーザーの皆様の資産のセキュリティ保全に取り組んでいきます。なお、セキュリティに関する具体的な疑問に関しては、直接取引所にご連絡ください。ZenCash はまた、タイムリーなカスタマーサービスを提供していくことに努め、本件に関する新たな情報が分かり次第、コミュニティに対してこれをお伝えしていきます。