Passepartout

Your go-to app for VPN and privacy.

About

The Team

I’m Davide, the “team” behind every aspect of Passepartout.

Bear with me because my duties entail, among others:

How Passepartout was born

Today, Passepartout is a comprehensive networking/privacy tool for iPhone, iPad, Mac, and Apple TV.

How did it start?

During my days at PIA, I wondered why there were so many VPN providers doing the same over and over with different skins: an app with a VPN on/off toggle.

I came up with the idea of a single key that would open multiple doors, be it different protocols, providers, or platforms. That’s what the word Passepartout stands for in French, a master key.

Frustrated by the abandonment of OpenVPN Connect, I first published Passepartout in 2018 as an OpenVPN client for iOS based on TunnelKit, an alternative implementation of OpenVPN that I started in 2017. Through the years, the app has become multiplatform, and WireGuard support was also added.

The old Mac app

The “new” TunnelKit

Unfortunately, TunnelKit was not designed for the original concept of Passepartout, so the app ended up lagging behind its limitations. Beyond that, the library architecture was in general very primitive, tightly coupled to the underlying implementations, and hard to test.

That’s why I dedicated a relevant part of 2023/2024 to a completely new library, PassepartoutKit, a huge rewrite that was, however, worth the pain. It’s a well-thought architecture that leverages the experience I gained with TunnelKit and WireGuardKit for OpenVPN and WireGuard connectivity.

PassepartoutKit is a game changer in that:

Contrary to TunnelKit, which is available under the GPL, PassepartoutKit is currently closed-source.

Feel free to contact me for licensing or further information.

A glance at PassepartoutKit documentation

The story behind TunnelKit

TunnelKit is a custom Swift/ObjC implementation of the OpenVPN protocol, written from scratch and now superseded by PassepartoutKit.

It all started in 2017, when a former colleague at Private Internet Access sent me some Ruby snippets that would connect to an OpenVPN server. He would then ask me: “would you port this to the iPhone?”

Well, not only did I, but the guy left the company a few weeks later. I took care of the project alone for the next 7 years.

TunnelKit is the only stable OpenVPN implementation in native Swift/ObjC out there and, believe it or not, it is relied on by millions of users, be it via my apps or providers like Hide.me, PIA, or ProtonVPN.

A pretty big project, huh?

An old excerpt from TunnelKit