【GoTeal】総額8,889円で仮想通貨のマイニングをしてみた!

2月からはじまった『GoTeal(ゴティール)』。
その第2回目を担当することになりました。BECの黒瀬です。

GoTealとは簡単に説明すると会社で稼いだお金を使って役に立ちそうなものを買っちゃおうという制度です。
5つの運用ルールさえ守れば各々が自由に使い道を決めていいのがGoTealの醍醐味です!第1回目の記事はこちら

 

今回やること

今回はなるべくコストを押さえて、最近話題になって一気にしぼみつつある『仮想通貨』のマイニングをしてみようと思います!

なぜマイニングしようと思ったかというと、コーヒー好きなメンバーが多いので、マイニングでお金を倍増させて、伝説のコーヒー豆コピルアクをみんなに飲ませてあげたい(飲んでみたい)と思ったからです。

コストの検証

見切り発車なことが多い自分ですが、ここは一旦冷静になって実現可能性を検証してみることにしました。

まずは費用です。

今回はなるべく予算を抑えるためにラズベリーパイというお菓子みたいな名前のコンピュータを使ってマイニングします。

マイニングは初期費用を除くと基本的に電気代しかかかりません。
ラズベリーパイが動作する電圧はおおよそ5Vで推奨電流は2.5Aなので、1ヵ月の電力量はMAXでも
5(V) * 2.5(A) * 24(h) * 30(日) = 9,000(Wh) = 9(kWh)

東京電力のホームページによると電気代は1kWhで30.02円というのが上限なので、
9(kwh) / 1(kwh) * 30.02(円) = 270.18円
が1ヵ月の電気代になりそうです。

続いて稼げる金額を計算します。

まずマイニングする通貨ですが、ビットコインやイーサリアム等の有名通貨はASICやGPUを使った競合が強すぎて我らがラズベリーパイでは全く歯がたちません。なので今回はCPUでもそれなりに立ち向かえると噂されているKOTOという通貨をマイニングしようと思います。

通貨名 KOTO
ブロックあたりの報酬 100 KOTO
ブロック生成間隔 1 分
発行総数 212,000,000 KOTO
半減期 1,051,200 block (2年)
アルゴリズム yescrypt
特徴 匿名性


KOTOを選んだ理由は、マイニングの競合が少ないこと、CPUでも一定の利益が見込めるアルゴリズムであること、国産の仮想通貨であること、匿名性でありマネーロンダリングに使えることです。

実際にMacBook Pro(CPU 2.5GHz 4コア)でマイニングしてみたところ1日で 14 KOTO の報酬をもらうことができました。
採掘速度を見てみると 2 khash/s くらい出ているようです(1秒間に2,000回のハッシュ計算が行われている。この値で大体どのくらいマイニング出来るかが決まります)。
続いてVPS(CPU 1GHz 2コア)で試してみると、採掘速度は 1.2 khash/s でした。
今回使うラズベリーパイはCPU 1.2GHz の4コアなので、 1.2 khash/s くらいは出てほしいところです。

仮に 1.2 khash/s の採掘速度が出ると仮定すると、1ヵ月で
14(KOTO) * 1.2(khash) / 2(khash) * 30(日) = 252(KOTO)
稼げる計算になります。3月末の段階で 1 KOTO が 2.34円 くらいなので、1ヵ月当たりのマイニング額は
252(KOTO) * 2.34(円) = 589.68(円)
となりなんとか電気代を上回りそうです。
月200円くらい利益が出れば、2年に1度くらいの周期でコピルアクを飲める日がやってきそうです。

そういえばGoTealには「代官山周辺にある実店舗」で買わないといけないという隠しルールがありました。
マイニングしようとと思ったときに一番心配だったのが機材を代官山周辺で揃えられるのかということでした。
おそるおそる「代官山 ラズベリーパイ」でググってみた結果がこちら。

f:id:ekuro:20180401220505p:plain


シャッターズ(代官山 / イタリアン)!

スペアリブとアップルパイアラモードが人気らしい。調べてみたらアップルパイアラモードの成分にラズベリーが含まれているようです。
オッケーグーグル。

もう少しエリアを広げて「渋谷 ラズベリーパイ」で再検索することに。

f:id:ekuro:20180402112057p:plain


!!ビックカメラ!!


これならバリバリ代官山周辺でしょ!しかもそういえばビックカメラってビットコイン決済もできるやん!なんかナウいやんと思いながら心配の種が消えテンションMAXに達した私はさっそくみんなから助言をもらうことに。

助言をもらう

毎週月曜日のみんなで話す時間にて。

じ・・・自分 / み・・・みんな

じ「さっそくですが今回のGoTeal.....マイニングロボットを作ろうと思います!!」

み「おぉー」

じ「マイニングロボットには仮想通貨を死ぬほど掘ってもらいます。」

み「そのロボット本当に利益出せんの?」

じ「それはやってみるまで分かりませんが、計算上はプラスです。」

み「マイニングした通貨って会社の資産にするの?」

じ「もちろんそのつもりです。」

み「税金周りって大丈夫?」

じ「・・・。」

み「あとビットコインで買った場合の経費精算って大丈夫?」

じ「・・・。」

ヒアリング開始10秒で早くも挫折しかけた私ですが、「なんだかんだオレも気になってた。税金周りは任せてよ。」とか「個人的にラズベリーパイ持ってるからそれつかってもいいよ。」というみんなからの温かい後押しを受け2秒で立ち直ることができました。

やってみた

f:id:ekuro:20180401221952j:plain
間違えて別館に入っていく黒瀬

ということでさっそくビックカメラ渋谷本館にラズベリーパイを買いに行きました。

今回は、ビットコインでスマートに決済する様子を見届けてもらうためにメンバーのなっちゃんに同行してもらいました。

f:id:ekuro:20180406014932j:plain

 

ビットコインで決済をするために、まずはbitflyerという取引所に9,000円分くらいのビットコインを入金しておきます。


歩いている内にビットコインが暴落してはたまったものじゃないので入金確認後すぐに出発(ビックカメラではラズベリーパイを買うのに取り寄せる必要があったので、事前に電話して取り寄せてもらいました)。

さっそく取り寄せサポートカウンターがある本館の5階に向かいます。
店員さんに「ラズベリーパイを取り寄せたものですが」と話しかけるとすぐに例の悪魔の実が書かれたパッケージを持ってきてくれました。

f:id:ekuro:20180405082618j:plain


店員さんがレジをパチパチしはじめたので、やばいこのままだと普通に現金で払うことになってしまうと思い、

「ビットコイン決済でお願いします!」

と言ったところ明らかに慌てる店内。
担当してくれてた店員さんもそのまま奥に消えてしまいました。

あれ、本当にビットコインで買えるんだよな・・・。でも電話ではたしかに買えるって言ってたもんな。てかちょっとずつビットコインの価格下がってきてるんだけど。

とか思っていると、どうやらサポートカウンターには対応しているレジがないらしくビットコイン決済ができるレジまで案内してくれました。

そしてついにビットコイン決済のために待つこと20分。やり方が分かる店員さんが登場してから送金するまで3秒。無事ビットコインでラズベリーパイを購入することができました。


ビックカメラでビットコイン決済をしてみた感想は「めちゃ簡単!あっという間!」だけどbitflyerにビットコインを持ってる人に限るって感じです*1

なっちゃんもそのスピード決済を見てドキッとした に違いありません。

領収書も日本円で発行されたので経費精算も問題なさそうです。

 

f:id:ekuro:20180401223000j:plainf:id:ekuro:20180401222943p:plain
この時6,166円分のBTCで買いましたが、BTCの額が1ヵ月くらいで880,000円から730,000円になったので、今では5,110円で買ったことに!


さっそく購入したラズベリーパイをオフィスに持ち帰ってマイニングの準備に取り掛かります。

f:id:ekuro:20180401231247j:plain


最低限の初期設定をして、マイニングに必要なパッケージやソースコードを入れていきます。詳しい手順はまた別の機会にまとめようと思います。

とりあえず動かしてみる。

f:id:ekuro:20180401230955j:plain


動いた!


採掘速度は、、、

f:id:ekuro:20180401231037p:plain

0.13 khash/s ( ̄□ ̄;)!!

なんと、想定の10分の1くらいしか出ていません。

CPUの温度を調べてみると80度近い。 ラズベリーパイ3には搭載されているCPUの温度が上昇するとクロック周波数と動作電源電圧を落とすような安全回路が組み込まれているようです。

CPUのクロック周波数を1200MHzに固定する設定があったので、検証用に少しの間ラズベリーパイに頑張ってもらいます。

しかしそれでも想定の採掘速度にはなかなか近づきません。

KOTOのマイニングアルゴリズムについて調べてみたところ、メモリアクセスをマイニング処理の途中に入れることで単なる演算処理速度の勝負ではなくし、CPUと親和性が高くなるように設計されているようです。

実はラズベリーパイのキャッシュメモリの容量はそれほど大きくありません*2
なのでキャッシュにヒットしなかった際のメインメモリへのアクセス回数がそれなりに多くなることが予想されます。
が、そのメインメモリのクロック周波数が400MHzしかありません。

CPU内のレジスタ間演算速度が1ns弱と高速なのに対して、メモリアクセス速度が2.5ns程度なのでここがボトルネックになっているのではないかと予想しています。


なんだか先行きが暗くなってきましたが、とりあえず出来ることもないので、ダンボールで体をつくります。

f:id:ekuro:20180401232408j:plain
のり付けの位置を考えて型をとろうと思ったが途中で面倒くさくなった

f:id:ekuro:20180401232433j:plain
右目から見える電源ランプで起動しているか確認できます


せっかくなので最近エンジニアチームで話題になることが多いFGO(ソシャゲ)のガチャを引いてそれを名前にしようと思います。

f:id:ekuro:20180401233623p:plain

f:id:ekuro:20180401232701p:plain


命名「まるごしシンジ君」。

 

f:id:ekuro:20180405080559j:plain

結果

今回はシンジ君にかかった初期費用を回収するどころかシンジ君を動かし続けることでコストがかさむという予期せぬ結果になってしまいました。

利益を出すためには、値段が4.3倍になるか、マイニング速度を4.3倍にしなければいけません。

ちなみにシンジ君が稼いだ額はここから確認できます。いま7KOTOくらいです。

この調子でいけば第一回コピルアクの会は20年後くらいになりそうです。

www.wantedly.com

*1:内部的にはブロックチェーンを使った送金をしてない(少なくともその場では)ので速攻で着金しました

*2:L1データキャッシュが32KB、L1命令キャッシュが32KB、L2統合キャッシュが512KBです