Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】What is Google AP2 Protocol : Step by Step Guide with Examples

2025年09月19日に「Dev.to」が公開したITニュース「What is Google AP2 Protocol : Step by Step Guide with Examples」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

Google AP2プロトコルは、AIエージェントがユーザーに代わって行う支払いを安全にする仕組みだ。ユーザーの意図や承認を「指令書」というデジタル契約で明確にし、AIによる取引の「認可・真偽・責任」を保証。AI時代の信頼できる支払い環境を提供する。

ITニュース解説

Google AP2プロトコルは、人工知能(AI)エージェントがユーザーに代わって支払いを行うための、オープンで特定の企業に依存しない新しい技術ルールである。これは、Googleが金融サービスや技術業界の多くの組織と協力して開発し、AIエージェントが開始する支払いを安全かつ監査可能な形で実現することを目的としている。これまでの支払いシステムは人間が直接操作することを前提としていたが、AIエージェントが自律的に取引を行うことで、セキュリティや信頼性に関して新たな課題が生じる。AP2は、これらの課題に対応し、AIエージェントと販売者の間で安全で規則に準拠した取引を行うための共通の言語を提供し、システムがバラバラになるのを防ぐ。

AP2が解決する主要な課題は三つある。一つは「承認(Authorization)」で、ユーザーがエージェントに特定の購入を行う権限を実際に与えたことを証明する。二つ目は「真正性(Authenticity)」で、エージェントからの要求がユーザーの真の意図を正確に反映していることを販売者が検証できるようにする。三つ目は「説明責任(Accountability)」で、不正や誤った取引が発生した場合に、誰が責任を負うべきかを明確にすることだ。AP2は、クレジットカード、ステーブルコイン、リアルタイム銀行振込など幅広い支払い方法をサポートし、ユーザー、販売者、金融機関にとって一貫した安全な体験を保証する。

AP2は「マンデート(Mandate)」という仕組みで信頼を構築する。マンデートは、ユーザーの指示を示す、改ざん防止機能を備えたデジタル契約で、暗号技術によって署名されている。これは「検証可能な資格情報(Verifiable Credentials: VCs)」によって署名され、すべての取引において基本的な証拠となる。マンデートは、ユーザーが直接関与する「リアルタイム購入」と、ユーザーがその場にいない「委任されたタスク」の二つのシナリオをサポートする。リアルタイム購入では、ユーザーがエージェントに指示した内容が「Intent Mandate(意図マンデート)」として記録され、その後ユーザーの承認により、具体的な購入内容と価格を記録した「Cart Mandate(カートマンデート)」が署名される。委任されたタスクでは、ユーザーが事前に価格上限などのルールを詳細に設定した「Intent Mandate」に署名し、エージェントが条件を満たした際に自動で「Cart Mandate」を生成する。どちらのシナリオでも、支払い方法からカートマンデート、そして意図マンデートへとつながる証拠の連鎖が確立され、承認、真正性、説明責任のための否認できない監査証跡が作成される。

このAP2プロトコルは、Javaなどのプログラミング言語でも実装されている。公式のPythonサンプル実装と連携するように、JavaではIntentMandate、CartMandate、PaymentMandateが、それぞれ制約や参照、暗号証明を持つ検証可能な資格情報として実装される。また、ショッピングエージェント、マーチャントエージェント、決済処理プロセッサといった役割を果たすエージェントクラスが定義され、支払いの作成、承認、完了、返金、状況照会といったライフサイクルがサポートされる。セキュリティと監査のために、署名の検証、マンデートの連鎖、監査ログの記録が厳しく行われる。エージェント間の通信にはJSON-RPCとA2Aメッセージングが使用され、相互運用性と安全性が確保されている。

AIエージェントによる商取引の典型的な流れは次のようになる。まず、ユーザーが「100ドル以下のランニングシューズを買って」のようにエージェントに購入指示を出すと、この意図と制約が「Intent Mandate」として作成される。次に、エージェントが商品を見つけてカートを作成し、ユーザーの確認と承認を経て「Cart Mandate」が作成され、購入内容が確定する。カートが承認されると、エージェントは支払いを開始し、支払いに関する詳細を「Payment Mandate」として作成し、決済処理プロセッサに送る。決済処理プロセッサは、このPayment Mandateに基づいて支払いの作成、承認、完了、返金、状況照会を処理する。この一連のプロセスを通じて、すべてのマンデートは署名や参照、有効期限が正しく検証され、取引の追跡可能性を確保するための監査ログが記録される。エージェント、販売者、決済処理プロセッサの間では、マンデートやメッセージが安全なプロトコルで交換され、ユーザーが管理し、安全で、監査可能なエージェントによる商取引が実現される。

Javaのコード例では、ユーザーの指示を受けてIntentMandateが作成され、そこには指示内容や金額上限などが設定される。エージェントが提案する具体的な購入内容をまとめるCartMandateは、商品の詳細や価格、そして元のIntentMandateを参照して作られる。支払いを行う際にはPaymentMandateが生成され、支払い額や支払い方法、そしてCartMandateを参照して決済処理プロセッサに送られる。これらのマンデートは、検証機能によってその正当性が確認され、一連の支払い処理は、決済処理プロセッサが担い、支払いの作成から完了までを管理する。これらの実装は、AP2プロトコルの設計思想と、公式のPythonサンプルに厳密に沿っており、エージェント間の安全で一貫した支払い体験の実現を目指している。

関連コンテンツ

関連IT用語