Researchers Recover Hidden Reasoning Steps from Encrypted AI API Calls


TL;DR

  • Trace Recovery: Alexander Panfilov and seven coauthors report recovering provider-decrypted reasoning text from tested AI APIs, making opaque fields in shared agent logs a data-exposure risk.
  • Public Logs: The team reconstructed 315,320 reasoning blocks from 6,708 public agent logs and found 704 distinct privacy artifacts in genuine non-benchmark sessions.
  • Limited Scope: The experiments did not establish broken encryption, provider-system access, malicious exploitation, or faithful access to a model’s latent computation.
  • Developer Action: Developers should treat opaque reasoning fields as secrets, remove them from shared logs, and rotate any exposed credentials found inside.

A team of eight researchers reports that encrypted reasoning blocks returned by major AI model APIs can sometimes be replayed to a compatible, less guarded model, which then transcribes the provider-decrypted text. The experiments covered combinations of models within Anthropic, OpenAI, and Google APIs. A separate scan of public development logs found secrets and personal information inside opaque blocks, including material absent from the visible conversations.

Alexander Panfilov and seven coauthors published the work as an arXiv version-one preprint. The team combined researchers from Germany’s University of Tübingen, Max Planck Institute, MATS Research, and Snyk. The researchers recovered text carried through particular API workflows; they did not access provider infrastructure or encryption keys themselves. No malicious campaign using the method was established. API clients can carry hidden model context into a later request.

How the Replay Exposes Hidden Text

Reasoning models can generate intermediate scratch text before returning a visible answer. Some APIs keep the full trace hidden while sending the client an opaque block that preserves context for a later call. The client returns that block to the provider, which can decrypt or verify it while rebuilding the model’s context. This raw hidden text differs from the structured summaries that products sometimes show users. For example, Since censoring its o3 reasoning model, OpenAI’s ChatGPT presents summaries rather than raw chain-of-thought. While chatbots usually show only a short summary, its opaque message blocks retain different, more detailed text.

Google’s Gemini API and OpenAI’s stateless call mode both let clients return opaque state, but their behaviors differ. Gemini returns thought signatures that clients send back with the associated content. For OpenAI stateless calls, developers can return opaque reasoning items and encrypted content

Recovering text required more than possession of random ciphertext. The researchers needed an unmodified block that the provider would accept in another request, a model within the same provider that could receive the block, and a less guarded model that could be induced to repeat the decrypted content. They also needed enough output capacity and, in some cases, repeated attempts. The provider performed the decryption for its model; the researchers did not crack this encryption.