X402の解説:AIエージェントのためのHTTPネイティブ・マイクロペイメント
X402仕様は、標準的なHTTP 402 Payment Requiredステータスを再利用することで、通常のAPIコールをオンチェーンのマイクロペイメント(少額決済)へと変換します。これにより、AIエージェントは人間を介さずにLLMクエリやデータフィードの料金を決済できるようになり、プロバイダーは独自の請求システムを構築することなく、リクエストごとに課金できるようになります。
なぜAIエージェントに決済プロトコルが必要なのか
自律型エージェントは、言語モデル、ウェブ検索ツール、独自のデータソースを組み合わせて動作します。その組み合わせの一つひとつにコストがかかります。モデルへのトークン単位の料金や、マーケットデータAPIへのコール単位の料金などです。現在のビジネスモデルは、サブスクリプションアカウントに紐付けられたAPIキー、手動でのクレジットチャージ、あるいは事後請求に依存しています。これらの手法は、自律型エージェントの「人間を介さない」という約束を損ない、プロバイダーに運用上のオーバーヘッドをもたらします。
X402は、その中間的な解決策を提供します。それは、他のHTTPコールと同様に見えるリクエスト・レスポンス・フローでありながら、パブリック・ブロックチェーンに記録される決済ステップが組み込まれているものです。唯一の要件は、クライアントがサーバーの指定するチェーン上でトランザクションに署名し、ブロードキャストできることです。
X402ハンドシェイクの詳細
- 初期リクエスト – エージェントは、有料エンドポイントに対して通常のGETまたはPOSTを送信します。特別なヘッダーは必要ありません。
- サーバーが402で応答 – レスポンスにはステータス402が含まれ、以下の項目をリストしたJSONボディが返されます:
amount– サーバーが期待する料金(最小トークン単位)token– ERC-20(または同等の)コントラクトアドレスchain– 決済を記録すべきブロックチェーンの識別子- オプションの
nonce– リプレイ攻撃を防ぐためのユニークな値
- クライアントが決済を準備 – エージェントは、トークンアドレスとチェーンが自身のポリシー(例:信頼できるチェーンのみ)に適合しているかを確認します。その後、必要な金額をサーバー指定のアドレスに送金するトランザクションを作成し、秘密鍵で署名してブロードキャストします。
- 決済ハッシュの送信 – トランザクションハッシュが取得できたら、クライアントは元のリクエストを再度送信します。この際、ハッシュを含む
X-Paymentヘッダーを追加します。ペイロードの内容は変更しません。 - サーバーがオンチェーンで検証 – サーバーはブロックチェーンを確認し、金額、トークン、チェーン、およびnonceが一致する確定済みの送金を探します。一致するものが見つかれば、リクエストされたデータをステータス200 OKで返します。
カスタムヘッダーをサポートし、ブロックチェーンSDKを呼び出せるHTTPクライアントライブラリであれば、どのようなものでもこれらのステップを実行できます。新しいトランスポートプロトコルやカスタムソケットレイヤーは必要ありません。
注意すべきトレードオフ
- レイテンシ – パブリックチェーンの確定には遅延が生じます。
- ガス代 – 安価なチェーンであってもガス代がかかります。0.001ドル未満の決済は経済的に見合わない可能性があります。
- 複雑さ – エージェントはトランザクションの失敗やチェーンの再編成(reorganization)に対処する必要があります。堅牢なリトライロジックが不可欠です。
- セキュリティ – nonceはリプレイ攻撃を防ぎますが、エージェントは依然として秘密鍵を保護し、無関係なサービス間でそれらを使い回さないようにする必要があります。
