リップルのスマートコントラクト「Codius」をもっと詳しく解説。

リップルのスマートコントラクト「Codius」について、中身の話まで少し詳しく説明していきます。Codiusのポイントは「えんどうまめの【さや】と【豆】」に例えられる、Podと呼ばれるパッケージングの仕組みを使っていることです。

これにより、プログラムをパーツに分けて開発し、また同時に走らせることができるようになります。

すでに形のある、既存のプログラムを応用しやすくなるというわけですね。

(アイキャッチ出典:Codius Medium






フリーランスライター。元大手SIerでSEを7年(金融、製造など企業向けソリューションの提案・設計)、大手メーカーでハードウェア開発(人工衛星)を3年。仮想通貨参入は2018年1月。IT知識を生かしたライトな解説が得意。30代後半/海外旅行/サッカー/F1/1歳児育児中。

応援はこちら(XRP)  rNBnK81H3izME5LZHkHpt8Ltjy6pefQ9Aq

プロフィール仕事実績・依頼

リップルのスマートコントラクト「Codius」の詳しい仕組みを解説

こんにちは、仮想通貨ライターのフェニックスA子(@lipton_milk999)です。

今回は、2018年6月に再開されたリップルのスマートコントラクト「Codius(コーディアス)」について、公式Mediumで公開されている技術的な話も含めながら、詳しく(わかりやすく)説明していきたいと思います。

公式の図解や引用などもしていますので、英語の記事を読むのが大変という方にもおすすめです。

そもそもCodiusって何がうれいしの?という上位の説明が見たい方は、こちらの記事を先にみていただくと、わかりやすいと思います。

 

 

Codiusは既存のスマートコントラクトが「普及しない問題」に挑む

Codiusのスマートコントラクトが目指すものは、スマートコントラクトを実際の社会で使おうとしたとき「現実世界が複雑すぎて、スマートコントラクトを対応させられない」問題を、実装の簡単さで解決することです。

公式Mediusでは、開発者のStefan Thomasは次のように語っています。

My hypothesis for why smart contracts haven’t entered the mainstream is that the architecture hasn’t been flexible enough to deal with the complexity of real-world use cases. Ethereum is an excellent proof of concept, but it’s difficult to integrate with other systems, even forks of Ethereum. And without robust integrations, it’s impossible to build anything more than a proof-of-concept.

(出典:Codius Medium

 

なぜスマートコントラクトがメインストリームに乗れないか?についての私の仮説は、アーキテクチャが実世界のユースケースに対応できるほど柔軟ではないということでしょう。イーサリアムは優れた概念実証(※)ですが、イーサリアムのフォークバージョンですら、他のシステムと統合させるのは難しいのです。そして、ロバスト・インテグレーション(強固なシステム統合)なしには、概念実証以上のものを構築することは不可能なのです。

 

MEMO
*概念実証とは、本格的なビジネスを始める前に、そのコンセプトの方向性に間違いがないか、簡単なモデルで検証する工程のことです。この場合、実際の社会でスマートコントラクトが使われる前に、イーサリアムのスマコンのように、対象の規模が小さいもので有効性を確認することを言っています。

 

なんだか非常に難しい横文字ばかりで語られていますが、簡単にいうと

「実際の契約が複雑すぎて、スマートコントラクトに載せられないって!?でも大丈夫、リップルならね。」

というわけです。

詳しくは次の章でお話しします。

 

なぜスマートコントラクトは実現しないのか?

 

実際の社会の「契約手続き」というのは、実に複雑なものです。

なぜ複雑かというと、1つの契約にはたいていの場合、多くの会社がかかわっています。お金、顧客、信用情報、サービスの主体(モノや店舗など)。それぞれの会社は、別々のシステムを使っています。

その上で、お互いの情報を使って契約をしようとしているのです。

スマートコントラクトのように、契約システムをまるごと自動化しようとすると、かならず「既存のシステムとの連携」をさせねばなりません。

まったくのゼロから新しいシステムを作り上げるお金なんて、どこもないですからね。

そんなとき、スマートコントラクトを使って「仮想通貨といかに簡単に連携できるか」「優れた技術者をつれてきて、簡単に開発できるか」は、そのまま予算という形で企業にのっかってきます。

リップルのスマートコントラクトCodiusが目指すのは、リップルや他の通貨(ビットコインなど)を、契約プログラムから簡単に使えるようにすることなのです。

Stefanは続けて、次のように語っています。

Bitcoin was released as an integrated payment system that pioneered the blockchain concept including a minimalistic scripting language for smart contracts. After Bitcoin, the technology got its first major upgrade in the form of XRP Ledger, which was the first blockchain to be built on a general purpose key/value map, making it closer to a general purpose database than just a payment system.

(出典:Codius Medium

 

ビットコインは、スマートコントラクトのための必要最小限のスクリプト言語を使った、ブロックチェーンコンセプトの先駆けである統合支払いシステムとしてリリースされました。ビットコインののち、その技術をアップグレードして「汎用データベース」に近づけたものが、XRPレジャーです。XRPレジャーはキー/バリューマップという汎用的な仕組みで構築されています。これはまさに実際の支払いシステムと目的を近しくするものです。

 

Stefanいわく、XRPレジャー(XRP台帳)の時点ですでにビットコインとは目的を分けており、実際の支払いシステムの仕組みに近づけることを目的としていたのですね。

 

Codius実装の仕組みを図解(公式)

こちらは、Codius公式Mediumからの図の引用です。

従来の仮想通貨のしくみが図解されています。イーサリアムやビットコイン、そしてXRPもそうですが、それぞれが独立した構造になっています。

その間をつなぐ橋渡しがなく、イーサリアムの中にスマートコントラクトが実装されていたとしても、それはビットコインやXRPには関係のないことです。

 

Codiusはブロックチェーンに依存しない独立ホストで動く

そしてこちらが、Codiusを使って実装したスマートコントラクトのイメージ図です。

 

 

一番下には「イーサリアム」「ビットコイン」「XRP」がいて、これらはすべて「インターレジャー(Interledger)」に接続されています。

Interledgerはリップルの作った相互台帳システムで、さまざまな仮想通貨や法定通貨(ドルや円)をつなぐことができます。

そして、このInterledgerに接続しているのが、Codiusに管理されたプログラム群です。

Codiusは、特定のブロックチェーン(ビットコインやイーサリアムなど)に依存しない、独立のホストで動きます。

これにより、既存のサービスやAPIとつなげやすくなり、スマートコントラクトのスケールはより大きなものとなります。

 

プログラムが「豆」、Codiusが「さや」

Codiusのように、さまざまなプログラムをパッケージ化(塊として扱う)する仕組みは、コンテナなどと呼ばれます。船や電車に積荷を積むときの「コンテナ」です。

豆にも例えられ、プログラムは「豆」なら、Codiusが「さや」です。

Codiusは、色々なプログラムをパーツとし、ひとまとめにして扱うことができるというイメージですね。

コンテナの良いところは、それぞれのパーツを別の人が開発したり、一部分にだけ既存のシステムを応用して開発できるというところです。

この仕組みには、「pod」と呼ばれるプログラムをパッケージ化する仕組みを使っています。

What is pod?(公式サイト)

 

汎用的な言語に対応、既存システムを取り込みやすい

1つ1つのプログラムは、JavaScriptなどの汎用的な言語(開発できる人が多い言語)でもかけるようになっています。

これは、既に企業などで使われているシステムの応用がしやすいという点で、大きなメリットです。

Codiusでは次のような言語をサポートしています。

  • C++
  • Java
  • JavaScript
  • C#
  • その他

 

まとめ

少し細かい話になってしまいましたが、Codiusでは部品ごとにわけて扱えることで、次のような利点があります。

  • 特定のブロックチェーン(ビットコインやイーサリアム)に依存しない
  • Interledgerと接続して、いろいろな通貨を同等に扱える
  • 仕組み上、既存のシステムとの連携が格段にしやすくなる

 

Codiusの可能性は、既存のシステムと連携させることで広がります。

ですので、今すぐに何かができるというわけではありません。

このプロジェクトに乗ってくれる企業が増え、これから開発が進んでいくことが期待されますね。

スポンサーリンク
bitFlyer ビットコインを始めるなら安心・安全な取引所で
日本で安心できる取引所。

リップルを買える国内取引所

リップルを買うなら国内の取引所が安心です。