X402の解説:AIエージェントのためのHTTPネイティブ・マイクロペイメント

X402仕様は、標準的なHTTP 402 Payment Requiredステータスを再利用することで、通常のAPIコールをオンチェーンのマイクロペイメント(少額決済)へと変換します。これにより、AIエージェントは人間を介さずにLLMクエリやデータフィードの料金を決済できるようになり、プロバイダーは独自の請求システムを構築することなく、リクエストごとに課金できるようになります。

なぜAIエージェントに決済プロトコルが必要なのか

自律型エージェントは、言語モデル、ウェブ検索ツール、独自のデータソースを組み合わせて動作します。その組み合わせの一つひとつにコストがかかります。モデルへのトークン単位の料金や、マーケットデータAPIへのコール単位の料金などです。現在のビジネスモデルは、サブスクリプションアカウントに紐付けられたAPIキー、手動でのクレジットチャージ、あるいは事後請求に依存しています。これらの手法は、自律型エージェントの「人間を介さない」という約束を損ない、プロバイダーに運用上のオーバーヘッドをもたらします。

X402は、その中間的な解決策を提供します。それは、他のHTTPコールと同様に見えるリクエスト・レスポンス・フローでありながら、パブリック・ブロックチェーンに記録される決済ステップが組み込まれているものです。唯一の要件は、クライアントがサーバーの指定するチェーン上でトランザクションに署名し、ブロードキャストできることです。

X402ハンドシェイクの詳細

  1. 初期リクエスト – エージェントは、有料エンドポイントに対して通常のGETまたはPOSTを送信します。特別なヘッダーは必要ありません。
  2. サーバーが402で応答 – レスポンスにはステータス402が含まれ、以下の項目をリストしたJSONボディが返されます:
    • amount – サーバーが期待する料金(最小トークン単位)
    • token – ERC-20(または同等の)コントラクトアドレス
    • chain – 決済を記録すべきブロックチェーンの識別子
    • オプションの nonce – リプレイ攻撃を防ぐためのユニークな値
  3. クライアントが決済を準備 – エージェントは、トークンアドレスとチェーンが自身のポリシー(例:信頼できるチェーンのみ)に適合しているかを確認します。その後、必要な金額をサーバー指定のアドレスに送金するトランザクションを作成し、秘密鍵で署名してブロードキャストします。
  4. 決済ハッシュの送信 – トランザクションハッシュが取得できたら、クライアントは元のリクエストを再度送信します。この際、ハッシュを含む X-Payment ヘッダーを追加します。ペイロードの内容は変更しません。
  5. サーバーがオンチェーンで検証 – サーバーはブロックチェーンを確認し、金額、トークン、チェーン、およびnonceが一致する確定済みの送金を探します。一致するものが見つかれば、リクエストされたデータをステータス200 OKで返します。

カスタムヘッダーをサポートし、ブロックチェーンSDKを呼び出せるHTTPクライアントライブラリであれば、どのようなものでもこれらのステップを実行できます。新しいトランスポートプロトコルやカスタムソケットレイヤーは必要ありません。

注意すべきトレードオフ

  • レイテンシ – パブリックチェーンの確定には遅延が生じます。
  • ガス代 – 安価なチェーンであってもガス代がかかります。0.001ドル未満の決済は経済的に見合わない可能性があります。
  • 複雑さ – エージェントはトランザクションの失敗やチェーンの再編成(reorganization)に対処する必要があります。堅牢なリトライロジックが不可欠です。
  • セキュリティ – nonceはリプレイ攻撃を防ぎますが、エージェントは依然として秘密鍵を保護し、無関係なサービス間でそれらを使い回さないようにする必要があります。