週休七日

趣味のこととか、技術のこととか、読書感想文とか

パーミッションドブロックチェーンでサービスを考える時に悩むこと

TL;DR

パーミッションブロックチェーンはとても悩ましい

パーミッションブロックチェーンについて

ブロックチェーンには2種類の考え方があります。
一つはBitcoinやEthereumのように誰でもネットワークに参加ができるパーミッションレスブロックチェーン
もう一つが閉じられたネットワークで特定の参加者のみがいるパーミッションブロックチェーンです。
さらにパーミッションブロックチェーンには完全に一社で閉じたネットワークのプライベート型と、複数企業がネットワークを作るコンソーシアム型があります。 今回はパーミッションブロックチェーンでサービス展開などしてきた経験上悩んできたことを羅列していきます。
オープンソースとしてHyperledger fabricやQuorumなど、販売商品としてmiyabiやmijinがあります。
f:id:luca3104:20180322104211p:plain

悩みどころ

透明性・信頼向上

よく、"ブロックチェーンを利用すると透明性が上がって信頼が上がるんでしょ?うちも使いたい" という言葉を耳にします。
これは誰に対しての信頼か。ということを考えないといけません。

信頼の対象

ユーザーが企業への信頼

これまで、ユーザーは一社に対して信頼をおいてサービスを利用しています。
これをブロックチェーンに変えたところで何も意味がありません。
結局管理している母体は一社となるからです。

内部不正対策への信頼

基本的に個人情報漏洩などは内部不正の可能性が高いです。
すべての行動を追えるパーミッションブロックチェーンを使う意味が見えて来ると思います。

企業同士の信頼

企業同士で信頼度を増したい場合、コンソーシアム型であれば信頼度の向上に意味があります。
コンソーシアム型はお互いにノードを持ち、監視をし合うという閉じた世界の中でも非中央集権となるからです。

鍵管理

地域通貨などを開発するときに悩みどころとして"鍵管理を誰がするか"というものがあります。
基本的な考え方として、ユーザーが個人で所有するクライアント型か、取引所のように中央のサーバーで管理するサーバー型があります。
f:id:luca3104:20180322102826p:plain 仮想通貨オタクからすると"そりゃクライアント型でしょ"となりますが、サービスプロバイダーである以上、ここに関してはかなり悩みどころです。
これを解決するのは株式会社を超えた自律分散型組織みたいな世の中になって、全ての責任をユーザーに帰属させないと難しいです。

アカウントマイグレーション

一つ上の話にもつながってきますが、もしクライアント型の鍵管理を選択した場合、アカウントをどう引き継ぎするかと言うものを考慮する必要があります。
ここでSMSやメールなどを利用した認証を用いるのはとても危険と思っています。
それでは従来型のログインと変わらないため、あまりクライアント型にしている意味が無いためです。

リアル世界との乖離

パーミッションブロックチェーンの一つのユースケースとして、サプライチェーンマネジメントなどがあります。
実際にあるユースケースとしては以下のものがあります。

jp.techcrunch.com

サプライチェーンマネジメント×ブロックチェーンは食の安全などにおいて絶大な影響は今後出てくると思っています。
しかし、そもそもブロックチェーンに書き込む時点で改竄が可能なため、そこまでの担保ができないという点が問題と感じています。
仮想通貨(ココではパーミッションドでの通貨)の転々流通は中央銀行となる組織が通貨発行をするので最初から偽装通貨の混入などはありえませんが、肉などは最初にトランザクションを発行する組織が様々なためです。
ブロックチェーンで管理したところで、リアル世界のトランザクションブロックチェーン上のトランザクションとの整合性が取れるとは限りません。

スマートコントラクト

スマートコントラクトですべてを自動化したい人がたまにいます。
それ既存システムの自動化で良くないですか?

DR対策

当初、DR対策(Disaster Recovery, 災害復旧)が不要になる革命じゃんとか思ってました。
実際に色々触れていくごとに、もちろん部分的にDR対策が不要な箇所はありますが、結局サービス開発の上でAPサーバーが必要であったり、DBが必要になったり、外部サービス連携、旧システムとの外接など、複数の要因によって、あまりここのコストを下げることは難しいです。
ブロックチェーンは大きなデータ入れたら遅くなるから別途DB使おうとなるからです。

コンソーシアムを始める

コンソーシアムを始める上で"ジョイントベンチャーを作ろう"というのが多いです。
この決定にはかなりコストと時間がかかるもので、プロジェクトが進みづらくなってしまいます。
”誰が何%を持つのか” や ”知財の帰属先" などとても話し合わなければいけないことが多いからです。

最後に

かなり悩んでいます。
  
パーミッションブロックチェーンは本当に社会インフラを変えることができるのか。
この答え合わせは数年後にできると思います。
ある程度技術としては成熟してきて、ビジネスもレッドオーシャンになっています。
実際にユーザーが便利に使えるようになるのもまだまだ先の話でしょう。