Anomaの概要
Anoma(アノマ)は、インテント中心のアーキテクチャ(Intent-centric architecture)です。トランザクションの抽象化を行うことができるアーキテクチャであり、ユーザーは自分の意図をもとにトランザクションを実行することができます。
インテント中心のアーキテクチャと対比できるのが、2024年現在で主流になっているブロックチェーン中心のアーキテクチャです。既存の分散型アプリケーションは、ブロックチェーンの存在を中心に展開されています。この構造は、開発者とユーザーともに大きな制約を強いられることになります。開発者にとっては設計空間に大幅な制約が生じ、複雑なものを実現することは困難です。また、ユーザーは「何をすべきか」を考えなければならず、アプリケーションを使うにあたりブロックチェーンを意識せざるを得ません。このような状況は、劣悪なUXをもたらします。
ユーザーがアプリケーションを使うとき、そこには必ず意図があります。それらは「友人に100ドルを送金したい」あるいは「10%の金利を得たい」といった、本来ブロックチェーンそのものとは関係ないものです。Anomaでは、このようなユーザーの「◯◯したい」という意図をアーキテクチャレベルで実行できるようにし、標準化されたインテントのための1つの言語とインテントを作成するためのインターフェイスを提供します。
Anomaでは、自身のアーキテクチャを第3世代として位置づけています。第1世代は、制約されたスクリプトによる決済が可能なアーキテクチャ(Bitcoin)、第2世代は、プログラマブル決済が可能なアーキテクチャ(Ethereum)、そしてEthereum上では完全に実現できないアプリケーションを実現する第2.5世代のアーキテクチャです。Anomaはそれらより上に位置しています。
インテント中心のアーキテクチャ
ユーザーの意図を実現まで導くために、Anomaはこれまでのレイヤー1/2と異なる、トランザクションを抽象化するアーキテクチャを開発しました。
イメージをしやすくするために、まずはEthereumエコシステムを例に、ユーザーの意図がどのように実現されるのかを見ていきます。
アプリケーションを実行するためには、ユーザーは何かしらの意図を持っています。しかし、Ethereumのエコシステムにおいて、それらの意図はアプリケーション固有ものであり、ユーザーは「◯◯をしたいので、△△を実行する」ということを考えなければいけません。例えば「ETHをUSDにしたい」という意図がある場合は、ユーザー自身がUniswapを選択してトランザクションを実行します。
このような状況は、既存のWeb2アプリケーションに匹敵する複雑なアプリケーションの実現を困難にします。より複雑なアプリケーションを実現するための手段として、専用チェーンを作る方法があるものの、結局のところはアプリケーション固有の意図を扱うことには変わりありません。
Anomaでは、ユーザーが本来もっている意図を”インテント”としてシステムに反映させ、それらを一般化して解決する仕組みを実現することで、既存のアーキテクチャの枠組みから抜け出します。
Anomaにおけるインテントの処理は以下の通りです:
- インテントの一般化(Generalized intents):インテントの内容に限定されず、任意のインテントを処理する。
- カウンターパーティの発見(Counterparty discovery):ネットワーク内で個々のインテントを伝播させていき、ソルバー(Solver)にアクセスする。
- 解決(Solving):ソルバーが、有効なソリューションを提案してトランザクションを実行する。
- 決済(Settlement):オンチェーンでソリューションを検証し、トランザクションを確定させる。
ユーザーがインテントを作成すると、それらは一般化され、ソルバーによってよって有効なソリューションが提案され、最終的に実行されます。どのようなインテントが有効なソリューションとなるかはソルバー次第であるため、すべてのソルバーが同一のソリューションを提案するとは限りません。
さらに、インテントは構成可能になっており、セキュリティモデル(ドメイン)を飛び越えて一般化することができるため、アプリケーションはもはやブロックチェーンに特化したものではなくなります。また、このアーキテクチャでは3パターンの構成をとることができます。
- Anomaを決済およびデータ可用性で使用する(レイヤー1)
- Anomaを決済まで使用する(ソブリンチェーン、レイヤー1.5)
- 決済は他のチェーンに委ねる(レイヤー2)
Anomaのトークン
Anomaのトークンに関する情報は公開されていません(2024年6月15日時点)。