IOGブログ, ニュース, ...

スマートコントラクトがやってくる

このページはIOGのブログ記事「Smart contracts – here we come」を翻訳したものです。

スマートコントラクトがやってくる

Alonzoは、カルダノのトークン・アップグレードをベースに、ビジネス・アプリケーションを作るためのツールを開発者に提供します。

By マイケル・ペイトン・ジョーンズ 2021年4月8日

スマートコントラクトの登場

3月の初めに、私たちはMaryを実装しました。これはマルチアセットプロトコルのアップグレードで、ユーザーがCardano上での取引のためにユニークなトークンを作成できるようにするものです。トランザクションメタデータの導入、12月のAllegraとのトークンロック、そしてネイティブトークンの作成により、私たちはCardanoをスマートコントラクトのリーディングプラットフォームとして確立するための基盤を築いています。

次のプロトコルアップグレードであるAlonzoは、これらの能力をさらに高めます。当社のハードフォーク・コンビネーター技術を用いて実装されるアロンゾは、今から約4ヶ月後にスマートコントラクト(デジタル契約)のサポートをカルダノに追加します。これにより、スマートコントラクトや分散型金融(DeFi)のための分散型アプリケーション(DApps)の作成が可能となり、ビジネスや開発者にチャンスが広がります。

これらのアップグレードのネーミングについては、トークンロックにはAllegra(Lord Byronの娘)、マルチアセットサポートにはMary(小説家でShelleyの妻)を選びました。Alonzoは、より現代的な人物であるAlonzo Church(1903-95)に由来しています。チャーチは米国の数学者・論理学者であり、論理学や理論計算機科学の基礎を研究していた。彼はラムダ計算を発明したことでも知られている。ラムダ計算とは、「えんとつ町の問題」が解けないことを証明するための形式的なシステムである。その後、同じ数学者のアラン・チューリングとの共同研究で、ラムダ計算機とチューリング・マシンが同等の能力を持つことを発見し、さまざまな機械的処理による計算を実証した。スマートコントラクトのアップグレードにチャーチの名を冠した理由の一つは、Plutus Core(カルダノのスマートコントラクト言語)がラムダ計算のバリエーションであるからです。

なぜスマートコントラクトなのか?

スマートコントラクトは、世界的な分散型台帳としてのカルダノの進化の次の段階を示すものです。日常のビジネスをサポートする場合、ブロックチェーンは、個人が安全な方法で資金を移動させたり、商品の代金を支払ったりできることを保証しなければなりません。

スマートコントラクトは、複雑な取引を決済したり、資金をエスクローに保持したり、あらかじめ定義された条件の下で資金の移動を確保するために使用できます。Cardanoは、DAppsが台帳と対話して活動を記録し、スマートコントラクトを実行できるようにします。これらのデジタル契約は、取引のストーリーを表現し、資金がどこに行くべきか、どのような条件で送られるのかを指定し、すべての条件が満たされたときにのみ取引を実行します。アロンゾは、このようなアプリケーションをサポートするためのカルダノの基盤を構築します。

アロンゾによるビジネスニーズへの対応

マルチアセットに対応することで、ユーザーはビジネスニーズを満たす独自の通貨を作ることができますが、アロンゾはスマートコントラクトを構築するための汎用的なプラットフォームを導入します。例えば、コレクターズアイテム、クラウドファンディング、オークションなどを扱うことができるようになります。

また、エスクローベースの分散型暗号通貨取引所(DEX)の展開や、中央集権的なステーブルコインをサポートする複雑なアプリケーションの作成(例えば、サプライチェーン内での製品証明のための追跡アプリケーション)など、さまざまな分野で活用できます。トークンロックでは、ユーザーは権利確定期間付きのユーティリティー・トークンを発行することができます。つまり、いくつかのトークンをロックしたり、特定の時間後にリリースされるように凍結したりすることができます。

Plutus Coreのスクリプティング機能

Alonzoでは、Plutus Platformを使ったアプリケーション開発に必要なツールやインフラを追加しています。

形式手法と検証に基づく厳格なアプローチにより、AlonzoはCardano Shelleyで使用されている基本的なマルチシグネチャ・スクリプト言語(multisig)を拡張しています。MultisigはPlutus Core言語にアップグレードされ、より強力で安全なスクリプティングオプションを提供します。Alonzo台帳では、Plutus Coreを使用して強力なスクリプティングを実現するために、EUTXO(extended unspent transaction output)会計モデルを実装しています。

スマートコントラクトのプラットフォームは、安全性と信頼性を兼ね備えていなければなりません。そのため、Plutus Coreのスマートコントラクトを記述するベースとしてHaskellを選びました。Haskellは、開発者がコードを書き、それをPlutus Coreにコンパイルするために使用する高レベルの言語です。

Haskellは1987年から存在しており、他のプログラミング言語と比べて信頼性の高さで際立っています。Haskellで記述することにより、スマートコントラクトは、期待されることを正確に実行するようにプログラムされ、実装前にその正確性をテストすることができます。これは、自動売買や大規模な資金移動を行うアプリケーションにとって重要なことです。

ツールとAPI

開発者は、Cardano上のトランザクション検証を実験し、カスタマイズするための機能的なツールを手に入れることができます。APIライブラリが拡張され、ウォレットや元帳とのやりとりをしながら、Cardano上でPlutus Coreコードの展開と運用ができるようになります。

アロンゾのデプロイメントは複雑なプロセスです。機能的なスマートコントラクトがメインネット上で稼働するようになったら、オフチェーンのインフラを改善して、ソフトウェア開発キットを提供していきます。

現在の状況は?

アロンゾのロードマップ

図1. アロンゾのロードマップ リリース前の4週間はコードが凍結される

3月から4月にかけて、IO Globalチームは、AlonzoのルールをCardanoのノードや台帳のコードと徐々に組み合わせてきました。ノードへのAlonzoの統合が完了すると、カルダノ社は動作するAPIツールとコマンドラインインターフェース(CLI)のサポートを提供します。

4月中旬から5月上旬にかけて、チームはプライベートテストネットの立ち上げに向けてPlutusの開発を進めます。このフェーズでは、当社のパートナー(上級開発者)がプラットフォームをテストし、Cardano上でスマートコントラクトを実行するNFT(non-fungible token)、マーケットプレイス、またはDAppsを作成してデプロイします。このプロセスでは、すべてが効率的に機能するよう、段階的な改善に焦点を当てます。

5月には、Plutusの先駆者たちとの共同作業を開始します。これらの認定されたプログラム研修生は、Plutusアプリケーションを書き、DAppsとDeFiのために本番に投入することで、プラットフォームのテストを続けます。このフェーズでは、台帳、ノード、ウォレットのバックエンドの統合を実行します。また、仕様例や開発者ガイドなどのドキュメントを作成し、公開していきます。

5月から6月にかけては、品質保証とユーザーによるテストを行い、その後、4週間にわたる機能フリーズを実施します。これにより、暗号化された取引所やウォレットは、Alonzoプロトコルのアップデートに備えてアップグレードする時間が確保されます。Alonzoのアップグレード(ハードフォーク)は夏の終わり頃を予定していますが、4月のCardano360ショーで確定した日付を発表する予定です。

より詳細なロードマップについては、チャールズ・ホスキンソン氏による3月のCardano360のプレゼンテーションをご覧ください。

今はエキサイティングな時期ですので、ぜひご期待ください。次回のブログでは、Alonzoの開発を支えているPlutusコンセプトの関係を掘り下げていきます。一方、開発者のウェブサイトでは、Plutus、Marlowe、Glowを使ったプログラミングについて詳しく紹介しています。

お問い合わせ

Contact Us
SIPOのステーキングサービス、Cardano ADA、ADAの購入方法から保管方法についてご興味、ご質問がある方はこちらのフォームからお問い合わせください。24時間以内にメールにてご返信いたします。