たなかこういちの開発ノート

システム開発に携わる筆者が、あれこれアウトプットするブログ

P2P取引システムのユースケースの一般構造に関する考察

ビットコインおよびブロックチェーンは、中央の第三者機関が無くとも、相互に信認できる取引を遂行していける仕組みが構築可能な事を示しました。ビットコインやブロックチェーンに触発された「Bitcoin 2.0」などと総称される様々な後続プロジェクトが立ち上がっています。これらビットコインに続くアプリケーションには、どのようなものが想定できるのでしょうか。とはいえ具体的なビジネルモデルを描ける訳でもないので、「ビットコインやブロックチェーンが見せる次世代取引システム」と云うものの一般構造を読んでみます。
 
※本記事は、私の個人的見解や意見(=Wikipediaが云うところの「独自研究」)が中心です。
 
※以下のまとめ記事もご参考ください。(※Wikipediaが云うところの「独自研究ではない」内容(のはず)です。)
 
 
「第三者機関」に関して
 
ビットコインおよびブロックチェーンにおいては、第三者機関が無くとも全取引履歴を保全できる、という点がやはり最大の特徴でしょう。よって、最大のユースケースは、直球勝負の、
 
既存の第三者機関に依存しない、全く新しい経済圏の構築
 
といったテーマの元にあることに違いは無いでしょう。「全く新しい」と云うところに具体的に何を描くか、そういう勝負です。
 
ただ、そのような究極的にイノベーティブな見立てだけでなく、以下のような課題に対するソリューションとなり得る、という比較的マイルドな方向性も考えられるかもしれません。
 
・第三者機関の設置が困難な取引環境における取引
・第三者機関の公正な運用が期待できない取引環境における取引
・取引当事者の信用が低い取引環境における取引
 
これらはどういった場面で生じるでしょうか。
 
・マーケット・ターゲット的に、シンプルにコスト的に無理な場合
・取引当事者同士の信用が文字通り低い場合
・第三者機関の設置・運用において、取引当事者間において様々な“力学”が働き事実上運用できない場合
 
などでしょうか。個人の印象ですが、「既存の第三者機関を置き換える」といったイノベーション・スタンスは先進国に向けた場合のもの、後者のような課題解決スタンス(ソリューション・スタンス)からは“Bottom of the Pyramid”、“Next 4 Billion”マーケットをターゲットとしたアプリケーション開発が成立しそうな気がします。
 
ビットコイン後続プロジェクトの構図
 
一方こちらの記事で、現在の「スマート・コントラクト」の文脈では、下記3つの技術要素の統合が論じられているとまとめました。
 
(a) 業務上の取引や契約を、数理論理学の道具などを用いて形式的に記述する方式を考案すること
(b) (a)を電子署名の連鎖で保全し、共有し、検証可能な運用環境を実現すること
(c) (b)を、第三者機関に依存しないP2P環境で実現すること
 
ビットコインとブロックチェーンに触発された」というならば(c)は必須事項のはずだと思うのですが、上の参考記事に書かれるところの銀行におけるブロックチェーンに関する議論とは、詰まるところ、(a)においてはビットコイン同様に決済をやろうとしていて、そのための独自の(b)について検討が進められていて(※「レジャー(ledger、台帳)」というそうです。)、しかし(c)においてP2Pでやろうとはしていない、というように対比できそうです。
 
上の参考記事中に、
 
「マイニングではなくコンセンサスの仕組を用いることで数秒でトランザクションが確定する。」
 
と説明している箇所がありますが、明らかに、Paxosなどによる「分散合意」でやる、ということを指しているでしょう。
 
「ブロックチェーンに触発されたところのP2P取引環境」とテーマを掲げて始めたのですが、ビジネスモデルを詰めて行くうちに、「P2P環境で実施できる」という点よりも、「自動執行」や「高速執行」、「(内部)統制」に重点が移った、ということだと理解できます。あるいは「高コストな新たな第三者機関の設置、運用を避けられるかもしれない」、という期待かもしれません。
 
 
再度書きますが、現在の「スマート・コントラクト」の文脈では、下記3つの技術要素の統合が論じられています。
 
(a) 業務上の取引や契約を、数理論理学の道具などを用いて形式的に記述する方式を考案すること
(b) (a)を電子署名の連鎖で保全し、共有し、検証可能な運用環境を実現すること
(c) (b)を、第三者機関に依存しないP2P環境で実現すること
 
よく見てみると、(スマート・コントラクトに限らず、)ビットコインに続く様々なプロジェクトは、この(a)、(b)、(c)の各レイヤーにおいてどのような(ビットコインと異なる、または同じ)選択をしているのか、という図式で整理できそうに思えてきました。
 

f:id:tanakakoichi9230:20160210212350p:image

 
ビットコインは図中赤線で括ったところです。Ethereumは、銀行におけるプロジェクトは燈色で括りました。
 
まず(a)について。
 
「(決済)専用アプリ」
 
か、
 
「汎用プラットフォーム」
 
かに分けられそうです。ビットコインは決済専用アプリ、Ethereumは汎用プラットフォームです。銀行における取り組みも決済専用アプリとなります。
 
次に(b)について。ここは実はバリエーションが無さそうです。いずれにせよ、取引履歴を電子署名保全して共有できるようにする環境がテーマであることから外れてないようです。現時点(※2016年1月)での「ブロックチェーン」という語の使われ方を見ると、どうも、このレイヤーにおいて、電子署名の連鎖で取引履歴保全をしてさえいれば、P2Pか否かに、つまり第三者機関の必要性に関わらず、広義に「ブロックチェーン」と称するケースが多いように見受けられます。
 
そして(c)について。
 
・不特定多数の参加者によるP2P、マイニングによって一貫性維持
 
か、
 
・特定少数の参加者によるクローズド・グループ(※「permissioned」と称するそうです。)、Paxos等の分散合意プロトコルによって一貫性維持
 
の二つの方向性があるようです。ビットコインはマイニングによるP2P。そして銀行のプロジェクトはクローズド・グループにおいて分散合意でやる、ということのようです。マイニングによらないクローズド環境において、いくら電子署名された取引履歴を共有しても、それはブロックチェーンでは無い、という意見もネットには見られます。定義の問題になってしまいますが、確かに少なくとも「Satoshi Nakamoto氏の論文に書かれるところのブロックチェーンとは異なる」とは云えるでしょう。
 
「スマート・コントラクト」に関する展望
 
ブロックチェーンには、論理的・形式的に記述可能な“何か”であれば、基本的になんでも乗ります。よって、どのようなP2P取引システムでも想定できるはずです。
 
ちなみに、「契約」と「取引」とはどのような関係にあるのでしょうか?(※会計的、経営学的な定義などあるのでしょうが、)ここでは技術者による日常語レベルで「契約」と「取引」を見てみます。「「契約」とは「取引」の仕様」だと捉えられるでしょう。所定の形式で契約を記述すれば、全くその通りに取引が次々と執行される(もしくは、されなければならない)、という訳です。契約は静的な事前の取り決め、取引は動的な実際の活動、に思えます。さらに云えば、契約は記述されたコード、取引とはその実行モデルに見立てられそうに思います。
 
Ethereumなどスマート・コントラクト系プロジェクトは、契約や取引を事実全く上記の通りに捉えて、そのプラットフォームをデザインしていると考えられます。
 
まとめ
 
ビットコインおよびブロックチェーンは、3つのものを解き放ったと云えるでしょう。
 
一つ目は、P2P取引システムです。先の図の最下層の在り方に重点を置くものです。決済を含む業務上の取引をP2Pで実施できることのインパクトについて、かつてのネットスケープ社創業者で、現在はVCを営んでいるMarc Andreessen氏は、New York Times寄稿記事で次のように述べていました。
 
"... What technology am I talking about? Personal computers in 1975, the Internet in 1993, and – I believe – Bitcoin in 2014."
 
The New York Times - Deal Book, "Why Bitcoin Matters":
 
(※'75年も'93年も見てきたおじさんにはよく分かります。。)
 
なんと、国際決済銀行(BIS)がビットコインに関するレポートを出していました。
 
BIS, "Digital currencies":
 
そのレポートの解説記事がこちら。
 
ビットコインニュース、「国際決済銀行(BIS)「ビットコインの普及は中央銀行モデルを破壊する」、日銀も言及」:
 
 
二つ目は、先の図の中間層における、第三者的に検証可能な電子取引履歴の共有です。P2Pでなくても構いません。権威ある、あるいは信認された第三者機関による電子署名でも構いません。P2Pに依らない第三者的に検証可能な取引履歴の共有とは、(マーケティング的にはそうでは無いのだとしても、)システムの技術的スキームとしては、「Satoshi Nakamoto氏のブロックチェーン」というよりも、電子公証の発展系だと云えるようにも思えます。
 
何にせよ、「ブロックチェーンが『電子署名の連鎖で取引履歴を保全し、共有する仕組み』を広く知らしめた」、という事には違いありません。
 
 
三つ目は、スマート・コントラクトの可能性です。先の図の最上層です。スマート・コントラクトの考え自体は古くからあるとしても、ビットコインの登場は、スマート・コントラクトを産業応用のメインストリームに持ってくる契機となったでしょう。私は、スマート・コントラクトは、ブロックチェーンの文脈以外のエンタープライズ・システムにも、そのアーキテクチャーに大きな変化をもたらすことになると考えました。
 
決済や取引とは、無論C2CやB2Cに限ったものでは無く、企業間でも当然に為されるアクティビティーです。企業間取引、つまり、エンタープライズにおいて広義にEDIと言われるシステムが支えるような領域です。スマート・コントラクトベースで再デザインしたEDI系アプリケーションが出現してくると思われます。企業間に限りません。企業内のアクティビティーにも、内規があったり内部統制観点からの制約やそれの監査があったりします。これらも全てスマート・コントラクトベースで再デザイン可能と考えます。
 
近未来のエンタープライズ・アプリケーションは、
 
・スマート・コントラクトベースの設計手法が、少なくとも一定のシェアを取るようになる
・個々の業務システムは、スマート・コントラクトベースのシステムへ“エビデンス”を提供する役割を求められることが多くなる
 
このように考えます。
 
スマート・コントラクトベースのEDIという観点で注目すべき次のような取り組みも始まっていました。
 
Biz/Zine、「ブロックチェーンでFinTechアライアンスを進めるインフォテリア&テックビューロ」:
 
◆以上