【スポンサーリンク】

コインチェック社の被害額(約580億円)で何が買えたのか

www.sankeibiz.jp

業務改善命令に対する報告期限が今月13日ですので、おそらく同じタイミングでの出金再開という流れとなったのでしょう。もともと、円については仮想通貨のシステムとは関係ないですし、資産管理状況の報告が終わればすぐに対応可能ということなのでしょう。

しかし、計460億円のNEMの補償や、他の仮想通貨の入出金再開はまだ先ということです。

580億円っていうお金はやっぱりすごい

この問題について語るとき、当たり前のように400億、500億円という数字が出てくるのですが、冷静になって考えると(いや、冷静にならなくても)やっぱりもの凄い数字で。

いまいちこの額を自己資金で用意できることのすごさが伝わってないのかなと。

どうしたら580億円のすごさをわかりやすく伝えられるか。

 

ということで、具体的に580億円あったら何が買えるのか、色々と考えてみました。

1 ソフトバンクホークスの買収額=200億円(2004年)

number.bunshun.jp

●ソフトバンク
・球団を買う費用 約200億円(球団50億円、興行権150億円)
・スタジアム関連 福岡ドーム年間使用料48億円(30年間の使用契約)

http://number.bunshun.jp/articles/-/729675

球団を買うということになると、買収額以上の出費があったり、その後の固定費の支払いが発生したりということもありますが、少なくとも580億円もあれば、プロ野球チームの一つや二つは余裕で買えるということになります。しかもキャッシュで。やはり580億円ってすごい。。。

2 東京スカイツリーの総工費=650億円(2012年)

www.tokyo-skytree.jp

ウィキペディアによると、「建設費は約400億円。総事業費は約650億円」ということです。

3 インスタグラムの買収額=810億円(2012年)

www.nikkei.com

この額で買収するフェイスブックもすごいですが、その後のインスタグラムの伸びを考えるとむしろお買い得と言える案件だったのかなと思います。

ちなみに、最近よくCMを出しているIndeedの買収額が600~800億円ではないかと言われています。有望なネット起業の買収案件はだいたいそれくらいが相場ということは言えると思います。もちろん、これより小規模な案件もいくらでもあります。

自己資金でこれだけの額を用意できる、というのがすごい

2と3については買えてないやん、と突っ込まれそうですが、ゼネコンの工事も企業のM&Aも、通常は借入等で資金を調達して買収後のキャッシュフローで償還することが多いわけですから、自己資金で、すぐに用意できる、というのはそうそうないわけで。

こう考えると、返す返すもコインチェックはもったいなかったなと。あの流出がなければ来年くらいには有力企業をガンガン傘下に収めて、プロスポーツ球団を買収して、ホテルとかも買い漁って、という展開も十分にあり得たわけで。

今後は他の取引所や別の仮想通貨関連企業がそんな感じに伸びていくのかも知れませんし、もちろん、コインチェックも今後復活する可能性もるわけで。

自分は、今の仮想通貨界隈の状況っていうのは、2000年代のドットコムバブルに似ているのかなと捉えています。ブロックチェーン技術もそうですし、仮想通貨を利用したサービスもそうですし。

ドットコムバブルの頃も、パソコンやインターネットについて社会が良く認識していなかったため、変な会社にとんでもない時価総額が付いたり、過大ともいえる投資が付いたりしていましたが、そこからグーグルやフェイスブックが生まれてきたわけです。

少なくとも、投資市場が冷え切っていると言われていた日本で、これだけのお金が仮想通貨に流れたわけですから、今後もそんな感じの起爆剤になりうる存在なのかなと思っています。

 

 

あなたも和田社長になれる? ~仮想通貨取引所の作り方~

コインチェック社がハッキングされて「仮想通貨取引所って相当儲るらしい」ということが世の中的に話題になりました。

コインチェック社などの大手仮想通貨取引所は、一説には月100億円の売り上げが上がっていたらしいという話もあり、創業当時は数人か、多くても数十人レベルの会社だったわけですから、どれだけ儲かっているんだよと。

逆に言うと、そんなに儲かるんだったら、自分も取引所持ちたいと思う方も結構いるかも知れません。コインチェックの和田社長は学生時代に同社を立ち上げてますから、学生でもプログラミング詳しい人だったら、もしかしたら自分も、と思われるかも知れません。

実を言うと、取引所のプログラミングは多分そんなに難しくありません。ゲームだと画面上のグラフィック描画だとか、3D処理だとか、難しい話満載(これがネトゲだとさらにネットワークの問題も出てくる)ですが、取引所だったらウェブの知識さえあればはるかにハードルの低い話になってきます。

今回は、取引所のシステムってどうなっているのか、ニュースでよく出るホットウォレットってどういう意味か、などについて簡単に説明をします。

全体構造

f:id:vlaanderenstraat:20180209184648j:plain

手書きで申し訳ないですが、全体はこんな感じになります。カバー先とかはなくても成り立つのですが、後発の取引所、例えばGMOとかは、bitFlyerなどの他の取引所からレートを取って、顧客の注文に応じて外部の取引所に注文を出していました。昨年この他社レートを取る仕組みにおいてGMOが数億円の損失を出したのは記憶に新しいところです。

まず、画面の左側がインターネットの世界、右側が社内ネットワークの世界です。

 

取引所システムが提供するサービスは、大まかにいうと

①ユーザーに取引板や注文ボタン、取引履歴などを表示する

②顧客の売り買い注文をマッチングさせて取引を成立させる

③約定した結果をデータベースに記録する

という3つのサービスに大別できます。

自社のユーザーの間で売買が活発になされればシステムとしてはこれで十分で、あとはユーザーが取引するたびに取引手数料がシステムに落ちてくるようにすればよいわけです。

①はこのブログやウェブサイトを表示するのと同じ、HTMLを使っています。ブログ書いたりホームページを作ったりしたことがある人なら、そんなに難しくないと思います。

②は、①でユーザーが売り買いボタンを押した結果に応じて、約定をさせる部分です。

自社のユーザーが少ない場合は他社の取引所から入ってくるレートも混ぜたり、自社のアルゴリズムが売買の相手方になる(マーケットメーカーと言います)ようにして、売買を活発にさせます。

③はユーザーごとの残高や、個人情報、パスワードなどを保管している領域です。

 

以上の社内サーバー間の動きは全て各サーバーのログとして保管されますが、一定程度たまったらログ管理用のPCで拾い上げ、長期保管用メディアに記録することになります。その他、外部のアクセス先からのアクセス情報を保管するPCや、ユーザーごとに権限分けをしてアクセス制御する機器がゲートウェイと呼ばれる入り口付近に配置されます。

以上の機能は、多分ちょっと頭のいい大学生くらいだったら自力で作れるレベルのものです。

数万人のアクセスに耐えるようなシステムであれば相当難しいですが、数十人のユーザーで取引するような小さなシステムであればすぐに作れると思います。

他の取引所の情報を取り込むのも、各社でAPIを公開していますから、それを受信するようにすればOKです。

例えば、以下の画面はpythonでzaifの板情報をWebsocket受信している様子ですが、ソースコードはたった数行です。

www.instagram.com

-----------------------------------------ソースコード

import json
from websocket import create_connection
import ast

ws = create_connection("wss://ws.zaif.jp:8888/stream?currency_pair=btc_jpy")

while True:

      a = ast.literal_eval(ws.recv())
      print(str(a))

-----------------------------------------

corp.zaif.jp

zaifの配信は1秒に1回程度の分量なので、画面を見ても「遅いな」という印象ですが、他社はもっとバンバン読み込まれてくる感じです。

いずれにせよ、websocketやjsonはライブラリ化されているので、import文を読み込むだけで実装できます。

上記を利用すれば、各取引所の板情報を1秒ごとに読み込んで、一定の条件を満たしたら自動発注するというようなプログラミングも簡単に作ることができます。去年とかは各取引所の価格差が激しかったので、タイミングを見て鞘を抜くという方法で小遣い稼ぎが可能でした。今は。。。

(個人のシステムトレードならPythonで十分ですが、取引所を作る場合はC#やJAVAなどのちゃんとした言語で作る必要がありますが)

 

ここまではさほど難しくないのですが、問題は仮想通貨の出金です。

秘密鍵管理サーバーの置き場所が悩ましい

上記の図では、秘密鍵管理PCは右上の方に書いてありますが、この置き場所や運用の仕方が難しいのです。

秘密鍵を保存するだけであれば、市販のHDDに保管して電源を抜いて金庫に入れておけば済む話ですが、取引所の場合、24時間ひっきりなしにユーザーから入金依頼、出金依頼が飛んできます。

 

取引所が管理するアドレスからユーザーのアドレスに送金するためには、

 

1)まずブロックチェーンから自社アドレスのinput(直前取引のtxidとamount)を取得する(この作業はインターネットにつながっていないと不可能)

2)1)に対して、送金先アドレスと送金量などを決めてtxデータを作る(ここからオフラインでも可能)

3)秘密鍵でサインをする

4)サイン済txをウェブ上に投げる(ブロードキャストする)

 

という手順を踏む必要があります。下記参照。

block-chain.jp

ビットコインの残高はブロックチェーン上のUXTOで表現されるので、自分が利用可能なUXTOのIDを特定して、それに対応する秘密鍵でサインして次の人がUXTOを使えるように渡してあげるというのが仮想通貨の取引方法です。

つまり、1)4)の手順の際にインターネットに接続する必要がある、というのがシステム上難しい部分なのです。

例えばウィルスに感染している場合には一瞬でもオンラインになれば情報は抜かれてしまいます。

送金を前提にすると、やっぱり基本的にはインターネットにつながっていないといけないわけで、ここの管理が難しいわけですね。

仮想通貨の出金に何日もかかる取引所はこの部分を手作業(必要なときだけインターネットにつなぐ)でやっているので、不便といえば不便ですが、他方で安全であるともいえます。

ただ、オンラインにするとしても一部のアドレスだけオンラインで管理するとか、そういった工夫をすればリスクを少なくすることはできます。

話としてはそんなに難しいものではなく、秘密鍵という16進数の数値64桁(ビットコインの場合)をどうやって管理するか、というだけの話です。

その他に必要なもの

多分、上記の機能を満たすだけのものであれば、10人のプログラマが3か月も費やせばできるでしょう。一人50万円/月としても、1500万円もあれば作れます。

システムが止まらないようにきれいなコードで記述する、ハードを厳選する、セキュリティ対策をきっちりする、などのコストは別途かかってきますね。

後は、本人確認や郵送物の手配をする管理部人員、法律的なことに対応する法務部員がいて、社内規程を整備して金融庁に登録申請をすればめでたく取引所のオーナーになることができます。イニシャルコストで2000万~3000万円もあればいけるのかなと思います。家を買うよりも安く済むかもしれないですね。

実際は、今更しょぼい取引所を作ったところでお客さんは付きませんから、もっとコストをかけて魅力的なサービスにする必要がありますが、多分、世間一般で考えられているよりもはるかに簡素なシステムといえるのではないかなと思います。だって上手く行けば月に数十億稼いでくれる仕組みですからね。

取引所は今更感があるかも知れませんが、ブロックチェーンや他の取引所と連動したウェブサービスを作るとかであれば、今からでもチャンスはあるかも知れないですね。

 

弁護士が必要な場合は顧問をやりますので、ぜひご一報ください(笑)。

 

受任中の案件が弁護士ドットコムニュースに取り上げられました

www.bengo4.com

短いニュースでなかなか詳細が伝わらなかった部分もあり、このブログで、言い訳含め、補足を書かせて頂きたいと思います。

まず、「NEMで返せ」という主張ですが、相談者は、「今すぐ返してくれるのであれば円でもよい」とも考えています。現時点では、補償の際に採用されたレート(88.549円)よりもさらに低い、40円~60円で推移しています。補償レートで円を入金してもらい、すぐにNEMを買い付ければ利用者にとってはプラスになります。そこは言葉足らずだったなと。

仮想通貨の口座開設契約はどのような性質の契約か

何となく、今は「仮想通貨=特殊なもの」というイメージばかりが先行し、システムも特殊、契約形態も特殊、というようにみられがちだったので、その点について問題提起したかったという考えがまずありました。

仮想通貨は有体物ではないので、銀行預金のような消費寄託契約ではありません。仮想通貨の買い付けのために法定通貨を消費寄託し、その後の取引に応じて残高を管理し、取引所は、顧客の指定に応じて各通貨の出金に応じる義務(仮想通貨の場合は、顧客の指定アドレスに対する送金TXを仮想通貨ノードに対してブロードキャストする行為義務)がある、というのが正確な権利義務関係の分析となります。

そうすると、一義的には各仮想通貨の出金に応じる義務が取引所にあるのが当然ということになります。

しかし、大量に不正流出した仮想通貨を顧客の要望に応じて送金するのは、実際上はほぼ不可能です。特に、アルトコインのように流動性の低い通貨で再調達をするとなると、市場が限られるため価格が暴騰してしまいます。全ユーザーから一斉に送金依頼があった場合には、社会通念上履行不能ということになるでしょう。

(そのため、取引所の裁量により代替通貨で返金できるという規定があればベストですが、このような規定は他の取引所の規定にもないので、やむを得ないのかなと。今後盛り込まれることにはなると思います。)

履行不能になると次に出てくるのが損害賠償額の算定の問題です。ここで初めて、どのように円換算するか、という問題が出てきます。NEMの価格はハッキング後に暴落したり、値段が戻ったりしていますが、基本的に、原則は履行不能時、例外的に特別事情に基づく価格で賠償額を決めることもできる、というのが民法の通説的な考え方です。

その原則に従うと、取引所が暴落したときの価格で計算すべきという特別事情が立証できない場合は、原則として履行不能時の価格が採用されることになります。

じゃあ履行不能時はいつなのか、ハッキング直後か、顧客から一斉に出金依頼があったときか、あるいは訴状送達時ないし判決確定時か、という話になってくるのではないかと。その議論をすっ飛ばして一方的に賠償方法、賠償額を決めるのはおかしいのかなと(そもそも今回のケースは補償ではなくて賠償だと思っています)。

決済タイミングを強制されることの不都合性

残念ながら記事にはなりませんでしたが、決済タイミングを強制されると結構面倒なことになります。この点も具体的に説明したいところでした。

「取引なんだからいつかは税金を払うんだし、不都合はないだろう」とか、「どうせ儲かっているんだからいいじゃないか」という風に考えられてしまいがちです。

しかし、例えば、現在時点で600万円の含み益を有しているユーザーがいたとします。

この方が、全ての取引を本年度決済してしまうと、合計で30%の所得税(控除額や他の所得を考慮していません)が発生することになります。

他方で、仮想通貨による所得は雑所得ですので、他に雑所得がない方であれば、毎年20万円までの利益であれば確定申告は不要(無税)です。

極端な例ですが、600万円の含み益を30年に分けて少しずつ利益確定をしていく、という方法で確定申告をしないことも可能なのです。

毎年少しずつのキャッシュフローを出しながら長期ホールドして、その通貨が値上がりすればさらにフローが生まれる期間が長くなる。

全く確定申告しないというのは大げさとしても、最低税率の範囲内で少しずつ利確していくというのは当然ありうる考えなのかなと。

この不都合を金銭換算するとどうなるのか。実際上は因果関係がなく賠償請求は困難かも知れません(納税は今年しなくてもいつかするわけなので、本年度納税による出費や税理士費用が発生しても、因果関係がないか、そもそも損害でないか、と判断される可能性が高いです)。

ただ、そういう部分も今後一つづつ論点として整理していく必要があるのかなと思っています。

免責規定と消費者契約法

www.cloudsign.jp

こちらも参考になります。

利用規約に包括免責規定を設けていたからといってそれだけでリスクヘッジできるわけではないので、規約は丁寧に作るべきなのですが、サービスインするときにチャチャっと作って後で直し切れず不備が残ってしまうということもあります。

この辺は自分も日常業務で気を付けたいポイントです。