コインチェックからのNEM流出、なぜ安全対策が遅れたのか

コインチェックの記者会見は深夜にも関わらず多くの記者が駆け付けた(撮影:筆者)

2018年1月26日深夜、仮想通貨取引所のコインチェックが記者会見を行い、顧客から預かっていた時価580億円分の仮想通貨NEMを流出させたと発表した。原因は調査中だが不正アクセスによる盗難の公算が大きい。翌日には被害者の26万人に対して自己資金から日本円で補償すると発表、記者発表から補償の発表までの加重平均で総額460億円に達するという。

仮想通貨取引所を巡っては2014年2月末にマウントゴックスが破綻したことが記憶に新しい。昨年12月には韓国の仮想通貨取引所ユービットの運営会社が経営破綻に追い込まれ、今年に入ってからも仮想通貨取引所ZaifからのAPIを通じた不正出金が報じられるなど、このところ仮想通貨取引所を標的としたサイバー攻撃が続いていた。

マルチシグとコールドウォレットは併用してこそ価値が出る

コインチェックのシステムで十分なセキュリティ対策が行われていたか、現時点で公表されている事実は断片的だ。26日深夜の記者会見の質疑では入出金に複数の鍵を必要とする「マルチシグ」を利用しておらず単独の鍵で入出金できたこと、盗まれたNEMが全てオンライン上で入出金できるホットウォレットで管理されていたことが明らかとなった。

Cryptonewsの報道によると仮想通貨NEMの規格を管理するNEM財団のLon Wong氏は、仮想通貨NEM自体には問題がなく、コインチェックがNEM財団の勧告していたマルチシグを利用していなかったことから、コインチェックの被害救済のためにNEMの仕様を見直す予定はないとしている。NEM財団は17年7月にマルチシグを実現するXEMSignと呼ばれるスマートコントラクト・アプリケーションをブログで紹介していた。

マルチシグでウォレットの管理に複数の鍵を使うことは危険を分散する上で効果がある。しかしながら2つ以上の鍵を同じように管理してしまうと、鍵をいくつに分けたところで意味がない。実際にマルチシグウォレットから仮想通貨が盗まれる事故は過去に数多く起こっている。

マルチシグを使って意味があるのは、2つ以上の鍵を異なる方法で管理している場合だ。例えば片方の鍵をデータセンター内にあるサーバー上のセキュアな領域に保存し、もう片方の鍵はハードウェアウォレットにしまって金庫に入れておけば、サーバーに不正アクセスすると同時に、金庫にあるハードウェアウォレットを物理的に盗まない限り仮想通貨を動かすことはできない。コールドウォレットとマルチシグは両方を併用してこそ価値が高まる。

コインチェックのホームページではビットコインをコールドウォレットで管理することを売りにしており、同社が保有する仮想通貨のうち流動しない分を安全に保管するために、秘密鍵をインターネットから完全に物理的に隔離された状態で保管することの重要性を理解していたことは明らかだ。記者会見でもNEMのコールドウォレット対応には開発着手していたものの間に合わなかったとしている。

NEMに対応したハードウェアウォレットは登場したばかり

仮想通貨をオフラインで安全に保存するコールドウォレットの実装方法としては、ハードウェアウォレットとペーパーウォレットがある。ハードウェアウォレットはデバイス内に秘密鍵を閉じ込めておくため鍵の物理的な漏洩に強いが、機器が壊れてしまうリスクがあるため長期保存には向いていない。ペーパーウォレットはキーペアを紙に印刷するため印刷や読み取りに手間が必要で複写によって簡単に漏洩してしまうリスクがあるものの長期保存には向いている。

日々の運用でホットウォレットからコールドウォレットに資金を移し替える手間や、秘密鍵の漏洩リスクを考えると、取引所で日常的に仮想通貨を移し替えるコールドウォレットとしては、ペーパーウォレットよりはハードウェアウォレットが適していると考えられる。

広く普及しているBitcoinやEthereumといった仮想通貨では公開鍵暗号にSecp256k1と呼ばれるECDSA(楕円曲線署名アルゴリズム)が利用されており、この方式に対応したハードウェアウォレットは数多く市販されている。しかしながらNEMではEd25519と呼ばれる、2011年に論文発表された高速なEdDSA(エドワーズ曲線デジタル署名アルゴリズム)が採用された。このNEMに対応したハードウェアウォレットは昨年12月20日にTREZORのファームウェア・アップデートでアナウンスされたばかりだ。

TREZORは多数の仮想通貨に対応した人気のハードウェアウォレットだが、金融機関で暗号を扱うセキュリティデバイスに求められる耐タンパー性を備えておらず、ISO 15408やFIPS 140といった第三者によるセキュリティ認証も取得していない。実際に2017年8月にはTREZORから秘密鍵を抜き出す手順が公表された。記事の追記によるとCTOのPavol “Stick” Rusnak氏は課題の修正に取り組んでいるとされているが、記事執筆時点でアナウンスは行われていない。一般的にサイドチャネル攻撃などハードウェアに対する攻撃を、後からファームウェアの更新で解決することは難しいと考えられる。

コインチェックがコールドウォレットの必要を理解していたにも関わらず、NEMを全てホットウォレット上に置いていた背景としては、NEMをコールドウォレットで安全に運用するためのエンジニアに加えて、機材や環境が整っていなかったのではないか。

利用者に落ち度はなかったのか

ではコインチェックの利用者にとって被害を事前に防ぐ手立てはあったのだろうか。まず多額のNEMを取引所には預けたままにせず、手元に引き出して、自分のハードウェアウォレットで管理していれば、不正アクセスの被害を受けずに済んだ。これはマウントゴックス事件のときにもいわれてきたことだ。

利用者は他の仮想通貨への投機機会を逃さないためや、現金化のタイミングを見計らうために仮想通貨を取引所に預けていたのかも知れない。しかしながら仮想通貨取引所の口座や、取引所そのものが不正アクセスに遭う事案は、世界中で数多く報じられている。利用者が仮想通貨を取引所に預けたままにしておくことはオンラインで不正に引き出される可能性がある点で、取引所が仮想通貨をホットウォレットに置くのと似たようなリスクを孕んでいる。

消費者庁は昨年9月「仮想通貨交換業者は金融庁・財務局への登録が必要です。利用する際は登録を受けた事業者か金融庁・財務局のホーム ページで確認してください。」と呼びかけていた。コインチェックは執筆時点で金融庁・財務局に登録されていない。記者会見ではコインチェックの経営の優先順位に厳しい質問が相次いだが、数ある取引所の中でコインチェックを選んだ利用者は、高いセキュリティや金融庁によるお墨付きよりも、軽快な操作性や取り扱う仮想通貨の銘柄の多さ、より多くの投機機会を求めており、取引所は素直に利用者からのニーズに応えようとしたのだろう。そうした点で今回の事故は、起こるべくして起こったともいえる。

コインチェックにとってこれからが正念場

コインチェックが流出したNEMの保有者に対して補償を発表したことで事態は収束したかに見えるが実際に大変なのはこれからだ。まず26万人に対して460億円を補償するのは事務手続きだけでも膨大な作業となる。補償の発表を受けてNEMの価格は急反発しており、暴落時の時価を日本円で補償するだけでは納得しない利用者も出てくるのではないか。

取引所を再開するためにはNEM流出の原因を突き止め再発防止策を講じる必要がある。不正アクセスであれ内部犯行であれ、原因を究明して再発防止策を講じるには、トリアージと応急処置だけで数週間、本格的な再発防止には最低でも数か月は要するだろう。

そこにタイムリミットとして立ちはだかるのは仮想通貨交換業者の登録だ。コインチェックは昨年9月に関東財務局に仮想通貨交換業者の登録を申請したと発表しているが、執筆時点でまだ登録は認められておらず、現在は「みなし仮想通貨交換業者」として運営されている。金融庁の幹部が「今回の一件を踏まえ、いっそう慎重に審査する」とコメントしたとも報じられており、登録へ向けたハードルは更に上がった。資金決済法の仮想通貨交換業者の登録は、仮想通貨取引所を運営し続けるために必要だが、NEM流出の原因を究明し、再発防止策を講じることは最低限必要な条件となる。

加えて仮想通貨に対する不安を払拭するためには、金融機関やクレジットカードと同様に安全対策に係る体系的な業界自主基準を定める必要がある。世界中で仮想通貨取引所がサイバー攻撃の標的となる中で、コインチェック個社の問題ではなく業界全体として喫緊に取り組む必要があるだろう。