トークンエコノミーとITコンサルタント

旧帝大大学院卒業後、SIerからコンサルに転身した筆者が、トークンエコノミー、暗号通貨、構成技術やプロトコルについて学ぶブログになりました。最新の暗号通貨レポートの翻訳、ソースコードの解説、技術動向、週次レポート、など。特に、データ活用ビジネスの分界点・テクノロジー、資産価値を運用するテクノロジーも含めて書いていきます。

暗号通貨が安全・安心に普及していくための構成技術①〜トランザクション展性対策

今日はMt.Gox事件で攻撃にあったとされるトランザクション展性という脆弱性とその対策について紹介する。

1.なぜ暗号通貨の脆弱性を理解する必要があるのか

今後暗号通貨やトークンエコノミーの普及に関わっていく者としては、
それらに関わる人たちのリテラシーを少しでも向上させたいと思っています。
世の中には、あくまで投資として「トークンを利用する側」のリテラシー向上を目的とした記事は、コールドウォレットに関する記事など
多くの記事で書かれています。

しかし、「トークンを発行する側」の発行主体側のセキュリティポリシーがもっと上がらなければ、トークンエコノミー自体は普及しないでしょう。


そこで考えたのが、実際に各取引所やICOトークン発行主体のホワイトペーパーにきちんとそれらが考慮されているのかを
正しく理解できる一助となる記事を書くことにしました。


もちろん発行主体はそれらを考慮して新しいトークンを発行することになるので、参考になるかと思うが、
発行主体のリテラシーを精査・監査して投機を行う決断をするのは、最後は利用者です。

利用者側でも取引所やトークンの技術的なセキュリティ対策を理解することで、万が一のリスクが発生した際に
リスクを回避できるのではないかと思いポイントをまとめた記事を紹介します。

まず第一回は、かの有名なビットコインの不正送金事件、Mt.Gox事件で攻撃にあったとされるトランザクション展性という脆弱性についてまとめてみる。



1.なぜ暗号通貨の脆弱性を理解する必要があるのか
2.トランザクション展性とは
3.取引所・ビットコインの対応
4.今後のリスクと課題


2.トランザクション展性とは

結論からまず申し上げるとMt.Gox事件起こっていたと噂されるのは、特定のトランザクション(送信履歴)が改ざんされるという事象です。
※世界中の専門家が調査した結果、実際の不正送金に直接は関係がなく、クラッキングの調査の撹乱に利用されたという説が多い

まず、その事象を理解するためにビットコイントランザクション(送金履歴)の台帳管理を理解する必要があるので、まずその説明から始める。

ビットコインブロックチェーンの技術を利用して、各送金先や送金金額といった内容を、webを介して世界中のノードに送信し、
みなで分散管理している。

もう少し具体的に書くと

①任意の時間に、送信者はトランザクション(送金履歴)を生成
②送信者はトランザクションの内容をビットコインのネットワーク(ノード群)に送信
③受け取ったノード群はトランザクションを遡り、送金先や送金内容に改ざんや不正がないかを検証
④検証後、トランザクションの承認(マイニング)を行い、承認後、トランザクションIDを生成
⑤ノード群に新しく承認されたトランザクションを送信

という流れである。


本来は「④」のトランザクションIDを生成した結果がすべてのノードで同じになるはずだが、
トランザクション展性という脆弱性を攻撃されると、トランザクションIDが別のノードと異なったまま
承認されるという脆弱性
があるとされている。

では、実際どのような影響があるのか。

トランザクション展性の影響を事実ベースで説明するなら、
「特定の送金履歴がビットコインのネットワーク上のノード間で不整合が発生する」ということである。

具体的になにが起こるの?という点で言えば
・再度送金ができない
・残高の確認がとれない
・コインが紛失する

などなどといった事象が発生する可能性がある
ただし、不正な送金先や金額にした場合は発覚するので
誰にいくら送ったというような、送金履歴を変えることはできない。
③で、送信履歴自体は署名によってノードでチェックしているので、トランザクションとして承認されることはないため不整合は発生しない。

3.取引所・ビットコインの対応

対策は簡単な話で、トランザクションIDを生成する情報も署名で守られた情報に限ればよい。
すでにビットコインの仕様は変更されているので、取引所やノードで実装していれば問題がない。

4.今後のリスクと課題

発行主体としては送金エラーや紛失することでユーザが減り、トークンの流通量が減ることは避けたいと思うので、
脆弱性の対策は実施する方向だろう。

主要コインかつMt.Goxで白羽の矢がたったビットコインは2014年3月頃にすでに改善提案を実施している。
https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki
ただし、Segwitの実装の課題でも共通するが、実装するのは扱い取引所等なので、実装後に仕様変更を伴わないように
発行主体側はあらかじめ対処しておくことが重要である。

bitFlyer ビットコインを始めるなら安心・安全な取引所で