「スマートコントラクトと法律」期待と現実のギャップを埋めるための考え方 (2016/7/21 ビットコインニュース)
ブロックチェーンとスマートコントラクトへの関心がいよいよ最高潮に迫った。技術者、金融機関、規制当局、法律事務所――多くの企業がこのスマートコントラクトと呼ばれる新たな可能性に期待し、研究開発を進めている。
「ブロックチェーンとスマートコントラクトは弁護士や会計士、仲介業者を不要にし、数十万人の高給取りから職を奪う」
これが、スマートコントラクトに関する喧伝の代表的な例だ。
しかしながら、スマートコントラクトには多大な可能性がある一方で、極めて複雑性が高い現実の問題をそう簡単に解決することはできない。国家や地域ごとに異なる法律や条例、様式などを共通化し、自動的に処理することには考える以上に高いハードルが存在するのだ。例えば、我々がブロックチェーンに期待していることといえば次のようなものだ。
- ブロックチェーン上にスマートコントラクトを記載する
- インスタンスを実行するとスマートコントラクトは思ったように必ず動き、中間者に書き換えられたり想定外の実行結果を返さない
- 分散プロトコルによる管理のもと、中間者を介さず自動的に(非常にラクチンに)処理を実行できる
- その結果、金融取引等のコストが大幅にカットされ収益構造が改善される
もしあなたがスマートコントラクトに対して、このような結果が容易もたらされると考えているのならば思い直すべきだ。
スマートコントラクトは万能薬ではないし、業務効率化に役立てるには非常に複雑でたくさんのことを考えなければならない。そのコードは、コスト削減に役立っているのか。そのコードは、いくつの中間者をなくすことに成功したのか。そのコードは、今のサーバークライアントを置き換えるほどに価値があるものなのか。そして、安全に動かせるのか。
スマートコントラクトやブロックチェーンを取り巻く言説は、非常にたくさんの誇大広告が混じっている。このような状況は真剣に取り組む人々を辟易させるだけでなく、テクノロジーの本質を見誤らせアダプションを遅らせる可能性がある。
King & Wood Mallesonsのパートナーであるチェン・リム氏とキャルム・サージェント氏と、オックスフォード大学教授兼Ethcore CFOのティージェイ・ソウ氏は、このような「スマートコントラクト」を取り巻く期待と現実のギャップを埋めるためのエッセンスを示した。不確実性の高い現実世界において、スマートコントラクトをどのように設計するか。その基盤となる考え方を紹介したい。
「スマートコントラクト」だけでリーガルは完結しえない
リム氏らによれば、「スマートコントラクト」という呼び方は不適切だという。すなわち、「複数の会社や個人間の取引合意を取り持つフレームワーク」という意味では正しいが、法的な契約として見る場合には、どこから始まり、どこで終わるかに注意する必要があるのだ。
スマートコントラクトの心臓部は、一般的なプログラムのように入力とロジック(処理)、出力で構成される。したがって、状況判断を含むロジックを「スマートコントラクトを実行する前」にすべて実装しておかなければならない。スマートコントラクトにおいて、二者間の合意は「コードに含まれた条件/命令」だけに限定され、法律や特別な都合といったものを考慮してくれない。保証されるのは、あらかじめ定義されたコードどおりの処理だけなのだ。
一方で、スマートコントラクトとは異なり、「スマートコントラクトではない従来型の契約」(リム氏らはこれを、“ダム(マヌケな)契約”と呼んでいる)は、二者以上の間で結ばれる約束ごとについて合意し、法的な強制力がはたらく。スマートコントラクトのようにゼロかイチかではなく、ある程度融通が利くのが特徴だ。
同氏らはこの「ダム契約」について、次のように定義している。
- 約束ごとのデータベース
- 二者または三者以上が履行すべき約束ごと(義務)をまとめた契約であり、難解ではない自然言語で誰もが理解できるように交渉のための材料を記載してある。同様に、「口頭証拠排除原則」を含む、法廷におけるあらゆるシチュエーションをも網羅している。
- 当事者間の関係調整
- 前項のように「約束ごと」を網羅することで、契約は当事者間の社会的信用、モラルに働きかけている。法律は状況によってアップデートすることもできるし、追加することもできる。もし契約の最中に何かしらの問題が起これば、契約を解除することもできる。
- 執行条件の一部を内包
- 契約には契約上の約束ごとが実行されるためのメカニズムが内包されており、それは「履行基準」として定められている。
ダム契約とスマートコントラクトの違い
スマートコントラクトにおいては、データベースによって契約内容が記述されている一方で、現実世界の不確実性までを織り込んだ包括的なものにはなりえない。その理由は、(1)現在時点におけるコンピュータの計算アルゴリズムでは人的判断を含む複雑な状況判断ができず、(2)エラーや省略等により、当事者間の合意と異なる結果が出力される場合があり、(3)契約内に契約自体の改変許可を含めることができないためだ。
当然のことながら、スマートコントラクト自体を契約に内包することは可能だ。スマートコントラクトは単なる処理機構であって、複数の当事者で結んだ約束をフラグに応じて、取り消しの効かない形で実行するプログラムである。
他方で、リム氏らが述べているようにスマートコントラクトはすべての憲法、条例、法律を内包することができない。すなわち、単にプログラムにすぎないということだ。実際の契約文書として利用しようとすれば、スマートコントラクトに含まれない膨大なコンテキストを考慮し、それに応じてスマートコントラクトの挙動までを変更できる必要がある。
例えば、リム氏らは次の項目を懸念として掲げている。
- 法の誤認や見落としによる実装漏れがあった場合
- 当事者の合意と異なる処理(不当表示など)が故意に内包されていた場合
- 年齢が満たないなどの理由で、利用者が実際には法的能力がなかった場合
リム氏らはこれに加え、The DAOでそれが露呈したように、悪意を持ってスマートコントラクトを利用しようとするアクターを常に想定してコードを書く必要があることを強調した。
「パブリックブロックチェーンは、利害が常に敵対する当事者間であっても正常に動作するのが特徴だ。スマートコントラクトも、これと同様に設計する必要がある。以上で言及した課題に対処するだけなく、ゲーム理論に基づいた防衛的プログラミングを組み込まなければならないのだ。」
安全なスマートコントラクトを設計するために
リム氏、サージェント氏、ソウ氏の3名はこの論説の中で、「契約」という観点において、スマートコントラクトがなぜ契約文書たりえないかを説明した。もともと、スマートコントラクトは現実には干渉できず、デジタルな空間でしか効力を持ち得ないと言われてきた。しかし、デジタル空間であっても経済活動を行うには地域ごとの文化や慣習、法律が存在している。この点は充分に留意する必要があろう。
その上でリム氏らが提示したのが、以下のモデルだ。すなわち、従来の「ダム契約」の一要素としてスマートコントラクトを利用するということだ。
- スマートコントラクトの実行に適さない状況判断のための「法律ラッパー」としてダム契約を利用する
- スマートコントラクトは、例えばLIBORのような利率決定プロセスや、一定の時間後決済を行うなどアルゴリズムによって決定可能なコードの実行に留める
- 「法律ラッパー」はスマートコントラクトに実装する必要があり、一方で係争関係に陥った場合はダム契約が優先されるべきである
- スマートコントラクトの実行は「信頼のおける第三者」をマルチシグに交えるなど常にフェイルセーフ機能が備わっているべきであり、当事者が契約を反故にした場合や、契約内容の修正に対応できるべきである
このような理由から、筆者らはスマートコントラクトによって弁護士のような役職がスマートコントラクトによって絶滅することはないとの主張だ。事実、今ある技術だけを見れば、スマートコントラクトが何かを完全に置き換えるということはないだろう。
- 関連記事
- ブラジルでビットコインが金の取引量を上回る
- ジョン・マカフィー氏率いるMGTキャピタルが水力発電ビットコインマイニング事業を開始
- Uber、アルゼンチンでビットコイン決済の受付を開始
- ウィンクルボス兄弟のビットコインETF、上場間近か
- BCCC、日本初の体系的教育「ブロックチェーン大学校」開校へ