エポックな日々, シリーズ連載:進化するカルダノ・ベーシック, ...

『進化するカルダノ・ベーシック』[#14]カルダノのスケーラビリティ戦略[その2]EUTXOのトランザクション処理方法:ニュース動向 & ステーキング状況 in エポック443

『進化するカルダノ・ベーシック』[#14]カルダノのスケーラビリティ戦略[その2]EUTXOのトランザクション処理方法

はじめに

カルダノのスケーラビリティにおいて、よく議論されることとして、トランザクションの処理速度およびパフォーマンスがあります。これ以外に相互運用性や開発手法の効率化などがあり、カルダノはそのプラットフォーム採用の最大化に向けて総合的なスケーラビリティのためのアプローチを持っています。最終的にカルダノは30億人の財布として機能しグローバルな金融基盤として機能するために、またマイクロファイナンスを展開可能なスケーラブルなプラットフォームの構築を進めています。2022年にカルダノに必要な基盤が出揃ってきたタイミングで、2023年から2024年のスケーラビリティ戦略は、トランザクションの処理速度およびパフォーマンスの向上は大変重要な課題となっています。

カルダノ・ブロックチェーンのトランザクションの処理の方法は、他のブロックチェーン、特にスマートコントラクト・プラットフォームであるイーサリアムとの比較において、大きな特徴と違いが見られます。そういう意味でカルダノの会計モデルとその特性を理解することは、今後のカルダノのスケーラビリティ戦略を理解する上で重要なポイントとなります。さらに、一般的なweb2システムにおけるIT業界や他のブロックチェーン同士の比較においてよく用いられるメトリクス(定期的にシステムのヘルス情報やパフォーマンス情報を取得し、測定値をグループ化したもの)として、「TPS(1秒あたりのトランザクション数)」というのがありますが、Web2システムとブロックチェーンシステムの違いやブロックチェーン同士の会計モデルなどの違いから、その単純な比較方法は適さない事が指摘されています。

そこで今回はカルダノのスケーラビリティを理解する上で、重要な視点であるカルダノの拡張UTXOにおけるトランザクションの処理方法とその優位性について解説していきます。

以前に紹介した記事「シリーズ連載『進化するカルダノ・ベーシック』[#8]未来のブロックチェーンを牽引するEUTXOとは?その優位性を徹底解説」でも同じような論点が解説されているため重複する点がありますが、ここでは改めてもう少し簡潔にスケーラビリティ(特にトランザクション処理の仕方)に焦点を絞って解説していきたいと思います。その後、カルダノのレイヤー1における最適化、インプットエンドーサー、サイドチェーンによるスケーラビリティ戦略について連載していく予定です。

参考記事:

なお、カルダノのスケーラビリティの概要については、前回特集した「[#14]カルダノのスケーラビリティ戦略[その1]BASHO v2.0」をご覧ください。

参考記事:

ブロックチェーンの異なる会計モデルであるUTxOとアカウントベースのトランザクション処理方法の違い

まず、カルダノのトランザクション処理の方法を理解するために、ブロックチェーンの二つの主要ブロックチェーンであるビットコインのUTXO(未使用のトランザクションアウトプット)モデルとイーサリアムのアカウント(口座)ベースのモデルの比較から理解する方法があります。なぜならカルダノはビットコインのUTXOをベースに拡張され、イーサリアムのスマートコントラクト技術を統合したカルダノ独自の会計モデルである「EUTXOモデル」を採用しているからです。

UTXOモデルとアカウントベースのモデルを使用するネットワーク間のトランザクションの違いについて解説します。それぞれは、ブロックチェーンプラットフォームでの使用に影響を与える利点とトレードオフのセットを持っていると言えます。よって両者にはブロックチェーンネットワーク上でのトランザクションの構築と管理に対する下記のような2つの異なるアプローチがあります。

トランザクション構造と状態表現:

  • UTXOモデル: UTXOモデルでは、トランザクションは入力と出力で構成されます。各入力は前のトランザクションの未使用の出力を参照し、各出力は金額と受信者のアドレスを指定します。ブロックチェーンの状態は、すべての未使用のトランザクションアウトプット(UTXOs)のセットによって表されます。
  • アカウントベースのモデル: アカウントベースのモデルでは、トランザクションは伝統的な銀行振込のように動作し、送信者と受信者のアカウントの残高を直接調整します。状態は、ブロックチェーン上のアカウントの残高とその他の関連データ(例:契約コード、契約ストレージ)のリストによって表されます。

並行性と並列性:

  • UTXOモデル: UTXOモデルは、トランザクション処理における高い度合いの並行性と並列性を可能にします。これは、重複するUTXOsセットに依存しないトランザクションが独立して処理されることができるためです。
  • アカウントベースのモデル: アカウントモデルは、複数のトランザクションが同時に同じアカウントの状態にアクセスしようとする場合、並列処理に問題が生じる可能性があり、順序を維持し、二重支払いを防ぐためにnonceのようなメカニズムが必要となります。

プライバシー:

  • UTXOモデル: UTXOモデルは、各トランザクションが特定のユーザーアカウントと入力および出力を直接関連付けないため、優れたプライバシー機能を提供できます。このモデルは、Confidential TransactionsおよびMimblewimbleのようなプライバシー強化技術の実装を可能にします。
  • アカウントベースのモデル: アカウントモデルは、トランザクションがアカウントの残高に直接リンクされているため、他のネットワーク参加者による検査が可能であり、プライバシーが低くなる可能性があります。

シンプルさと柔軟性:

  • UTXOモデル: UTXOモデルは、物理的な現金の流れを反映し、よりシンプルで直感的と見なされることがよくあります。ただし、このシンプルさは、複雑なスマートコントラクトの実装の容易さを制限する可能性があります。
  • アカウントベースのモデル: アカウントモデルは、アカウントの状態を直接操作することで、開発者が複雑なスマートコントラクトを作成および管理するのが容易になる、より柔軟なモデルを提供する可能性があります。

スマートコントラクト機能:

  • UTXOモデル: UTXOベースのブロックチェーン上でスマートコントラクト機能を構築することは可能ですが、アカウントベースのモデルに比べてより複雑であるとしばしば見なされています。カルダノは、UTXOモデルを利用しながら堅牢なスマートコントラクト機能を提供するブロックチェーンネットワークの注目すべき例です。これについて詳しく後述します。
  • アカウントベースのモデル: イーサリアムのようなアカウントベースのブロックチェーンは、スマートコントラクト開発の豊かな歴史を持っており、複雑な契約合意を作成するためのより直接的な環境を提供しています。

確定的最終性(ファイナリティ):

  • UTXOモデル: UTXOモデルのシンプルなトランザクション構造は、トランザクションの不可逆性に強い保証が必要なアプリケーションにとって有益な確定的最終性を促進する可能性があります。
  • アカウントベースのモデル: アカウントベースのモデルは、トランザクション間の潜在的な依存関係のため、より複雑な最終性条件を持つ可能性があります。

経済モデル:

  • UTXOモデル: UTXOベースのネットワークの経済モデルは、物理的資産の転送を密接に反映しており、シンプルで予測可能である可能性があります。
  • アカウントベースのモデル: アカウントモデルは、スマートコントラクト環境でのトランザクション料の管理に関して、より複雑な経済モデルを持つ可能性があります。

これらを初心者にわかりやすいように、例(イメージ)を上げながら別の方法で説明してみます。

UTXOモデル(未使用のトランザクションアウトプットモデル)とアカウントベースのモデルの違いを理解するために、現金の箱(UTXOモデル)と銀行の口座(アカウントベースのモデル)を実際に持ってそれを使っているとイメージしてみてください。

UTXOモデル(現金の箱):

  • お金をもらうたびに、それを別々の現金の束(たとえば、異なる封筒)として箱に追加します。
  • 誰かにお金を支払いたい場合、箱からいくつかの封筒を選び、お金を支払い、残りのお釣りを新しい封筒として箱に戻します。
  • 封筒からのお金は一度しか使えず、使ったらなくなります。
  • このモデルは、異なる封筒から正確なお金を使って支払いをするようなイメージです。

アカウントベースのモデル(銀行の口座):

  • 合計残高のある単一のアカウントを持っています。
  • お金を受け取ると、アカウントの残高が増えます。
  • 誰かにお金を支払うと、アカウントの残高が減ります。
  • 単一の残高もしくは合計額からお金が出入りするシンプルな銀行の口座を持っているようなイメージでしょう。

まとめると、UTXOモデルはお金の異なる封筒が入った箱を持っていて、支払いをするために封筒を選んで使うイメージです。アカウントベースのモデルは、お金が単一の残高から出入りするシンプルな銀行の口座のようなものです。それぞれには利点があります。UTXOモデルは、よりプライベートで、同時に複数のトランザクションを処理するのに適していますが、アカウントベースのモデルは、スマートコントラクトや自動契約を管理するのにシンプルで簡単です。

これらの違いは、ブロックチェーン技術の進化を反映しており、異なるネットワークは、特定の目標とサポートしようとするアプリケーションの種類に基づいて、いずれかのモデルを選択するかもしれません。

それでは次にカルダノの会計モデルであるEUTXO(拡張UTXO)について見ていきましょう。

カルダノの拡張された未使用トランザクションアウトプットモデル:EUTXO

カルダノの拡張された未使用トランザクションアウトプット(EUTXO:拡張EUTXO)モデルは、先ほど説明したビットコインで採用されている伝統的なUTXOモデルを強化する新しいブロックチェーン会計のアプローチです。これによりイーサリアムのスマートコントラクト機能を実現し、スケーラブルな分散型アプリの構築と展開を可能にしています。カルダノのEUTXOモデルは下記のような特徴を持っています。

カルダノのEUTXOモデルの特徴

  • EUTXOモデルは、アカウントベースのモデルで可能なことと同様にスマートコントラクトを管理する能力とUTXOモデルの原則を組み合わせています。
  • このハイブリッドモデルは、スマートコントラクトの実行と確定的なトランザクションメカニズムを可能にし、さまざまな他の利点を提供します。
  • Alonzoアップグレードにより導入されたEUTXOモデルは、マルチアセットとスマートコントラクトをサポートし、UTXOモデルの機能を拡張します。
  • EUTXOモデルはカルダノのセトルメント層で動作し、スマートコントラクトは計算層で使用されます。

カルダノのEUTXOモデルは、UTXOおよびアカウントベースのモデルの両方の強みを組み合わせており、スマートコントラクトの開発と実行、マルチアセットの管理、および確定的なトランザクションの確保に対する堅固なフレームワークを提供します。この革新的な会計モデルは、幅広い分散型アプリケーションと金融操作を促進するための有利な位置にカルダノを位置付けていると言えます。

このようにEUTXOモデルを使用することで、カルダノはUTXOモデルのコアな利点を妥協することなくマルチアセットとスマートコントラクトをサポートし、幅広い分散型アプリケーションと金融ソリューションのプラットフォームを提供できます。

参考記事:

Understanding the Extended UTXO model
The EUTXO Handbook

EUTXOのトランザクション処理方法

それではもう少し深くEUTXOにおけるトランザクション処理の方法についてみていきましょう。

先ほど述べたようにカルダノは、ビットコインのUTXOモデルとイーサリアムのスマートコントラクトを扱える機能を組み合わせ、Extended(拡張) UTXO(EUTXO)会計モデルの開発を行ってきました。

UTXOモデルには端的に言えば例えば次のようような利点があります。

  • より優れたスケーラビリティとプライバシーが可能
  • 取引ロジックが簡素化され、取引の検証がよりシンプルになる

ビットコインのUTXOモデルでは、スマートコントラクトを使ったより複雑な取引を行う際に、いくつかの制限があり、イーサリアムやカルダノのようにスマートコントラクト・プラットフォームとしての位置付けにはなっていません。しかし、取引の追跡やプライバシーの強化など、UTXOには利点があります。これが、カルダノがEUTXOモデルを採用している理由です。

そいてカルダノのレイヤー1(メインチェーン)は、より良いパフォーマンスと柔軟性を確保するために、価値の会計と計算を分離することを目的として、カルダノ決済層(CSL)およびカルダノ計算層(CCL)という2つの異なる層に構造化されています。イーサリアムでは、会計層と計算層が一緒になっています。カルダノでは、この2つの層を計算層と決済層に分けており、スマートコントラクトは計算層に存在することになり、より柔軟な対応が可能になります。

カルダノ決済層(CSL):

  • CSLは主に、ネットワーク内のユーザー間でカルダノのネイティブ暗号通貨であるADAの転送を管理することに関与しています。
  • この層は、プルーフ・オブ・ステークアルゴリズムを採用しており、ユーザーは自分のADAを担保としてステーキングすることでネットワーク上のトランザクションを検証できます。これは、ビットコインなどの他の暗号通貨で使用されているプルーフ・オブ・ワークアルゴリズムに比べてエネルギー効率が高く、トランザクションの処理時間を短縮するとされています。
  • この層は、トランザクションを追跡する点でビットコインに似ています。

カルダノ計算層(CCL):

  • CCLは、ネットワーク上でスマートコントラクトを実行する任務を担っており、拡張可能性とセキュリティ機能が向上したイサーリアムブロックチェーンに似ています。
  • これは、幅広いアプリケーションとサービスの開発を容易にするために、柔軟でモジュール式に設計されています。
  • CCLは、カルダノプラットフォームでスマートコントラクトを作成するために特別に設計された堅牢なプログラミング言語であるPlutus(Haskell)を採用しています。

参考記事:

これらの層の分割は、カルダノネットワークの基盤を形成し、ユーザー間でADAを転送し、分散型アプリケーションを実行するための安全で拡張可能なプラットフォームを提供します。2層システムを利用することで、カルダノは決済層と計算層の両方の利点を提供でき、幅広いユースケースに適した多目的なプラットフォームとなっています。この層分けされたアーキテクチャは、ネットワークの混雑、トランザクションの遅延、および単一層のブロックチェーンプラットフォームでしばしば発生する高い手数料といった一般的なブロックチェーンの問題に対処します。

カルダノ・スケーラビリティの最大利点の一つであるコンカレンシー(並行処理)とTPS

先ほど述べたようにカルダノのEUTXOには、一見イーサリアムのスマートコントラクト・プラットフォームとして提供できるサービスは同じように見えますが、違いが多く見られ、この違いが現在進められているスケーラビリティ戦略にも大きな特徴と同時に新たな可能性を与えています。そしてその特性上イーサリアムとカルダノのトランザクション処理における最も大きな違いとして議論されるのが、コンカレンシー(並行処理)とTPS(秒間トランザクション数)です。特にコンカレンシー(並行処理)はカルダノのスケーラビリティの特性の一つであり、カルダノがよりスケーリングしてく上での優勢性を表現する重要な機能の一つとなるものです。

これによりカルダノのEUTXOモデルは、システム障害なしに複数のオペレーションを処理することを可能にし、安全で汎用性の高い環境を提供します。また、並列化に対するさまざまなアプローチを容易にし、単一トランザクションに制限のあるモデルと比較して、一つのブロックで、より多くのトランザクションを処理することを可能にします。

そもそも一般的にブロックチェーンは、トランザクション処理の不変性と透明性を異なる方法で実現します。どのブロックチェーンシステムも、安全でありながら迅速な操作処理という、増え続けるニーズに応えるために、以下のような特性とメトリクス(定期的にシステムのヘルス情報やパフォーマンス情報を取得し、測定値をグループ化したもの)を備えている必要があります。

  • スループット – システムが一定の時間内に実行できる操作の数。例えば、1秒間に処理されるトランザクションやスマートコントラクトの数などがこれに該当。
  • パフォーマンス – システムがどれだけ速く動作するか。パフォーマンスは、トランザクションまたはスマートコントラクトの実行時間を測定。
  • スケーラビリティ – ネットワークに負荷をかけたり、パフォーマンスの特性に影響を与えたりすることなく、システムが複数の処理を実行する能力のこと。

並列性を高めることで、最終的には個々の処理の性能を維持したままシステムのスループットを向上させることができますが、このようなスケーラビリティは常にコンテンション(競争、競合状態)の度合いによって制限されます。

スケーラビリティを考える際には、システムの特性として、同時性、並列性、競合性を区別します。並行性とは、複数のアクターがお互いに干渉することなく、あるタスクを進行させるために必要なものです。並列性とは、複数のアクターが互いに干渉することなく、同時にタスクを進行させることです。競合は、それらの複数のアクターが同時または並行して作業している間に、お互いに干渉する場合に発生します。

並行処理の理解

並行処理は、システムのパフォーマンス、スループット、または応答性を向上させる場合もあれば、そうでない場合もあります。並行処理の量は、実行可能な同時処理の最大数を制限します。

UTXOベースのブロックチェーンで実際のパフォーマンスを向上させるには、プロセッサや他のアクターが複数のアクションを同時に実行できる必要があります。並行性のレベルが高いほど、可能な最大の並列性が高くなります。このようなアプローチは、パフォーマンスの向上とスループットにつながります。また、(イーサリアムのような)アカウントベースのシステムに比べて大きな利点があります。

TPSでは測れないブロックチェーンのスケーラビリティ

IT業界でよく用いられる指標としてのTPS(秒間トランザクション数)は、ネットワークが1秒間に処理できるトランザクションの数を示す指標です。しかし、ブロックチェーン業界では、1つのトランザクションで複数のアセットを複数の受信者に送信することができるため、TPSは適切ではありません。カルダノを含む多くのネットワークでは、DEXなどでよく見られるように、1つのトランザクションで複数のアセットを複数の受信者に送信することができます。そのため、ブロックチェーンネットワークにおいては、TPSを慎重に使用し、他の指標に置き換える必要があるでしょう。

参考記事:

最終的にはEUTXOが未来を支配するモデルになる

カルダノの生みの親であるチャールズ・ホスキンソン氏は動画『Whiteboard: DApps and Development』で、やがて『最終的にはEUTXOが未来を支配するモデルになる』と述べています。

カルダノの台帳モデルはUTXOモデルを拡張し、UTXOモデルの核となる利点を損なうことなく、マルチアセットとスマートコントラクトをサポートしており、イーサリアムと同等もしくはそれ以上の柔軟性と拡張性など、多くの利点を提供することを目指していると同時に、イーサリアムのような他のアカウントベースのブロックチェーンとは異なる分散型アプリケーション(DApps)のプログラミングパラダイムを利用しています。

例えば、EUTXOは、スマートコントラクトの実行コストの予測可能性(不愉快な驚きがないこと)を可能にする(有効なトランザクションに必要な手数料を、投稿前に正確に予測できる)より高いセキュリティを提供し、その結果、並列化に対する異なるアプローチを提供します。これは、イーサリアムで使用されているアカウントベースのモデルなどにはないユニークな機能です。

さらにこのEUTXOベースのカルダノの特徴を最大限に引き出し、最大限のセキュリティ、スケーリングと機能の拡張を成し遂げることで、例えば、トランザクションの手数料を安価に維持しながら、安全性を維持しつつパフォーマンス、スケーラビリティを拡張することが可能になります。

次回は、具体的にカルダノ・スケーラビリティ戦略であるレイヤー1をスケーラブルにする方法についてみていきます。

これまでの記事「シリーズ連載:進化するカルダノ・ベーシック」はこちらをご覧ください。

もしこの記事が気に入っていただけましたら、SIPO、SIPO2、SIPO3への委任をどうぞよろしくお願いいたします10ADA以上の少量からでもステーキングが可能です。ステーキングについて知りたい方は、下記の記事をご参考ください。

ステーキング(委任)とは?カルダノ分散型台帳システムによるステーキングの魅力とその方法:2021版Q&A:カルダノ、ステーキングに関する基本的な説明集ダイダロスマニュアルヨロイウォレット Chromeブラウザ機能拡張版マニュアル

ニュース動向 in エポック443

チャールズ・ホスキンソン氏動画「Something a Little New」要約・翻訳

イーサリアムがSECから不当に逃れたかどうかについての懸念、そしてSECがイーサリアムの人々に影響を受けてXRPを追求したかどうかについての懸念を説明

IOGがカルダノ・ステーキングメカニズムにおけるminPoolCostパラメータを340 Adaから170 Adaに引き下げるというパラメータ委員会の推奨を実施すると発表

IOGは、カルダノ財団とエマーゴと協力して、カルダノのステーキングメカニズムにおけるminPoolCostパラメータを340 Adaから170 Adaに引き下げるというパラメータ委員会の推奨を実施します。この変更はUTC:10月27日21:44:51 (日本時間:10月28日6:44:51)に効果を発揮します。

パラメータ変更有効日:
エポック445=Vasilエポック8010月28日 午前6時44分頃

minPoolCstパラメータは、ステークプールがエポックの報酬から配当する前に収集しなければならない最低固定費を指します​。このパラメータは、報酬共有スキームの一部として導入され、シビルアタックに対する追加の保護を提供する目的があります​。

参考記事:https://developers.cardano.org/docs/governance/cardano-improvement-proposals/cip-0082/#:~:text=minPoolCost%20sets%20a%20minimum%20fixed,provide%20additional%20sybil%20attack%20protection

IOGはカルダノ財団のフォーラムに「IOGのPCP-001に関するパラメータ委員会推奨への回答」についての記事を公開し、パラメータ変更提案(PCP)プロセスへの参加を推奨し、委員会からのさらなる推奨を楽しみにしていると伝えています。

これによりSPOはminPoolCost推奨ミニマムコスト(最低固定費)を170ADAまで変更することが可能になります。

週刊開発レポート:2023年10月20日
Axo Testnetがカルダノで開始

10月19日、AXOテストネットがカルダノ上で始動しました。プロジェクトは以前はMaladexとして知られ、2021年に構築が開始され、2022年9月28日にAXOにブランド変更されました。

ステーキング状況 in エポック443

エポック444開始時点ステーキング動向

SIPO、SIPO2、SIPO3エポック443ステーキング報告
SIPOエポック443ステーキング報告
SIPO2エポック443ステーキング報告
SIPO3エポック443ステーキング報告
[SIPO]10300個目のブロック生成に成功

カルダノエコシステムとSITION

お問い合わせ

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

最新投稿