AO vs ICP: トップレベルの技術比較 [Community Labs]

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1926720/05384d60-4dc6-4e98-91d9-1251ee46d17e.png)

:::note info
本記事は下記の翻訳となります。
[『AO vs ICP: A Top Level Technical Comparison』](https://www.communitylabs.com/blog/ao-vs-icp-a-top-level-technical-comparison)（by Community Labs）
:::

最近、人気のデータストレージプロトコルである Arweave のチームが、AO を発表しました。これは、分散型ワールドコンピュータの夢に新たな息吹を吹き込む、極めて効率的で柔軟な設計を持つプロトコルです。当然ながら、このプロジェクトは DFinity の Internet Computer Protocol（「ICP」）と比較されています。ICP は革新的なサブネットベースの設計を活用して同様の目標を達成しようとしています。以下の記事では、これら2つの画期的なプロトコルを比較し、なぜ私たちが AO の独自のアプローチが、特に Community Labs で構築している、データ集約型の金融、メディア、AI アプリケーションにとって、最も妥協の少ない分散コンピューティングモデルを提供していると考えているのか、そしてなぜ AO が真の分散型ワールドコンピュータへの最も実現可能な道筋を示していると信じているのかを説明します。

## 柔軟でモジュラーな設計

AO は設計の基礎から、柔軟性、スケーラビリティ、効率性を重視しています。例えば、AO のプロセスは任意のサイズのデータをメモリにロードし、実行して、ネットワークに書き戻すことができます。これにより、あらゆるアプリケーションが AO の計算能力と Arweave の永続的ストレージを活用できます。AO は高度にモジュール化されたアーキテクチャを採用し、無制限の並列処理をサポートし、柔軟なリソース利用を可能にし、データストレージのために Arweave と直接統合されています。さらに、プロセス間および内部のコーディネーションに Messenger Unit（MU）によるメッセージパッシングネットワークを使用することで、コントラクトの自律的な起動（つまり、スケジュールされた 'cron' による相互作用）が可能になっています。

AO の柔軟な分散アプリケーション環境は、ICP を含むほぼすべてのブロックチェーンプロトコルが採用している、より厳格で制限的なアプローチとは対照的です。ICP は高度に構造化されたガバナンス重視の設計を採用しています。AO と同様に、ICP もエンドツーエンドのアプリケーションをホストできる分散コンピューティングプラットフォームの構築を目指していますが、組織化とスケーラビリティのために高度に構造化されたサブネットシステムを使用し、計算のために「canister」モデルを採用し、リソース割り当てにリバースガスモデルを使用しています。Network Nervous System（NNS）を通じたガバナンスに重点を置き、セキュリティと効率性のためにチェーンキー暗号を採用しています。このように、ICP は目的を達成するためにより中央集権的で管理された手法に依存しています。

AO のモジュラーアーキテクチャにより、開発者はシステムの「ブロック」を選択して配置することで、特定のニーズに応じてシステムをカスタマイズできます。これにより、すべてを最初から再構築することなく、システムの一部を変更することが容易になります。AO では、開発者は特定のニーズに最適な VM、シーケンシングモデル、メッセージパッシングのセキュリティ保証、支払いオプションを選択できます。これは、幅広いユースケースとワークロードを促進し、サポートするためです。スケジューラや Messenger Unit などの異なるコンポーネントは、システム全体を変更することなく、入れ替えたり拡張したりすることができます。

## 暗号とコンセンサスのセキュリティ

### ステートモデルの設計

AO のホログラフィックステートモデルでは、ステートは Arweave 上のプロセスへのメッセージログによって暗示されます。これにより、すべてのプロセスのステートを導出するために必要なデータが永続的に利用可能であるため、クロスプロセス間の相互作用を伴うステートの効率的な表現と検証が可能になります。同じメッセージログがあれば、どのノードでも同一のステートを計算できます。Compute Unit（CU）は、必要に応じてメッセージログを処理して現在のステートを計算し、計算結果の暗号署名による証明を提供します。つまり、ステートは必要に応じて、または継続的に計算できます。必要な時に現在のステートを計算できる能力により、中間ステートに対する継続的なコンセンサスの必要性が排除されます。

一方、ICP はエポックベースのステートモデルを採用しています。このアプローチにより、効率的なステート同期、古いデータのガベージコレクション、シームレスなプロトコルアップグレードが可能になります。ステートを Merkle ハッシュツリーとして表現し、認証に閾値署名を使用することで、ICP はノードの迅速な同期とネットワークのスケーラビリティを可能にしながら、ステートの整合性を約束します。

### 暗黙的 vs 明示的ステートモデル

AO のホログラフィックステートモデルアプローチは、ステートをオンチェーンに保存する必要がないという点で、遅延評価の特定の側面と一致します（ただし、計算のタイミングは異なる場合があります - 完全に遅延されるわけではありません）。なぜ遅延評価はより多くのブロックチェーンプロトコルで使用されていないのでしょうか？簡単に言えば、ステートには調整が必要な多くのコンポーネントがあるため、実現が困難だからです。

+ 決定論的な計算 - 同じ入力に対して同じ結果を再現する能力
+ 完全で不変な履歴 - 任意の時点のステートを再構築するための、すべての相互作用/トランザクションの完全で変更不可能な記録
+ 効率的なデータストレージと取得 - 履歴データを効率的に保存してアクセスするためのシステム
+ オンデマンド計算メカニズム - 必要な時にステート計算をトリガーし、いつ計算が必要かを判断する方法

AO のステート表現は暗黙的です。これは、現在のステートを直接オンチェーンで維持または保存する必要がないためです。多くの場合、ステートはオンデマンドで導出されます。ステートを暗黙的に保持することで、AO は単一の統一されたコンピューティング環境において高度な柔軟性と効率性を実現しながら、必要に応じて任意の履歴ステートを再構築して検証できることを保証します。ただし、CU には、プロセスの「[checkpoints](https://hackmd.io/@YTnQkIXiSgyoU2Gnfq6BGg/r1Y3oDrda?utm_source=preview-mode&utm_medium=rec#Checkpoint)」を永続化する方法があり、これにより AO は特定のポイントでプロセスのステートを取得して保存できることに注意することが重要です。

ICP はステート管理に対してより明示的なアプローチを取り、複製されたステートマシンとエポックベースのモデルを基礎としています。また、ICP はクロスサブネット通信ストリーム、ユーザー相互作用のための入力履歴、各ラウンドで暗号的に認証されるステートのサブセットを包含する、より広範なシステムステートを維持します。グローバルステートは Merkle ツリーを使用して効率的にエンコードおよび検証され、部分的な更新とレプリカ間の簡略化された同期が可能になります。各エポックは、サブネットのステートと暗号プロトコルを管理するための重要な情報を含むサマリーブロックで始まります。各エポックの終わりには、ステートの「チェックポイント」として機能する Catch-Up Package（CUP）が生成されます。

各 canister のステート（永続メモリ、サイクル残高など）は明示的に保存され更新されるため、ICP は常に最新のステートを維持できます。これは、すべてのステート変更がすぐに処理され反映されることを意味します。

### 実装

システムのセキュリティは最も弱いセキュリティ保証によって制限されることが多いため、AO の柔軟性が脆弱性を引き起こす可能性があるかどうかを問うのは理にかなっています。これは、統合ポイントでの潜在的な攻撃面を防ぐために、堅牢なセキュリティモデルが必要な理由です。AO-Sec Origin は、経済的セキュリティレイヤーとして機能するメカニズム（経済的インセンティブとペナルティを制御）です。これは、この潜在的な懸念に対して非常に興味深いアプローチを取っています。AO-Sec Origin プロセスの様々なセキュリティプロパティは、カスタムビルドされたセキュリティメカニズムにダウンストリームで適用されます。これは、セキュリティを異なるレベルでカスタマイズできながら、親プロセスからプロパティを継承できることを意味します。

AO は、データの可用性と整合性の基盤として、Arweave の Byzantine Fault Tolerant（BFT）コンセンサスアルゴリズムを活用しています。すべてのメッセージ（[ANS-104](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-104.md) 準拠のデータアイテム）と割り当ては Arweave 上に永続化されます。Scheduler Unit（SU）はメッセージ割り当てに署名し、Compute Unit（CU）は計算結果の署名付き証明を提供し、プロセスは入力メッセージの署名を検証できます。暗号化ハッシュチェーンは、メッセージをリンクしてデータの整合性を確保するために使用されます（改ざん検知可能な相互作用のログ）。AO は、すべてのノードがすべての計算を実行する必要なく、トラストレスで検証可能な計算を可能にします。詳細については、[ガイド](https://www.communitylabs.com/blog/a-quick-guide-to-ao-the-hyper-parallel-computer?utm_source=Community+Labs+Blog&utm_medium=Post&utm_campaign=AO+vs+IC+Blog&utm_id=AO+vs+IC+Blog)をご覧ください。

ICP は、リーダー選出のためのランダムビーコンを組み込み、ステート認証やサブネット間通信を含む様々なセキュリティ機能に閾値 Boneh-Lynn-Shacham（BLS）署名を使用しています。ICP のチェーンキー暗号により、効率的なステート管理と検証が可能になり、catch-up package（CUP）により迅速なステート同期が可能になります。

## ガバナンス

### AO のミニマリズム

AO のガバナンスアプローチの重要な特徴は、トークンの供給や配布を制御する中央トレジャリーや権限が存在しないことです。多くのブロックチェーンプロジェクトとは異なり、ガバナンス投票を通じてトークンの供給を変更したり資金を配分したりするメカニズムはありません。代わりに、AO はネットワークの成長と発展を導くために、市場のダイナミクスと経済的インセンティブに依存しています。

中央集権的な制御なしにエコシステムの開発をサポートするために、AO は2つの主要なメカニズムを実装しています。

+ *Permissionless Ecosystem Funding:* 開発者がアプリケーションに流動性を引き付け、ブリッジ資産のネイティブ収益から直接資金を受け取ることを可能にします。
+ *Permaweb Ecosystem Development Guild（PEDG）:* ブリッジ資産の収益によって資金提供される、AO のインフラストラクチャの開発と維持に協力するエコシステム組織の連合。

グローバルルールが存在しないことで、ユーザーとプロセスは独自のセキュリティパラメータとメカニズムを選択できます。このアプローチにより、構築されているアプリケーションに合わせて調整されたセキュリティと運用要件を持つ、異なるアプリケーション、ユースケース、ワークロードなどが共存できる多様なエコシステムが可能になります。

### ICP のための NNS

ICP は Network Nervous System（NNS）と呼ばれる分散型ガバナンスモデルを採用しています。これは DAO として機能します。このシステムにより、中央集権的な権限ではなく、ステークホルダーが意思決定を行うことができます。トークン保有者は、ICP トークンを「[neurons](https://internetcomputer.org/docs/current/concepts/はい、続きを翻訳いたします。

governance)」というエンティティにステーキングすることでガバナンスに参加できます。ガバナンスモデルは、より長期のステーキング期間を持つニューロンにより多くの投票権を割り当てることで、長期的なコミットメントを奨励します。

ステークホルダーは、ICP の運営と開発の様々な側面について提案し、投票することができます。提案は、適切な参加を確保するために最小限の承認率要件を設けた単純多数決投票システムによって採択されます。NNS は ICP の特別なサブネット上で動作し、いくつかの主要なコンポーネントで構成されています。この構造により、透明性が高く、効率的で分散化された意思決定プロセスが可能になります。

ICP のガバナンスモデルは、より多くの ICP トークンをより長期間ステーキングする人々により多くの投票権を割り当てます。このモデルは長期的なコミットメントを奨励することを目指していますが、ジニ係数の高さ（アドレス残高の高い不平等）につながる可能性があります。時間ベースの不平等（ある程度）とガバナンス権力の集中は、より大きな不平等を引き起こす可能性があります。私たちは、AO が採用するアプローチがこれらの懸念を軽減すると考えています。

### トークン分配

以下は、ICP トークンのローンチ時のトークン分配を示しています。一般市民向けのトークン配分が非常に少ないことに注目してください（初期の貢献者やノード運営者を除く）。

![](https://cdn.prod.website-files.com/66c607043f775347e75460f6/66edaccbe20ccd023fe35a60_66e0a192711c4b5b96e879e7_gUzhCI4PVzSKOBFFofmPMEZFjxU.avif)

出典：ICP トークンのローンチ時の分配 ([Messari](https://messari.io/report/an-introduction-to-dfinity-and-the-internet-computer))

[AO のフェアローンチ](https://www.communitylabs.com/blog/airdrops-vs-ao-s-fair-launch)は、すべてをコミュニティに提供するというミッションを反映しています。総供給量の36%は時間をかけて AR 保有者に分配され（長期保有のインセンティブ化）、残りの64%は経済成長の推進に対する報酬として分配されます（他のネットワークからの資産のブリッジングなど）。上記のチャートで示されているように、AO のフェアローンチは ICP とは異なり、プライベートセール、チームメンバー、初期投資家へのトークン配分を**含みません**。すべてがコミュニティに向けられています。

## 結論

ワールドコンピュータの構築を目指す上で、おそらく「唯一の正しい道」は存在しません。AO と ICP は、革新的な設計、情熱的なコミュニティ、そして無数の潜在的なアプリケーションを持つ2つのプロジェクトです。どちらも従来のブロックチェーンの限界を克服し、改善されたスケーラビリティ、効率性、機能性を提供することを目指しています。しかし、これらの目標は異なる手段によって達成され、異なる設計哲学を反映し、結果として異なる競争優位性をもたらしています。

Community Labs では、AO が提供できる柔軟性とスケーラビリティから恩恵を受けるアプリケーションを構築していますが、AO の成功は最終的に、柔軟でスケーラブルな設計とネットワークの結束性およびセキュリティの必要性のバランスをいかに効果的に取れるか、そして斬新な経済モデルが実践でどれだけうまく機能するかにかかっています。私たちは楽観的です。AO の革新的なモジュール性、柔軟なアーキテクチャ、フェアなトークン分配へのアプローチは、分散型プラットフォームの中で最も妥協の少ない形で、他のブロックチェーンプラットフォームが直面する多くの課題に対処していると信じています。これらの特徴と、永続的なデータストレージのための Arweave との統合を組み合わせることで、AO は次世代の分散アプリケーションとサービスを実現する最も有望な候補となっていると考えています。

AO についてもっと詳しく知りたいですか？この[クイックガイド](https://www.communitylabs.com/blog/a-quick-guide-to-ao-the-hyper-parallel-computer?utm_source=Community+Labs+Blog&utm_medium=Post&utm_campaign=AO+vs+IC+Blog&utm_id=AO+vs+IC+Blog)、[仕様書](https://ao.g8way.io/#/read)、[ホワイトペーパー](https://5z7leszqicjtb6bjtij34ipnwjcwk3owtp7szjirboxmwudpd2tq.arweave.net/7n6ySzBAkzD4KZoTviHtskVlbdab_yylEQuuy1BvHqc)をご覧ください。

AO アプリケーションを試してみたい場合は、[LiquidOps](https://www.liquidops.io/) と [Astro](https://www.astrousd.com/?utm_source=Community+Labs+Blog&utm_medium=Post&utm_campaign=AO+vs+IC+Blog&utm_id=AO+vs+IC+Blog) をチェックしてください。

---

---

:::note info
【Arweave Japan とは】
Arweave Japan は Arweave / AO の日本語ビルダーエコシステム構築を目的とした分散型組織です。

【​Arweave / AO とは？】
​Arweave は無制限にスケール可能な分散型ストレージであり、AO は Arweave 上に構築された無制限にスケール可能な分散型スーパーコンピュータです。Arweave と AO を使って既存のブロックチェーンでは実現不可能であった実用的なプロダクトが開発できます。

イーサリアム L1 のリステーキングによってセキュリティが担保され、TVL はローンチ数ヶ月で 1000 億円近くまで上がり、今後数兆円規模の市場が期待されます。完全フェアローンチされた AO のトークン設計によって、この流動性は AO 上のプロジェクトが活用することができ、ビットコインと同じ半減スケジュールでミントされる AO トークンは開発者やプロジェクトが受け取れる仕組みとなっています。

​Web2 を置き換えるレベルで実用的なプロジェクトが構築できる唯一無二の分散型プロトコル AO で開発することはグローバルの第一線で活躍する非常に大きなチャンスとなっています。

【Social Links】

- [Website](https://arweave.jp)
- [X(Twitter)](https://twitter.com/arweavejp)
- [Discord Community](https://discord.com/invite/bB4N7fAMmp)
- [Github](https://github.com/arweavejp)

【Blog】

- [Zenn Publication](https://dev.to/arweavejp)
- [Note Magazine](https://note.com/kyohei_nft/m/m35c7443e98d0/)
- [dev[.]to](https://dev.to/arweavejp)

![1080x360.jpeg](https://images.lumacdn.com/cdn-cgi/image/format=auto,fit=cover,dpr=2,quality=75,width=1500/editor-images/wj/43c64e53-3361-44d5-a05c-155e4fbf3188)

:::