「仮想」の「通貨」が「盗まれる」ってどういう意味?誰でも分かるコインチェック騒動を小飼弾が解説
1月26日、仮想通貨を発行する取引所「コインチェック」がハッキング被害を受けたことにより、580億円相当の資産が不正流通された「コインチェック騒動」。
上記のニュースを受けて、2月5日配信の『小飼弾のニコ論壇時評』では、プログラマー小飼弾氏と山路達也氏が、仮想通貨を盗むことは、技術的に可能なのか? 仮想通貨取引のリスクとメリットについて解説しました。
左から小飼弾氏、山路達也氏。仮想通貨を完全に管理することは不可能? “コインチェック不正流出”を受け、自民党議員らが仮想通貨のリスクに言及コインチェックのNEMが「盗まれた」とはどういうことなのか?
山路:
売上が伸びたコインチェックは、ビットフライヤーに迫る急成長をしたと言われています。
小飼:
実はそういったところも、キチッとした統計もなく、そういった取引所も財務諸表を公開してくれているわけではないので、傍から予測するしかないんです。でも、とても景気が良かったというのは、確かでしょうね。
山路:
そういうところから、大量にこのNEM(ネム)が盗まれたという。
小飼:
厳密には NEMの通貨単位はXEM(ゼム) ですけどね。NEMというのはブロックチェーンの名前で、その上に載せている仮想通貨の一種がXEMと書いてゼムと呼ぶやつですよね。だから他の仮想通貨も載せられるような仕組みになってるんです。
後発の仮想通貨だけあって、ビットコインとかよりも、いろいろなところが良く出来てるというのは確かだったでしょうね。
山路:
この番組でも、何回か仮想通貨については取り上げているんですが、改めて、仮想通貨が盗まれるというのは一体どういうことなのかを簡単に説明してもらえますか。
小飼:
はい。仮想通貨は、暗号通貨ともいいますけれども、その正体というのは、ブロックチェーン上に書かれた全取引記録です。ブロックチェーンをみていくと、その仮想通貨が生まれた時から、最後のブロックに至るまでの全取引記録というのが辿れるわけです。
通貨を盗むというのは、その記録に書き足すことなんですよ。だから送金したという記録が、一旦ブロックチェーンに残ってしまうと、それが本物だと。
山路:
記録を改ざんしているんですか?
小飼:
改ざんしているわけではないんです。ブロックチェーンは改ざんが出来なくて、今のところは、名だたる暗号通貨が、改ざんされたということはまだないんですね。仮想通貨はまだ誰も偽造に成功していないはずです。
山路:
ある仮想通貨で定められたやり方に従って、ブロックチェーンに書き込まないと、正しい取引だとは認められないわけですね。
小飼:
なんですけれども、その書き込む人、例えば、山路さんがここにウォレットを乗っけていたとしましょう、僕がこれのロックを解除して、勝手に操作したら、それは正当な記録でしょ?
例えば、親のスマホを勝手に子供がいじってガチャを回したら、今は「子どもがやったことです」といえば返してくれる業者もありますけれども、基本的にそれは正当な商行為です。そうやって盗むんですよ。
山路:
銀行に強盗が入って金庫を破られたというのとは、全然違うと。
小飼:
基本的にはそういうことです。本来であれば、その金庫にアクセスできない人が、金庫の鍵をなんらかの形で用意してということですね。
山路:
つまり、銀行側から見たら正式な手順で開けられたのと変わらない。
小飼:
だから、この「正式な手順」というのは、すごく重要なことで、ここの部分というのは、まだ破られていないんですよ。だけれども、その「正式な手順」というのを、正式でない人がやってしまったと。実はこういった事件で金融の歴史をずっとたどって行くと、真っ先に。
山路:
仮想通貨ではなく、普通の今までの通貨ですね。
小飼:
通貨の歴史をずっとたどってみると、最初に疑わなければいけないのは中の人、つまり銀行員なんですよね。だから銀行の不正送金とかがあった場合も、圧倒的に一番多い犯人が中の人なわけですよね。
山路:
銀行員が男に貢ぐために横領したみたいなのがありましたよね(笑)。
小飼:
そんなのいっぱいあるでしょ? 今回のコインチェックの発表では、外からアクセスされた形跡があると言っているんですけれども、それ以外に内部犯行ではないというニュースも出ていなくて、僕は、もう少しそこの部分を突っ込んで説明して欲しかったなと思います。
山路:
仮想通貨の取引所をめぐるそういう犯罪、事件としては、数年前にマウントゴックスからビットコインが大量に盗まれた、今回と同じように大量の仮想通貨を盗まれたということがありました。
小飼:
要するに不正侵入されて、その結果不正送金されたというのが、そこの部分は、「コインチェックがゴックスされた」という、もう動詞化されているくらいなんですけれども、当時と今と状況が違うということもありまして。
山路:
違うんですか?
小飼:
ゴックスの場合は、たしか、ビットコインしか扱っていなかったんですよ。BTC/JPYしかやっていなかったんですよね。
山路:
今回の場合は、数ある仮想通貨の中でXEMが狙われたという。
小飼:
はい。要は、数あるオルトコインのうちのひとつということで。
山路:
ただ結局、ビットコインであるにせよ、ほかの仮想通貨にせよ、ブロックチェーンの仕組み自体には、なにも問題ないわけですよね?
小飼:
問題には、なっていないです。
山路:
でも、被害を受けていない人も、みんな結構大騒ぎになっていますよね。
小飼:
それは大騒ぎになりますよ。例えば、まだ偽造されていなかった仮想でない通貨があったとしましょう。ですけれども、銀行強盗は当然犯罪ですよね?
これは逆説的にはなりますけれども、通貨が偽造できないからこそ銀行強盗をする価値があるわけですよ。これが簡単に偽造できるものであったら、むしろ偽造の仕方というものを盗もうとするでしょう?
山路:
ニセ札作りということですか?
小飼:
たぶん、僕くらいのおっさんだと、『ルパン三世 カリオストロの城』とかを思い出すでしょうけれども。
山路:
若い人も知ってるんじゃないですかね(笑)
小飼:
最初にルパンたちが盗んだのは良くできたニセ札で、ニセ札の原版を盗もうとする。
山路:
結構『カリオストロの城』は何遍も再放送しているので、ご存知の人も多いんじゃないかと思いますけれども。
小飼:
もし通貨の偽造そのものが簡単であれば、銀行強盗なんかするよりもニセ札刷るでしょ? 今のところ仮想通貨のニセ札に相当するものというのは、だれにも出来ていないんですよ。
山路:
仮想通貨のブロックチェーンという仕組みは、とても強力にできている。だけど、取引所に預けたところを狙われてしまう。仮想通貨を扱ったことがないと、なぜ取引所に仮想通貨を預けるのか不思議に思うかもしれません。
小飼:
仮想通貨の帳簿というのは、基本的に仮想通貨の取引だけを書いてあるわけですよ。例えば、麻雀大会のメモだとしたら、点棒の動きしか書いていない。
山路:
わかりやすいですね(笑)。
小飼:
その点棒が実際にいくらだったのかというのは、ブロックには書いていないんですよね。例えば、1000XEMをアドレスAからアドレスBに送ったという記録があっても、そのXEMをいくらで買ったかというのは書いていないわけですよ。
だから、仮想通貨の安全性というのは、あくまでも仮想通貨内の話であって、必ず外との接点というのがあって、そのうちの一番圧倒的にでかい接点が売買所なわけですよ。DEXとも言います。
仮想通貨の仕組みの中に取引所の要素は最初からない山路:
そもそも最初にブロックチェーンの仕組みを論文にしたサトシ・ナカモトの中では、取引所の要素というのがないわけなんですよね?
小飼:
ないです。あくまでも、ビットコインで物を買って、あるいはものを売ったときにビットコインで受け取ると。仮想通貨の立場に立つと、他の通貨や法定通貨というのは商品になるわけです。
ただし、日本政府の立場というのは、今のところ仮想通貨というのは物品であるという、ちょうど逆になるんですけれども。どの通貨から見るかによって、なにが商品なのかというのは変わっていくわけですね。
山路:
取引所というのは、取引所の持っているウォレットをユーザーに貸しているという、イメージになるんですか?
小飼:
まあ、銀行口座ですよね。
山路:
ユーザーの数だけ、取引所にはウォレットがあるんですか? つまり、取引所のウォレットと、個人とのウォレットの中で行き来しないといけないじゃないですか。
小飼:
そこなんですよ。例えば、個人の口座が1000個あったとして、1000個ウォレットがあるわけではないんです。だからウォレットはそれよりも少なくて、そのウォレットの内訳が「だれにいくら、だれにいくら」というふうに内部的に書いてあるというだけなんですよね。
山路:
あくまでも、大きなひとつのウォレットの中にバーチャルなウォレットを持っているというイメージですか?
小飼:
いや、バーチャルなウォレットですらないの。このウォレットの財産の内訳というのは、その取引所のデータベースにあるだけなのよ。
山路:
じゃあ、それはブロックチェーンとは別の話になってきますね。
小飼:
もちろん本当にアカウントを作ったら、アカウントごとのウォレットが出来ていたというのもあり得ます。
もし、そうだとすると、例えば、取引所の中で、取引所から直接仮想通貨を売った、買ったという場合もそうですし、取引所の中の人に送金した、受けとったという場合にも、ブロックチェーンに書かなきゃいけないんですよ。
ブロックチェーンに書くということは、取引手数料を払うということです。だから、取引所の口座ごとにウォレットを作るというのは、その意味ではあまり得なことではないわけですよ。
山路:
1つ1つのウォレットで取引すると、取引所の儲けが少なくなっちゃうと。
小飼:
こういった場合には、安全になりますけれども。それにもうひとつ問題があって、ウォレットというのには秘密鍵があり、その秘密鍵をだれが預かりますか? ということがあるわけですよ。
単なるパスワードと違って、ずいぶんと人間が覚えるには秘密鍵というのは大きなデータなわけですよ。
仮想通貨は管理体制がまだ不十分山路:
打ち出しやパソコンに保存をすることくらいはできるわけですよね?
小飼:
もちろんそうなんですけれども、認証とも違うわけですよ。
山路:
その管理というのも取引所に委託というか、任せてしまう人がほとんどなわけですよね?
小飼:
そういうことですね。
山路:
結局、そういうものを取られてしまうと好き勝手に送金されてしまう?
小飼:
それも違うんだ。さっきも言ったように口座の数だけウォレットがあるわけではないと言ったでしょ。今回の問題が深刻なのが、その取引所が持っている金庫のほうの鍵を盗まれて、金庫破りをされちゃったわけ。通帳の暗証番号が盗まれたというのとは、規模が違うわけですよ。
山路:
つまりハッカーが、金庫自体の秘密鍵を。
小飼:
ハッカーとは限らない。だから、こういう場合、内部犯行が一番ありえるので、内部犯行ではないピリオドというだけの材料をきちんと出して欲しいと僕は思う。
山路:
今回XEMが盗まれたことに関して、コールドウォレットにしていなかったということがよく記事に出ていまして、ホットウォレットかコールドウォレットかみたいな話が出てきますけれども、コールドウォレットにしておけば、こんな事件は起こらなかったんでしょうか?
小飼:
起こりにくかったですね。
山路:
ビットコインとかに関しては、コインチェックのほうでも、コールドウォレットにしていたんだけどという話をしていますよね。コールドウォレットというのは、ネットワークには繋がっていなくて。
小飼:
オフラインですね。送金のときだけホット(オンライン)にするわけですね。
山路:
これが取引所であれば、やるべき普通のやり方、コールドウォレットにしておくべきというわけですよね?
小飼:
しておくべきですよね。少なくとも、煩雑に送金したり、入金したりする口座と、預かり資産のほとんどをストックしておくウォレットというのは、当然分けておくべきですよね?
山路:
しかし、そんな大量のものがホットウォレットになっていたというのは。
小飼:
そこが一番びっくりなところですね。
山路:
弾さんもビットコイン、仮想通貨には浅からぬ縁があるじゃないです。VALUのチーフエンジニアをされているので。
小飼:
当然、当座の入出金分というのと大きな預かり資産というのは、分別して管理しているので、取引が活発なときとかは、たいていの場合は24時間ごとにまとめてなんですけれども、「今日は出金が多いから」、「今日は入金が多いから」というので、途中でやることもあります。
ですが、基本的にすぐに動かさなければいけないのに、ちょうど足りる分だけ置いていますね。入金はともかく、出金に関しては、VALUの場合は2BTCまで、1営業日2BTCという制限もあるので、これだけ置いておけば今日の取引をするのに十分だ、というのは予測可能なわけですよね。
山路:
そういうふうにしておくのが普通であれば、そんなに大量の金がホットウォレットになっていたというのは、エンジニアからするとかなり意外な感じがする?
小飼:
意外ではなくて、一番これはありえんでしょう。ひとつの理由として考えられるのは、XEMというのか、この場合はブロックチェーンのことを言うのでNEMですね。
ブロックチェーンを署名するときに、誰の署名を持って正しいのかとするとき、ビットコインの場合は、かなり有名でとにかくハッシュパワーがあるほうが有利だと。
山路:
計算をひたすらさせるという。
小飼:
プルーフ・オブ・ワークと言うんですけれども。NEMの場合は、XEMをいっぱい持っている人が掘るときの優先権を持っているんですよね。だからNEMにおいては、ブロックの検証サインのことはマイニングではなくて、ハーベスティングという言い方をしています。
要は、それだけでも持っている人のほうがハーベストして、手数料収入というのも得やすいという。それだけ大きなウォレットを持っているというのは、そこで有利になるという見方はできるんですよね。
山路:
金持ち有利な仕組みなんですね。
小飼:
なんですけれども、ただそういった場合というのはホットでないとダメという感じがするじゃないですか? 要はこれだけ持っていますよという。
山路:
他から記録が見えて検証できないと。
小飼:
なんですけれども、NEMの場合はさらに巧妙な仕組みが用意してあって、このウォレットにあるお金をこのウォレットがコールドなままでも掘れると。
例えば、俺はここに5億XEM持っているけれども、5億XEMもホットな状態にしておくのはちょっと問題だから、これでハーベストの権利を行使するけれども、それで得た手数料というのは別のもっと小さい財布のほうに入れてくださいねというのができる仕組みなっていたんですよ。
山路:
巧妙ですね。
小飼:
委任できるようになっていたんですよ。ビットコインが第一世代だとすると、イーサリアムがその次の第二世代で、NEMは第三世代に近いところなんですよね。
だから、僕も実はよくは知らないです。けれども、ビットコインのこういうところが嫌だというのをかなり直したとは言えますね。
山路:
しかし、それがせっかくできるのにその機能が活用されていなかったということなんですか?
小飼:
活用されていなかった一番の理由というのは、オルトだから。
山路:
オルトだから?
小飼:
one of manyだから。
山路:
そこにあんまり開発のコストをかけていなかったという。
小飼:
まあ、そういうことですよね。