orangeitems’s diary

クラウドではたらくエンジニアの日々の感想です。

Zaif流出事件に関係するIPアドレスを特定した件の解釈

f:id:orangeitems:20181105215010j:plain

 

Zaif流出事件に関係するIPアドレスを特定した記事

2018年9月に発生した仮想通貨取引所Zaifから仮想通貨が盗難された事件で、ホワイトハッカーが犯人特定につながるIPアドレスを特定した、と報道されている件について少しモヤモヤするので記事にしておきます。

 

www.asahi.com

大手仮想通貨交換サイト「Zaif(ザイフ)」で9月、約70億円の仮想通貨がハッキングにより盗まれた事件で、犯人が送金の際に接続したインターネットの発信元IPアドレス(ネット上の住所)の特定に、ネット上の有志でつくるホワイトハッカーが成功していたことがわかった。

 

この作業の中心となった、ジャパン・デジタル・デザイン社にはその技術的な概要が記載されています。

 

www.japan-d2.com

JDDは、セキュリティ専門家とともに2018年9月に発生した仮想通貨交換所ZaifのMonacoin流出に対し、同トランザクションの発信元に対する監視を実施中。当該Monacoinが10月20日から移動を開始したことから、該当するトランザクション5件の発信元を推定、当該トランザクション発信元の特徴について、関係当局に情報提供しました。

 

はてなブックマークやTwitterなどを見る限り、ネットの反応は大変好意的で、これで犯人が特定されるのではと盛り上がっている状況のように見受けられます。

 

モヤモヤすること

他人の資産を盗難しせしめることは一方的に悪いです。

この前提のもと、気になる点があります。

一般に流通する仮想通貨システムはブロックチェーンを応用しています。その仮想通貨システムに参加する全ノードが台帳を共有しすべての取引記録を保管することで取引の信頼性を担保します。いろんな仮想通貨があり、技術的に差分はありますが、パブリックな仮想通貨はこの仕組みと言えます。

この台帳においては、どの口座からどの口座へいくら移されたかということが全て書いてあります。ところが「誰が持っている口座か」ということは書かれていません。もし特定できるのでしたら誰も仮想通貨など使わないでしょう。銀行口座の通帳を誰でものぞける状態になっているとすれば、誰も銀行など使いません。自身の口座情報や自身の取引が秘匿されながら、全口座の取引情報が公開されているという半ば矛盾したこのアーキテクチャーこそ仮想通貨の肝だと思います。

今回の調査の方法は、上記記事によればノードであるmonacoindを改変し、ノードが取引を処理する際にMQTTにてIPアドレスをログする仕組みだそうです。monacoindのソースコードはgithubにて公開されており、コンパイルから実行まで方法は公開されています。

 

blog.katsubemakito.net

 

この手順だけなら私でもできそうです。ソースコードがあるということは、ソースコードが読める人であれば改変することは不可能ではないということになります。もちろん、これを完全に読むのは相当に技術と工数がないとできないとは思いますが。

そして、最もモヤモヤするのは、改変した結果、本来秘匿されるべき取引においてIPアドレスという個人にひもづく情報が割り出されてしまったことです。

仮想通貨は、非中央集権型と言って、政府や銀行など特定の運営者が介在せず、参加者でその健全性を保つというのが大前提でした。今回、参加者の一部が「その気になれば」取引にひもづくIPアドレスが入手できるということが明らかになってしまいました。

ホワイトハッカーという言葉にて、正義の味方のようなビジョンが先行しているように思いますが、同様のことを違う目的で実施している存在がいたとしたらどうでしょうか。例えば、警察等の関係者が、捜査目的で取引のIPアドレスを調べられるようになっていたら、その時点で、非中央集権型の前提は大きく崩れてしまいます。また、何らかの悪しき理由でIPアドレスを入手したい目的が今後できるかもしれません。

今回のこの手法で、重要なIPアドレスが入手できたのかもしれませんが、手法自体も同時に有名になってしまったことにより、仮想通貨のアーキテクチャーの大前提である取引の秘匿性が棄損してしまったような気がしてなりません。

もし仮想通貨の世界が、多発する盗難を防ぐべく、特権者による監査機能(今回のようなIPアドレスの入手等)を実装するならば、それはもう中央集権型そのものであると思います。それを否定するのであれば、今回のような形でノードのソースコードを改変しながらも、取引ができてしまう時点で仮想通貨の脆弱性と言わざるを得ません。

第三者がノードを改変したらIPアドレスを入手できるという今回の事実が大前提で、それでは今後仮想通貨はどんなビジョンを持って、パブリックに受け入れられようとするのでしょう。私には今回の事実を持って、短期的には特定のホワイトハッカーが参加者の中で何らかの特権を持ってしまった気がしてなりません。今後事件が起こるたびに、ホワイトハッカーが警察機能として、IPアドレスを発見しにいこうとするのであれば、もはや仮想通貨の目指した世界は理想とはかけ離れてしまうのではないでしょうか。

 

余談

こういう話を考えると、不特定の参加者からなるブロックチェーンネットワークには限界があると思います。確かに、ブロックチェーン関連の講演を聞くと、今はパブリック型よりも、特定の事業者やステークホルダーのみが参加しているクローズドなネットワークを構築するプライベート型のほうが成功すると聞いています。

 

www.ibm.com

パブリック性が高いのがブロックチェーンのメリットですが、誰かがイニシアチブを取らなければならないという課題矛盾があります。真の意味での分散型ネットワークを実現するには、こうした課題を認識し、全体の枠組みを整理して、関係者間で議論を透明化し、時間をかけて合意を生み出すことが大事です。

 

今回の件、かなりモヤモヤしてしまったのでまとめておきました。個人的な意見ですのでご了承ください。