Every time you use a privacy service like Apple’s iCloud Private Relay, you’re trusting a system designed so that no single company can see both who you are and what you’re doing online. Systems built using protocols such as Oblivious HTTP (OHTTP) and MASQUE can do this by splitting trust across independently operated infrastructure.
However, that privacy promise comes at a cost: When something goes awry, it’s hard to tell where. A request might touch several separate systems on its way to its destination, each run by a different operator, with no single party able to see the whole picture. Tracing a fault means coordinating across all of them, while the traffic itself is encrypted and encoded in a way that makes manual inspection slow and error-prone.
Cloudflare, the company that provides much of the internet’s plumbing to keep sites and apps running, is better positioned than most to solve that problem. The company operates Privacy Proxy and Privacy Gateway, which are essentially the trust-splitting infrastructure behind privacy tools such as Apple’s internet privacy service, Microsoft’s Edge Secure Network VPN, and many others.
Apple, for example, runs one half of the relay itself, while Cloudflare’s Privacy Proxy product runs the other. Each side only ever gets half the picture: Apple’s side of the relay can tell where a request is coming from, but has no way to read what site it’s headed to; Cloudflare’s side doesn’t receive the user’s original IP address, so it cannot link the destination back to the user through the relay. Put the two together, and you get the guarantee: Nobody, including Apple or Cloudflare themselves, can connect a specific user to a specific destination.
But this is also exactly why troubleshooting is so difficult. The visibility needed to diagnose a fault is the same visibility the system is purpose-built to deny. With that in mind, Cloudflare has now released “privacy-client” (pvcli), a command-line debugger for OHTTP and, eventually, MASQUE traffic, under an MIT license.
Closing the gap
The idea behind pvcli is to address a problem that only larger companies have the resources to solve themselves. Testing and debugging this kind of split-trust infrastructure requires deep protocol expertise and custom-built tooling, the kind of investment companies the size of Apple and Microsoft can afford to make, but which puts the technology out of reach for smaller teams.
“Debugging privacy protocols where different operators need to operate different pieces of the protocol infrastructure is extremely difficult.”
Fisher Darling, systems engineer at Cloudflare, gave an example which involved onboarding health app Flo Health onto Cloudflare’s OHTTP relay: Cloudflare shipped its side, Flo shipped its side, and the integration “mostly worked” — but Darling says the two companies spent much time addressing operational edge cases neither had anticipated.
“Debugging privacy protocols where different operators need to operate different pieces of the protocol infrastructure is extremely difficult,” Darling tells The New Stack. “It’s a lot of manual work, custom scripts, and trying to troubleshoot without much information.”
That’s where pvcli enters the fray — it’s a way for companies “not even close to Apple or Microsoft-sized,” as Darling puts it, to test and debug privacy-proxied traffic without first becoming protocol experts or writing their own tooling from scratch.
Developers can run pvcli from the command line against their own infrastructure, or test it against any open service such as ohttp.info — a sandbox that lets anyone try the tool out before wiring it into a real deployment.
Built with agents in mind
Debugging tools built for humans typically assume a person is reading the output, running commands one at a time, and reasoning about what went wrong. Darling says pvcli was built with a different user in mind too: AI agents.
As AI systems handle more personal data, they create new privacy challenges.
“A huge issue in the AI ecosystem at the moment is: how can we run inference on a user’s personal data, in a privacy preserving manner, without leaking that information to the inference provider?,” Darling says.
There’s no single fix for that — the answer is a “combination of protocols and technologies,” as Darling puts it, spanning the likes of OHTTP, Confidential Virtual Machines, Binary Transparency logs, and so on.
OHTTP is one piece of that puzzle, and it’s the piece pvcli is built to debug at launch. Its command syntax is modeled closely on curl, a widely used command-line tool, making it easy for an agent to construct and debug requests on its own.
“Pvcli was explicitly designed for agent-based debugging,” Darling says. “It just so happens that humans also appreciate an interface that feels familiar to curl’s.”
“Pvcli was explicitly designed for agent-based debugging. It just so happens that humans also appreciate an interface that feels familiar to curl’s.”
The open source factor
As with many open-source tools, pvcli started out as an internal project at Cloudflare, with the assumption that it would eventually end up in the community.
“Our philosophy is that a better internet is built collaboratively, so open-sourcing it was an easy decision,” Darling says.
“A better internet is built collaboratively, so open-sourcing it was an easy decision.”
Cloudflare has mainly used it to debug and test its own privacy products, though ahead of this release, Darling confirms it was tested with an unnamed set of customers during a beta phase.
In terms of who’s going to get the most use out of pvcli, well, Darling reckons it’s really any company that “wants to protect users by separating identity from request content,” though it may find a more natural home in certain sectors.
“You could make a case that this is important in any vertical, but especially so for health, finance, or other heavily regulated verticals,” Darling says.
Group Created with Sketch.
0 Comments
Log in to join the conversation.No comments yet. Be the first to share your thoughts.