original image: © sapsan777 - Fotolia.com
ブロックチェーンの展望と課題
Perspective of Blockchain
2017.02.20
Updated by Ryo Shimizu on February 20, 2017, 12:21 pm JST
original image: © sapsan777 - Fotolia.com
Perspective of Blockchain
2017.02.20
Updated by Ryo Shimizu on February 20, 2017, 12:21 pm JST
ブロックチェーンの可能性はまだまだ模索中の段階のようです。
というのも、今のところ有効そうなアプリケーションが暗号通貨しか見つかっていないからです。
1月に東京で開催された「ブロックチェーンハッカソン」では、ブロックチェーンプラットフォームであるイーサリアムを活用して様々な作品が作られました。
しかし、そのどれもが、「敢えてブロックチェーンにする必要があるのか」という質問に対してあまりスマートな解答になっていないような気がするものでした。
作品の中には、GPSと組み合わせて集客したり、カジノの管理やゆるキャラや結婚相手探しなどなど、ブロックチェーンで実装するコストと実際の利用の利便性を考えると、かなり効率の悪い実装になっているように見えました。
たとえばイーサリアムでは、あるスマートコントラクトをするのに相応のGASが必要で、GASは暗号通貨ETH(イーサ)でしか変えず、一回のスマートコントラクトに今なら400円程度がかかります。
これ、どう考えても掛かりすぎです。
たとえばなんらかのブロックチェーン上のアプリケーションを実装したとして、スマートコントラクトでは送金手数料が400円かかるということなので、これだったらわざわざブロックチェーンで実行しなくても、ふつうにクラウドでやったほうが遥かに効率的でお金も掛からないわけです。
なぜこんな馬鹿なことになってしまうのかというと、ブロックチェーンの出自が暗号通貨だったから、というところに原因がありそうです。
ブロックチェーンでは、ある取引の塊をまとめてブロックチェーンにします。ブロックチェーンを作るときに暗号化が行われ、その暗号化のためには、たとえばBitCoinならば10分間隔のProof of Work(作業の証明)が必要になります。
これはコンピュータの処理速度が上がれば上がるほど見つける難易度が上がるようになっているところがミソです。こうして「Proof of Work」を行うためには膨大な計算資源が必要ですが、普通に考えるとそんな計算資源を無料で提供してくれるお人好しは居ません。そこで、ほとんど全てのブロックチェーンでは、こうしたProof of Workを行ってくれる計算資源の提供者に対して、報酬を設定しています。この報酬が、ビットコインやイーサリアムにおけるETH(イーサ)として戻ってくるわけです。
ブロックチェーンのノードを保証するのはもっと大変で、なにせブロックチェーンのノードになろうとしたら、過去のブロックチェーンの全ての取引をダウンロードしなければなりません。最も歴史の古いビットコインだと、この過去の全履歴データは数十ギガバイトになります。
とても個人のマシンでお小遣い稼ぎにマイニングしようという発想にはなかなかなりません。今のところ、専用マシンを買ってまでビットコインを採掘するメリットはほとんどゼロです。
基本的にPoWで報酬が得られるかどうかは運次第なので、普通は個人ユーザはプールマイニングを行います。プールマイニングとは、要はブロックチェーンのPoWを共同で行って、分前を山分けするための仕組みです。
ただしプールマイニングするにしても、ビットコインのように比較的シンプルな計算をPoWに使っている場合は、専用に設計されたASIC(Application Specific Integrated Circuit、特定用途向け集積回路)を多数保有し、土地と電気代の安い中国の奥地で大量にマイニングしてるガチマイナーには到底叶いません。
土地と電気代が安く、ネットが引かれているということが採掘に有利に働いているので、もしかするとアフリカの砂漠で太陽光発電でもしながら採掘するのが最も効率的かもしれません。もしくは冷却コストを考えると、北海道あたりでしょうか。冬場は毎日雪かきしなきゃいけないけど。
ビットコインよりも複雑な計算を要求するイーサリアムは、ASIC化することができないため、GPUを使って計算します。GPUといえばディープラーニングで大量に使用するため、我々は物凄く沢山の在庫を持っています。これにヒントを得て、我々もあそんでいる計算資源でイーサリアムを発掘したりしていたのですが、まあこれで稼げるお金なんていうのは雀の涙程度のものです。
とはいえ、これで電気代以上のイーサリアムが発掘できているのは紛れもない事実ですから、そこになにか新しい可能性を感じ取る人々が大勢生まれるのも無理のないことです。
イーサリアムは、おそらく今のところほとんど唯一の、暗号通貨以外のアプリケーションを意識したプラットフォームですが、なにせスマートコントラクトを一回結ぶのに400円も掛かってしまうのでは本末転倒です。
しかも今のところ、先程述べたようにブロックチェーンのノードとなるコンピュータは、過去の全ての台帳のデータを持つ必要があるので、かなり規模の大きなものになってしまいます。
これはブロックチェーンがP2Pであるというメリットをある意味で殺しているとも言えます。
本当ならば、スマートフォンを充電中に暗号通貨を発掘できて、それで月々の電話代が多少は安くなるとしたら、これはぜひともやったほうがいいわけです。
ところが実際にはそう上手くは行きません。
スマートフォンで発掘するには、スマートフォンは非力すぎるし、全ての台帳を全てのスマートフォンが保存するとしたら、容量だって馬鹿になりません。
こうした欠点を補う試みももちろんあって、ビットコインにはSPV(Simplified Payment Verification;簡易支払い確認)という仕組みがあり、SPVクライアントは全ての台帳の生データをダウンロードする必要がなく、各ブロックのヘッダーのみをダウンロードするので、これは数十メガバイトで良い。
数十メガバイトならば、Raspberry PiのようなIoTデバイスでも十分扱える範囲のデータである。
さらに、Proof of WorkをRaspberry Piで実行するのは極めて難しいので、かわりにProof of Stake(富の証明)を用いることで、Raspberry Piでも採掘を可能にするという仕組みがあります。
これを用いているのはビットコインのフォーク技術であるPeercoinで、これならエッジ(端末側)でブロックチェーンの利点を活かしたアプリケーションを作れる可能性があります。
こうまでしてブロックチェーンを使いたい理由はなんなのでしょうか。
よく言われることを含めて、ブロックチェーン技術を用いた場合のメリットを挙げてみます。
・集中型ではない
・改ざんできない
・公平である
・ダウンタイムが事実上ゼロになる
このうち、筆者が注目しているのは、最後の部分、「ダウンタイムがゼロになる」というところです。
任天堂Switchが発売されると、ヨドバシカメラ.COMのサイトが物凄く重くなりました。
PSVRの予約受付が開始されると一瞬で売り切れてしまいます。
これというのは、21世紀を生きる人々にとって、売る側にしても買う側にしても大きな損失です。
こういうことがあるので転売を目的としたスクワッターがあとを経たないわけです。
しかし、もし仮にこうした人気商品の予約が、ダウンタイムなしでできたらどうなるでしょうか?
しかも完全に公正で、偽造も改ざんもできない形で起きたら・・・
とりあえずこうすると転売を目的としたスクワッターは激減するのではないかと思います。
なぜならスクワッティングするためには、複数の端末が必要になるからです。
端末IDを使うことにすれば、少なくともマシンの数だけしか予約できないので、わざわざ転売を目的としてまで複数の端末を購入する意味はあまりないわけです。
また、買いたい人が買いたいタイミングで注文を出せば、売る側としては需要をある程度予測できますから製造計画が前もって立てられます。
次に問題になるのは、筆者も以前enchantMOONというハードウェアを販売したときに犯した過ちですが、ダウンタイムによる顧客ロスと、公正な順番の維持の難しさです。
幸いにして、筆者らの会社の場合、非常にシンプルな方法で予約時刻を管理していたために順番を守ることはなんとかできましたが、これが複数台のサーバにまたがっているとなると順番を保証するのが極めて難しくなります。
また、サーバーがダウンしている間に諦めて買う気がなくなってしまった、という人が何人も居ます。売る側としては、これは非常に勿体無いことです。
ブロックチェーンで商品の予約を出来るようにすれば、そうした取りこぼしがなくなり、製造計画が立てやすくなることが期待されます。
ただし、こういうものは、アプリケーションの形で配布されるよりも、できればOSのいち機能として組み込まれているべきです。
上記はブロックチェーンによる予約システムはひとつの例ですが、予約ひとつに400円の手数料がかかってしまうのではあまりにも高額です。
このあたり、暗号通貨としてのブロックチェーンと、分散システムとしてのブロックチェーンを一度完全に切り離した、よりピュアなブロックチェーン技術の登場を期待したいところです。
おすすめ記事と編集部のお知らせをお送りします。(毎週月曜日配信)
登録はこちら新潟県長岡市生まれ。1990年代よりプログラマーとしてゲーム業界、モバイル業界などで数社の立ち上げに関わる。現在も現役のプログラマーとして日夜AI開発に情熱を捧げている。