1. TOP>
  2. ブロックチェーン
  3. 仮想通貨は安全!?ブロックチェーンはハッキングされないのになぜコインチェックからXEMが流出したのか

仮想通貨は安全!?ブロックチェーンはハッキングされないのになぜコインチェックからXEMが流出したのか

  • feedy

仮想通貨の話をするとき、その安全性が議論になることは多い。「ブロックチェーンはハッキングされない」とはよく聞くが、ではなぜコインチェックを始めとする仮想通貨取引所からコインが盗まれるのだろうか。この記事では、気になるブロックチェーンとセキュリティ、そしてハッキングという問題について、ホワイトハッカーへの取材を絡めながら、問題の本質に迫りたい。

インターネットは暗号化技術で守られている

インターネットは暗号化技術によって支えられていると言っても過言ではない。我々一般人が使用する際はそれほど意識することはないが、実際にはネット通信の裏側では様々な暗号化技術が使われている。

Photo on Visual hunt

暗号化技術=セキュリティ

では暗号化によるセキュリティとは何を指すのだろうか?
もちろん、ウイルス対策ソフトのように、脅威に対する対抗策として施すセキュリティもあるが、暗号化技術はそもそものインフラとしてインターネットに取り入れられ、ネット通信そのものをセキュアなものにしている。

HTTPS通信

我々の通信は全て様々な暗号化技術によって暗号化され、第三者が閲覧できないようになっている。ネットショッピングやオンラインバンキングを行う際にURLバーに鍵マークを見ることは多いだろう。これも暗号通信の一つだ。
最近ではGoogleも、SSL/TLSプロトコルと呼ばれる暗号通信規格を標準採用したHTTPS通信(Hypertext Transfer Protocol Secure)をデフォルトで採用し、各ウェブサイト作成者にHTTPSへの移行を促している。

もし暗号化技術がなかったら、我々の通信は全て第三者に筒抜けとなり、個人情報が守られないどころか、パスワードやアカウント情報も公になってしまう。

このように、インターネットの安全性を支えているのは暗号化技術だと言える。故に、仮想通貨のことをクリプトカレンシー(Crypto Currency:暗号通貨)と呼ぶとき、暗号という言葉はなんとも地味に聞こえるかもしれないが、この言葉はブロックチェーンの安全性を示す上で大きな意味を持っている。

100年前から存在する暗号化技術

暗号化技術と言うと何やら新しそうな響きがあるが、暗号化という行為そのものは第二次世界大戦でも広く用いられていた。ナチスドイツの暗号機であるエニグマは有名で、同機は1918年に開発され、第二次世界大戦においてナチスの主要な暗号通信手段として用いられた。

Photo credit: fernand0 on Visualhunt / CC BY-SA

エニグマの機構は複雑だが行程自体はシンプルで、タイプライターのような形をした暗号機に文字を打ち込む。すると機械内の機構により暗号文が生成され、その暗号文をモールス信号等で受信者へと送信する。受信者は暗号文を自身の暗号機にタイプすることで、元の文章が得られるという仕組みだ。ただしこの時、暗号機の初期設定(3つのアルファベット)を送信者と受信者で同じものに設定する必要があり、これがいわばパスワードだと言える。
連合国軍はこのエニグマ解読に全力を挙げ、解読用の計算機を開発したが、実はこれがコンピューター誕生のきっかけでもあった。

Photo credit: TNMOC on Visual hunt / CC BY

暗号技術のメーリングリストから生まれたビットコイン

技術的な観点から見ると、通信という概念及びインターネットは、暗号技術によって守られている。”暗号通貨”と呼ばれるビットコインが、2008年当時、暗号技術を議論する「クリプトグラフィー」という名のメーリングリストで初めて発表されたのも頷けるだろう。

ビットコインは、P2Pと呼ばれるサーバーを介さない通信方式に、各通信を第三者が証明できるブロックチェーンという仕組みを掛け合わせ、これをハッキングできないように暗号化技術(公開鍵暗号)を組み合わせた世界初の自律的通貨だ。もっとも、P2P、ブロックチェーンといった技術は、その原理は決して新しいものではなく、ナカモトサトシはこれらをうまく組み合わせたわけだ。しかしそこに、全てをセキュアに実行する上での暗号化技術は不可欠であった。その際選ばれたのが、公開鍵暗号と呼ばれる方式だ。これにより、誰も管理しないビットコインのエコシステムに安全性が担保されたため、仮想通貨は英語でクリプトカレンシー(暗号通貨)と呼ばれる。

公開鍵暗号とは

ちなみに公開鍵暗号とは、ビットコインを始めとしたブロックチェーン全般において用いられている暗号方式だが、その仕組みはエニグマを考えるとわかりやすい。
公開鍵暗号では、ある文章を暗号化したいとき、いくつもの暗号関数に掛けてこれを変換する。これは、エニグマが機械内の複雑に絡み合った歯車機構で入力文を暗号化したのに似ている。エニグマではこの暗号文を解く際は、入力に使った暗号機と同じ初期値(アルファべット3文字を歯車で合わせる)を設定する必要があるが、公開鍵暗号ではこれが秘密鍵にあたる。秘密鍵とはいわばパスワードのようなもので、暗号化した本人しか持っていない。これをハッキングすることは、現代のコンピューター技術では不可能だと言われている。

ブロックチェーンに使われているこの公開鍵暗号は、私たちに馴染み深い”ユーザーIDとパスワード”という組み合わせのセキュリティよりも何千倍も安全だと言われる。その理由は、公開鍵暗号におけるパスワードたる”秘密鍵”は、複数回に渡って暗号化関数により変換され、そこからユーザーIDにあたる”公開鍵”が導かれるため、”公開鍵”から秘密鍵を逆算するには、例えスーパーコンピューターを使っても何千年、何億年という時間がかかるからだ。
(対して、あなたがよく使う8桁のパスワードは僅か数十秒で破られてしまうことをご存知だろうか?)

従ってブロックチェーンでは、秘密鍵そのものがあなたの保管場所(金庫かもしれないし、PC内のメモ帳かもしれない)から盗まれない限り、事実上ハッキングされることは現時点では有り得ないと言われる。
これが、ブロックチェーンが従来のサーバーによるデータ保管に比べて安全であると言われる所以だ。

ではなぜコインチェックのXEMは盗難にあったのだろうか?

ブロックチェーンではなく、コインチェックがハックされた

答えは簡単で、NEMのブロックチェーンがハッキングされたのではなく、コインチェック内のシステムがハッキングされ、コインチェックが保管していたNEMの秘密鍵が盗まれたからだ。
そう、つまり、ブロックチェーンそのものは安全でも、パスワードたる秘密鍵を正しく管理しないと、その秘密鍵が盗まれればブロックチェーン内のデータは自由に抜き取られてしまう。秘密鍵をいかに保管するかが重要で、この部分のセキュリティを怠ると元も子もない。

この状況に対して、一般ユーザーでも秘密鍵を安全に管理できるよう、様々な方策が考案されている。スマートフォンに秘密鍵を保存し、ユーザーや外部からのハッカーが触れられないようにするモバイルウォレットや、秘密鍵をインターネットから遮断してUSBに保管するハードウェアウォレット等もその一つだ。

Photo credit: wuestenigel on Visual hunt / CC BY

今仮想通貨では、ブロックチェーンそのものの安全性ではなく、ブロックチェーン周辺のセキュリティをいかに強化するかが課題となっている。(この部分については、VentureTimesでも度々取材しているJupiterによる提言が参考になる)

では、セキュリティやハッキングの専門家とも言える、“ホワイトハッカー”は、一連のセキュリティ問題をどのように考えているのだろうか。筆者はとある海外のホワイトハッカーに取材する機会を得た。以下は彼から教えてもらったセキュリティの実情である。尚、A氏という仮名で呼ばせていただくことをお許しいただきたい。

ホワイトハッカーにインタビュー

1月に発生したコインチェックのNEM流出事件だが、この事件はどういったハッキングだったのか?
NEM流出事件は、当然ながらNEMのブロックチェーンがハッキングされたわけではなく、コインチェックの自社システムに保管されていた秘密鍵が盗まれたというものだ。この時コインチェックは、秘密鍵をオフライン管理していなかったため、ハッキングが容易だった。また、マルチシグを実装していなかったため、一つの秘密鍵が盗まれると対象となるNEM全てが盗める状態となっていた。

盗まれたNEMは追跡可能なのか?

では、盗まれたNEMは追跡可能なのだろうか?一般的に仮想通貨はブロックチェーンで全ての履歴が公開されているため、送金の履歴も追跡可能なのが特徴だ。上述のハッカーは次のように語る。

A氏:
「仮想通貨の追跡自体は簡単にできる。アドレスを追うようプログラムを書けば、簡単に自動追跡が可能。ただし問題は、追跡できるのはアドレスだけで、そのアドレスの所有者が誰なのかまでは当然わからない。そのため、例えば取引所等、どこかのタイミングでKYCが実施されていることが重要となる。」

では、NEMが他の通貨に換金された場合はどうなるのだろうか?

A氏:
「例えばNEMがビットコインに換えられた場合は、そこからはビットコインを追跡すれば良いので、そのように通貨をシフトすれば追跡は続けられる。今回のNEMはおそらく、ダークウェブの取引所で他の通貨に交換されるところまでは追跡されていたようだが、その先まで追跡されているのかは分からない。」

ここで気になるワードが出て来る。ダークウェブとは何なのだろうか?

ダークウェブとは?

A氏:
「ダークウェブとは、Torブラウザを介してIPアドレスをわからなくした状態で使うウェブ空間の総称。誰でも使うことができるが、一般の人が使うことはないと思う。実は私も使ったことはない。ダークウェブでは、ビットコインやモネロー等、仮想通貨は頻繁に取引されている。」

ダークウェブは、その存在自体が危険そうだが、エンジニアという視点からはどう映るのだろうか。

A氏:
「エンジニアやプログラマーの考え方としては、技術的に可能なことはやっちゃって当然、という思考があるので、ダークウェブが存在するのもそれが技術的に可能である以上、仕方のないことだと思う。なくなることはないだろう。とは言え、NEMの流出事件等を考えると、社会にとって脅威ともなり得ると思う。」

最終的に、コインチェックから盗難されたNEMは追跡しきることができるのだろうか?

A氏:
「NEMの追跡は結構時間がかかると思う。マウントゴックスから流出したビットコインを追跡するのにも、何年もの時間がかかった。今回も、根気強くやる人がいてはじめて、最後まで追跡が可能となるのだと思う。」

モネロー、ZCASH、DASHといった匿名系通貨は追跡不可能?

A氏:
「モネローとZCASHは追跡できないと思うが、DASHはミキシングを用いているだけなので、トランザクションを統計分析すれば追跡できるのではないか。ビットコインもミキシングを用いればDASHと同じような状態になる。」

ブロックチェーンそのものは安全なのか?

A氏:
「ブロックチェーン自体は改ざんされないと思う。しかし、トランザクションを発生させるところまではブロックチェーン外の話で、そこは既存のセキュリティの領域になるので、結局は通常のセキュリティをいかに徹底するかという問題になる。」

その他、仮想通貨に関連することを様々聞いてみた。

記者:ホワイトハッカーとして、今後どのように仮想通貨と関わっていきたい?

A氏:
「やはり、セキュリティの問題を解決できるよう努めていきたいと思う。決済やセキュリティ面において、なにかソリューションを出せたらいいね。」

記者:仮想通貨はやはりおもしろいですか?

A氏:
「エンジニアとしてはやはりおもしろい。ビットコインのプログラムもそれほど大きなボリュームではないので、それにこれだけ価値がつくというのは、いろいろな意味でおもしろい。」

記者:ブロックチェーンを企業が使うのはまだ難しいでしょうか?

A氏:
「例えばEthereumに代表される、Proof of Work や Proom of Stake という合意形式は、ファイナライズしない。別の言葉で言うと、確定ができない。つまり、トランザクションが承認されるまで待たなければならない。それまではトランザクションが覆る可能性が残るので、そうなると企業取引では使えない。企業間で、承認数を予め契約で定めないと、導入は難しい。
コンソーシアムチェーンであれば解決するが、そうなるとこんどは分散型であるという特徴はなくなる。
いずれにせよ、ブロックチェーンのデータ形式は普通のデータベースより柔軟性がないので、最初のルール決めが全てとなる。ここを誰が決めるかという協議が産業界では続いているのではないか。」

記者:スマートコントラクトを企業が実装するのは難しいのでしょうか?

A氏:
「プロトタイプはもうあるわけだし、実装そのものが難しいというかは、企業の意思決定過程で上層部の決断が遅れているのではないかと思う。」

記者:ブロックチェーン及びスマートコントラクトは世界を変えると思いますか?

A氏:
「変えると思う。スマートコントラクトというかは、スクリプトの仕組みがすごいなと思う。社会は大きく変わるのではないか。もう少し使いやすくならなければいけないが、開発自体は順調に進んでいると思う。」

記者:Ethereumの創始者であるヴィタリック・ブテリンは天才だと思いますか?

A氏:「やはり天才だと思う。プログラムも書けるし、全体像もイメージができる人だ。」

記者:ビットコインのトランザクションは今後最速で何秒になると思いますか?

A氏:
「セカンドレイヤーやシャーディングを用いれば、それこそ1秒以下も可能だと思うが、オンチェーンとなると、承認時間を早めればそれだけセキュリティが低下するので、やはり10分が限界なのではないかと思う。そういう意味では、ビットコインより送金時間の速いライトコインは、ビットコインよりセキュリティが弱いと言える。
しかし個人的には、ビットコインほどの規模であれば、ライトコイン並みに送金時間を短くしてもセキュリティ的に全く問題はないと思う。」

仮想通貨を使うまでのセキュリティが大事

いかがだっただろうか。ホワイトハッカーの生の意見はなかなか興味深い。
結局は、ブロックチェーンそのものは安全であるとは言え、ブロックチェーンを使うまでの行程において通常のセキュリティを徹底しない限り、従来のインターネットと同じ脅威に晒されるということだ。
ブロックチェーンで保存されるデータそのものは安全であるものの、我々ユーザーはブロックチェーンの周辺におけるセキュリティを常に意識しなければならない。

インタビュー・執筆
ルンドクヴィスト ダン

Top Photo credit: Yu. Samoilov on Visual Hunt / CC BY