Skip to content

Back to the catalog

Ethereum Foundation Launches zkAPI for Private AI Payments
bankless.comarticle

Ethereum Foundation Launches zkAPI for Private AI Payments

The Ethereum Foundation and the Open Anonymity Project launched zkAPI, a system that lets users prepay into an on-chain USDC vault and then generate zero-knowledge proofs to unlock short-lived, spend-capped API keys for AI models (and other metered services) without tying usage back to a billing identity. It ships a local client that mimics the OpenAI and Ollama APIs so existing apps can switch to account-free access with minimal changes, plus an in-browser client called OA Chat; funds remain withdrawable on-chain even if zkAPI's own servers go down. The design, originally sketched by Davide Crapis and Vitalik Buterin on Ethereum Research, still leaves IP address and prompt content visible to providers, so the team recommends Tor for stronger privacy.

TL;DR Ethereum Foundation's zkAPI uses on-chain prepaid vaults and ZK proofs to give apps OpenAI/Ollama-compatible, account-free access to AI APIs without linking prompts to a billing identity.
Document

What it claims

zkAPI is live on Ethereum mainnet. It is the first working build of the Crapis/Buterin Ethereum Research design. The page's core claim is a split in what each party learns. The payment server never sees prompts. The AI provider never sees who is paying. The ZK proof shows that you paid without revealing which deposit in the vault is yours, so your anonymity comes from the pool of other depositors.

How it works

flowchart LR
  U[User device] -->|one-time USDC deposit| V[Vault contract, mainnet]
  U -->|ZK proof of payment| P[Payment server]
  P -->|short-lived, spend-capped key| U
  U -->|key + prompt, IP visible| A[AI / API provider]
  V -.->|withdraw if servers down| U
  1. Fund the on-chain vault once. The live vault holds USDC.
  2. Your device generates a proof that you deposited, without revealing which deposit.
  3. The payment server checks the proof and issues a short-lived key with a spending cap. It sees no prompts.
  4. You call the provider with that key. The provider sees the key and your traffic, but no billing identity.

The page names metered uses beyond AI: RPC queries, image generation, VPN bandwidth, and agent-to-agent payments, all without accounts.

How to use it

The page names the access paths: a local client that exposes OpenAI- and Ollama-compatible interfaces, and the in-browser OA Chat. It gives no install commands, repository link, contract address, fees, or cap sizes. You will need to find those at the source before adopting it.

Limits

  • Only the payment link is hidden. Providers still see your IP address and prompt content. The team suggests routing through Tor.
  • Prompt content can re-link sessions. The page warns that reused context, such as personal details or a recognisable writing style, can tie separate sessions back together even without a billing link. Apps that inject stable user profiles or system context into every request would undo the unlinkability. This failure mode is not in the existing summary.
  • Anonymity depends on the vault's depositor pool. The proof hides which deposit is yours among all deposits. The page gives no figures on vault size or usage.
  • The source is a news brief. Bankless calls zkAPI "an early, partial fix." There is no technical spec, threat model, audit status, or performance data on the page.

Organisations named here

  • Ethereum Foundation
  • Open Anonymity Project
  • Ethereum
  • OpenAI
  • Davide Crapis
  • Ollama
  • Tor
  • Vitalik Buterin

Technologies named here

  • OpenAI API
  • Ollama
  • USDC
  • Ethereum
  • zero-knowledge proofs