mineCC
17 min readDec 12, 2017

12/14追記

流出資金が動き始めました。今回の動きに関与しているアドレスの多くがcoinpocket.usというサイトに関わっているようで、このドメインの登録元はナイジェリアになっています。(https://who.is/whois/coinpocket.us

664BTCが動きましたが、その先の動きはこのリンクから追えます。オレンジの丸をダブルクリックすればその先のトランザクションも見られます。かなり細かく分散させています。盗難時の動きから、この先でまたどこかに集約させる可能性があります。

しかし、なぜ資金の一部を10BTCに分割してばらまいているのだろうか?この10BTCも0.1BTCとその他に分割して非常に深い階層に資金を移している。

1BTC以下の小口資金を膨大な口座に振り分けて捜査をくらませるつもりなのか?このツリーを辿っていくと末端に強烈な枝が広がるTxをもつアドレスに遭遇する(1JSqpa6BfBECne9dWoRWKJH2PT8tpvwdKg)。このTxc6f506acdb00940efecf5e6695b4ced0ad8f22df7c1dde327094ed2e41cf3529)に含まれる口座はNiceHack事件以前から活動があり、1回当たりの取引先も多いことから、何らかのサービスに利用されているアドレスから成るものと推定する。

(以下、12/12初稿)

巷では既にホットな話題でなくなってきているNiceHashハッキング(略してNiceHack)事件。気が気がではない方も多いのではないでしょうか?

NiceHashのredditには誰が最も損を出したかを競うスレがあり、興味本位で覗いてみたらなんと1位が僅か0.86BTC!redditユーザーの主張する推定損失は案外少なく、損失を主張している人の多くは数百ドル規模。この金額なら諦めつくから兎に角早く復活してくれって言う人が多いのも納得です。

しかし私を含め、失ったかもしれないBTCに諦めのつかない方も多いでしょうし、そもそも原因と対策が明らかになっていない状況でサービスを復活するなど笑止千万。しかもTwitterでは「事態の進捗を待ってる間にみんなのリグ写真を見せてくれよ!」みたいなノリで公式がフォロワーを煽り、フォロワーもまたリグ写真を見せて馴れ合うという閉口せざるを得ない状況。

これまで運営は「当局による捜査」を理由に情報は開示されてきませんでしたが、昨日WikiTribuneにQ&A方式のCEOインタビューが掲載されました。相変わらず開示されている新情報は皆無に等しいですが、状況を紐解く鍵があるか読み解いてみましょう。

そして失われた資産について考察します。

1.1 概要

NiceHash CEOのMarko Kobalが “working on a solution to ensure that all users are reimbursed”(全ユーザーが確実に補償を受けられる解決策に取り組んでいる)と発言。また、現在は「当局による捜査が進行しており、ブリーチに対するさらなる詳細は公開できない」とのこと。

1.2 Q&A

Q: Is the hacker(s) holding these stolen bitcoins to ransom in exchange for an alternative or untraceable payment?

盗まれたBTCは追跡できないような他種の身代金と交換するために拘束されているのでしょうか?

A: Due to the authorities’ ongoing investigations we can’t provide any further specific details on the breach right now but our aim is to continue to give updates to our community. We have opened a dedicated community for researchers and blockchain experts to help track and analyze the stolen funds. The address is here.

当局の捜査が進行しているためにブリーチに関する詳細をこれ以上は今のところ明かせませんが、我々はコミュニティに進捗状況を提示し続けることを目指しています。盗まれた資産の追跡と分析を手伝って貰うために、研究者やブロックチェーン専門家に向けた専用のコミュニティを設けました(https://www.reddit.com/r/NiceHashHack/)

ここには新情報無し。「身代金だと思うか」と聞かれてるのに一見関係ない回答をしているように思える。しかし、実際に何かしらの要求が犯人からあったために、捜査に係る内容であるとして回答を控えたのかも知れない。

Q: What steps will NiceHash take to regain its customers trust?

NiceHashは顧客の信頼を取り戻すためにどのような手順を経るのか?

A: The support we have received from our community during this crisis has been immense. We are truly moved by the tens of thousands of messages from our community of miners. We are taking all the necessary steps to re-establish our systems with bullet-proof security protocols, and enable miners to start earning money again.

この危機においてコミュニティから受けている支持はとてつもないものだ。マイナーコミュニティからの数万に及ぶメッセージに我々の心は本当に動かされた。我々は堅牢なセキュリティプロトコルを備えたシステムを再構築し、マイナーが再び資金を得るために必要な手順を踏んでいる。

We understand why everyone is upset, and we are truly sorry. We are taking responsibility and want to demonstrate the openness and transparency which is the cornerstone of the world in which we work.

我々はなぜ皆怒っているかを理解しており、本当に申し訳ない。我々は責任を取り、開示性と透明性を備えていることも示したい。

We know we have to build up trust again, we know that, but the overwhelming majority of our community of nearly 750,000 registered users have been very supportive and want us to get the site up and running so they can start making money, mining and leasing again.

信頼を再び築きなおさなければいけないことは分かっている。しかし約750,000ユーザー(registered users)の大多数は協力的(supportive)で、報酬を得るためにサイトの早期復旧とサービスの再稼働を望んでいる。

It will take time but we are working on a solution to ensure all users are reimbursed. That is clearly a key concern for our users, and we understand this, we are not running away from our responsibilities. As soon as we have a plan in place we will update all users on our intended solution, and we’re sorry for any inconvenience which has been caused. We’re going to make sure that we learn from this and come back even stronger and safer.

時間はかかるだろうが、全ユーザーが確実に補償を受けられる解決策に取り組んでいる。これは我々の明白な関心事の一つである。我々は責任から逃がれようとはしていない。計画が整い次第、我々の意図する解決策を全ユーザーに伝える。今回ご迷惑(inconvenience)をおかけしたことは本当に申し訳ない。我々は今回の事案から学び、一層堅牢かつ安全なものとして復活することを約束します。

個人的には「inconvenience」という表現が至極不満で、運営のこの捉え方が私を含めた一部の顧客心理を非常に悪くしています。redditにスレが出来たくらい。

不満はさておき、重要そうな箇所を振り返りましょう。 まずは冒頭にもあった「時間はかかるだろうが、全ユーザーが確実に補償を受けられる解決策に取り組んでいる」という言葉。どうなるかさっぱり検討がつかない、というよりかは顧客に安心感を覚えさせるフレーズです。某取引所などがトラブルに遭った際も、資金の一部は返金し、残りはトークンとして償還したケースがありました。今回どの程度返金されるかはまだ分かりませんが、「ゼロ」という事はなさそうです。BTCで全額返金(というか損失ゼロ)すれば神対応としてユーザーから崇められて、信頼も一気に取り戻すでしょうね。 そこで気になるのは補償資金を持っているか否かです。最後のQ&Aを見てから考察しましょう。

Q: What’s the likelihood of the company covering more than $60m in losses? Are you able to compensate users?

会社が$60Mの損失をカバーできる見込みはどれくらいあるのか?ユーザーに補償できるのか?

A: We fully intend to make this right. It’s a matter of deep concern to us and we’re working hard to rectify the matter in the coming days. We’re working on a solution to ensure that all users are reimbursed. These things are delicate matters, and take time, so we would ask our community to be patient while we get this fixed and fully investigated. As soon as we have a full plan in place we will communicate it to our users and all those affected.

我々はこれを間違いなく行おうとしている。深い関心を持っており、事態を(近々?)打破するために動いている。全ユーザーが確実に補償を受けられる解決策に取り組んでいるが、これらは繊細な事柄であり時間も掛かることから、問題の修正と調査の完了までコミュニティには辛抱強く待って貰いたい。完全な計画が整い次第、我々のユーザー及び影響を受けた全ユーザーに通知する。

なんとなくはぐらかし続けていますが、最後にとても重要な表現があります。「影響を受けた全ユーザー(all those affected)」というフレーズがour usersと並んでおり、すなわち「影響を受けたユーザー =! 全ユーザー」であることを示唆しています。「影響されないユーザー」がいる!?(inactiveユーザーの事かもしれませんが…)

2. 考察

ここで重要なポイントと数字をまとめましょう。コミュニティのサポートが云々などという妄言はさておき、鍵となる事項と数字は下記4点です。

  1. 補償する気はある(割合と内訳の明示無し)
  2. 登録ユーザー数は約75万人
  3. 流出額は4736BTC(約76億円相当)
  4. 影響するのは一部ユーザー

アクティブユーザー数は75万人で無いと思うので、1割程度差し引いて68万人としましょう。今回の流出額を割ると約7mBTC/人(約1万円/人)です。この金額は妥当なのか検討してみます。

2.1 NiceHashのサービス体系概要

NiceHash利用歴1ヶ月強の浅学マンなので自身がないところもありますが、まずNiceHashのウォレット構造について簡単に説明します。

NiceHashのマイニングに利用できるウォレットは内部と外部の2種類あります。手数料体系が異なるため、マイニング報酬によってどちらを選択するか決めなければいけませんが、内部ウォレットに払い出した後に自ウォレットに動かすのが概ね手数料的に有利です(その分リスクを抱える…)。外部ウォレットだと最低3.00%、内部経由だと最低2.20%にまで抑えられます。この手数料体系に鑑みて私は内部ウォレットに報酬を溜め込んでいました(2.20%クラブ)。

Nicehashの手数料体系。本文リンク先よりxlsファイルを取得可能。

また、NiceHashにはハッシュパワーを売買する市場があり、ハッシュパワーの売り手(マイナー)だけでなく、買い手のデポジットが存在します。内部ウォレット残高から他人のハッシュパワーを購入することも可能でした。従って、いわゆるクラウドマイニングのようなサービスを利用するために報酬をそのままデポジットしていた人も相当数いたはずです。買い手の最低デポジット額は10mBTC。この買い手が供与する資金はNiceHash内の流動性を確保する為の重要な財源であり、NiceHashの資産に占める割合は決して小さくないと思われます。

2.2 利用者数と彼らの収益

7/24時点で登録ユーザー数30万人を達成した旨がTwitterで公表されています。12/5頃までには75万人に増えているので、線形増加を仮定すると7月以降は約10万人/月のペースで登録者数が増加しています。では登録者数の内訳(売り手/買い手比率)はどうなのか。Google先生が取っていたキャッシュを探したところ、10/12時点のものが残っていました

Googleのキャッシュから抽出した10/12時点のNiceHash Profitability

10/12時点でのマイナー数は34.7万。Earning/miners値から、「マイナー数」はこのアルゴリズムを走らせているGPUやASIC装置数だと思われるので、マイニング実行者数と1対1対応させるのは無理があります。ここは適当に決めるしかないので5台/人(あるいはアルゴ/人)としましょう。するとこの日のマイニング実行者数は約7万人です。推定登録者数は60万人であり、アクティブユーザー数を高々50万半ばとすれば、十数%の登録者がマイニングをしていたことになります。少ない。そんなにハッシュパワーが買われていたと思えないので、カジュアルマイニング層の比率を高めて2台/人とすれば17万人が売り手、比率としては30%程度になります。これでもまだ低い気はしますが、この仮定で推定を進めましょう。

10/12には17万人がマイニングで240BTCを得ています。買い手は38万人ほど居るとして彼らの最低デポジット分が10mBTC*38万=3800BTC。合計で約4000BTC。マイニングした通貨は即時外部に払い出すとは限らず、むしろハッシュパワーの購入に充てられるケースもあるため、「マイニング貯蓄」も上乗せして推定するべきでしょう。買い手の人数がどうにも多い気はしますが、実際にこの人数であったなら実際のデポジットもさらに上乗せされると思います。12月現在の価格で考えると大変な金額に思えますが、10月中旬は$5000/BTCくらいだったので、1mBTCは$5程度なんですよね。最低デポジット$50しか入れなかった人は少数派でしょうから、1人当たりもう5mBTC($25)追加したとしても1900BTC上乗せ。この上乗せを含めるだけでもNiceHashの口座には累計で6000BTCはあったと思われます。「登録ユーザー」当たりの資産額は約10mBTC。

今回流出した4700BTCをNiceHashの全資産とみるには少ないような気がしてきますね。割と抑え気味に試算しても5000BTCは下らない残高を持っていそうです。

2.2 盗難時点の推定保有資産

さていよいよ本題です。アクティブユーザーの内3割がマイニングをしていると先に推定しました。ここでも12月現在68万人x0.3=20万人がマイニングをしていたと推定します。さすがに今は日次240BTCも掘れないでしょうから200BTCと仮定しましょう(1人当たり日次10mBTCの報酬)。買い手は48万人で最低デポジットが48万x10mBTC=4800BTC(4736BTCに近い!)。両者を合計すると最低でも5000BTCの残高はあったと思われます

先の手数料表によると外部ウォレットへの払い出しは10mBTCからで、このときのFeeは4%です。100mBTCまで貯めれば3%に下がりますし、内部で250mBTCまで貯めれば2.2%にまで下がります。RedditやTwitterを見る限り数十mBTCでさえ貯めているユーザーは少ない印象を受けますが、マイニング収益の半分以上をASICマイナー(10/12には1台$10-$15の日次報酬)が稼いでいる点に鑑みて、平均20mBTC/人($300強)は貯めていたとしても良いでしょう。収益の多さから手数料を節約するインセンティブが働き、貯蓄残高をそこそこ引き上げていると思います。するとマイナー20万人の貯蓄は約4000BTCになり、これもまた4736BTCに近い値になりました。

買い手のデポジットあるいは売り手の貯蓄だけでも5000BTC弱。合計すれば10000BTC弱。パラメータ設定はざっくりとしていますが、この推定結果からして、今回流出した4736BTCがNiceHashの保有資産「全額ではない」可能性があります

結言

NiceHash側は「影響を受けたユーザー」に補償する気を見せており、しかも流出額が運営規模からすると小さいように推定される点にも鑑み、彼らは保有資産の全てを失ったわけではないという考えを現状抱いています。蓋を開けてみれば空っぽでしたという可能性もまだ棄てていませんし、むしろそれを覚悟しています。ただ、一部でもいいから内部ウォレットに残高が残っていて欲しい。不安の中で僅かな安心感を得たくこのような推定をした次第です。

NiceHash利用者各位の資産が保全されている事を祈っています。