イーサリアム財団、API決済のプライバシー保護する「zkAPI」公開

ゼロ知識証明でAPI利用と決済者の身元を分離

イーサリアム財団(Ethereum Foundation)が、APIの利用料金を支払うユーザーの身元とAPI利用を切り離す仕組み「zkAPI」を10月1日に公式ブログで発表した。

zkAPIはオープン・アノニミティ・プロジェクト(Open Anonymity Project)がイーサリアム財団と共同開発したもので、現在イーサリアム(Ethereum)のメインネット上で稼働している。

APIとは、異なるソフトウェアやサービス同士が機能やデータをやり取りするための仕組みだ。例えば生成AIでは、開発者がAPIを通じてAIモデルの機能を自身のアプリやサービスに組み込める。こうしたAPIでは一般的に「APIキー」と呼ばれる認証情報が使われ、APIキーはユーザーのアカウントなどにひもづけられる。

イーサリアム財団は、現在のAI向けAPIにおけるプライバシー上の課題を挙げている。現在の仕組みでは、APIキーがユーザーのアカウントに、そのアカウントが決済手段にひもづいている。さらにAIへ送信したプロンプトも利用記録として蓄積されるため、API提供者は一連の利用履歴を同じユーザーのものとして関連付けられるとのことだ。プロンプトには健康や金融、個人的な悩みなどの情報が含まれる場合もある。

zkAPIでは、ユーザーがAPI利用料金に充てる資金を、イーサリアム上の保管庫となるスマートコントラクトへあらかじめ預け入れる。その後、ユーザーの残高は「プライベートノート(private note)」と呼ばれる、ユーザーだけが利用できるデジタルキャッシュのような形で管理される。プライベートノートは、元の預け入れとの関係を決済レイヤーから追跡できないよう設計されている。

ユーザーはAPIの利用料金を支払う際、本人情報の代わりに「ゼロ知識証明(Zero-Knowledge Proof:ZKP)」を使用する。ゼロ知識証明とは、ある情報そのものを相手に明かすことなく、その情報が正しいことを証明できる暗号技術だ。zkAPIでは、利用料金を支払える十分な残高があり、同じ残高が二重に使用されていないことを、どの残高を保有しているかなどを明かさずに証明できる。

zkAPIでは、決済を処理する経路とAIとの通信経路を分離する「ランタイムキーモード(runtime-key mode)」が用意されている。同モードでは、ユーザーの端末上で動作するクライアントが支払い証明をzkAPIサーバーへ送信する。zkAPIサーバーは証明を確認すると、有効期限とドル建ての利用上限が設定されたAPIキーを発行する。ユーザーのプロンプトは、このAPIキーを使って端末からAI提供者へ直接送信される。

APIキーの利用上限は、支払いに使う金額をあらかじめ確保する役割を持つ。APIキーの有効期限が切れると、AI提供者はそのAPIキーによる実際の利用額を署名付きの利用記録として残す。zkAPIサーバーはこの記録をもとに、設定した上限額ではなく実際の利用額をユーザーの残高から差し引く。この仕組みにより、APIを呼び出すたびに支払い証明を作成する必要はなく、1回の証明で一連のAPI利用をカバーできる。

ランタイムキーモードでは、zkAPIサーバーが把握するのは、有効な支払いが存在することと、一連のAPI利用にかかった金額だ。zkAPIサーバーは、ユーザーの身元やプロンプトの内容、どの預け入れから料金が支払われたかは把握しない。一方、AI提供者はプロンプトと回答を確認できるが、その料金を誰が支払っているかは把握できないとのことだ。

zkAPIには、zkAPIサーバーがAPI提供者へのリクエストを中継する「プロキシモード(proxy mode)」も用意されている。同モードは運用が容易な一方、中継するzkAPIサーバーが通信内容を確認できる。

zkAPIは最初の用途としてAIの利用を想定している。また同じ仕組みは、AIチャットやAIエージェントのほか、ブロックチェーンRPC、画像・動画生成、VPN、マシン間サービスなど、利用量に応じて課金する他のサービスにも利用できるとのことだ。

ただし、zkAPIはAPIへ送信する内容そのものを秘匿する仕組みではない。API提供者はリクエストの内容に加え、IPアドレスなどのネットワーク情報を確認できる。またプロンプトに同じ個人情報や文章の書き方、過去の会話履歴などが含まれていれば、異なる利用を同じユーザーのものとして関連付けられる可能性もあるとのことだ。

ユーザーが預け入れた資金は、zkAPIの運営者が直接保管するのではなく、イーサリアム上のスマートコントラクトで管理される。すべてのzkAPIサーバーが停止した場合でも、ユーザー自身で残金をイーサリアム上から引き出せるとのこと。

なおzkAPIは、ダビデ・クラピス(Davide Crapis)氏とイーサリアム共同創業者のヴィタリック・ブテリン(Vitalik Buterin)氏が研究フォーラム「イーサリアム・リサーチ(Ethereum Research)」で公開した「ZK API usage credits」の設計を実装したものだ。

参考:ブログ
画像:PIXTA

関連ニュース

関連するキーワード

この記事の著者・インタビューイ

渡邉洋輔

「あたらしい経済」編集部 記者 ブロックチェーンおよびデジタル資産分野を専門とし情報発信を行っている。オンチェーンデータや流動性構造など、市場設計の観点からのリサーチにも取り組んでいる。