OpenPGP.js and GopenPGP are easier to test with other encryption suites

Proton Team

Share this page

As part of our mission to make security, privacy, and freedom accessible to all, we maintain two open source cryptography libraries that make it easier for developers to apply strong encryption in their projects. We have been the maintainers of OpenPGP.js(new window) since 2016 and GopenPGP(new window) since 2019, meaning we are responsible for ensuring these repositories are up-to-date, secure, and accessible.

It is also important that these encryption systems are interoperable — i.e., that they can interact with other cryptographic libraries. The more interoperable libraries are, the more widely they can be used.

That’s why today we’re pleased to announce that we integrated our cryptography libraries into the OpenPGP interoperability test suite(new window). This suite, maintained by the Sequoia PGP(new window) team, makes it easier and faster to run compatibility tests between different open source encryption libraries and share the results of those tests. Developers can use this suite to ensure their encrypted apps are compatible with encrypted services that use different implementations of OpenPGP.

Improved testing with other OpenPGP implementations

This portion is rather technical; however, the important thing to take away is that our encryption team added a specific interface that is shared between different types of OpenPGP software. Even if these other OpenPGP implementations are written in different programming languages, this shared command-line interface lets developers test them together.

To integrate our libraries into the test suite, we implemented the Stateless OpenPGP (“sop”) command line interface(new window) for OpenPGP.js(new window) (sop-openpgp-js(new window), expanding on the work by Sequoia) and GopenPGP(new window) (gosop(new window)). We released both implementations under open source licenses.

The standardized “sop” interface provides a common ground for testing the compatibility between OpenPGP implementations written in several languages, such as Rust, Python, and C++. The results of these tests(new window) show that there is good interoperability between OpenPGP.js, GopenPGP, and the other tested libraries, with widespread support for strong cipher suites, elliptic-curve cryptography, and authenticated ciphers. This analysis exposed a few minor interoperability bugs as well, which we have since fixed.

Why Proton loves open source

We are big advocates for open source. As physicists and scientists, we appreciate that open source forces you to “show your work.” That is why we made all user-facing Proton apps, both for Proton Mail(new window) and Proton VPN(new window), open source and have published all the results of third-party security audits. By taking these steps, any security researcher can verify our code.

We also believe in decentralization and open collaboration, which open source fosters. We have even worked with members of the Proton community on our Linux command line tool for Proton VPN(new window)

Adding our libraries to the interoperability test suite is a great initiative to drive the OpenPGP protocol forward. It is now even easier for other privacy-focused software and app developers to incorporate strong encryption into their projects. The more apps that are encrypted, the more private data will be protected.

You can get a free secure email account from Proton Mail here.

We also provide a free VPN service(new window) to protect your privacy. Proton Mail and Proton VPN are funded by community contributions. If you would like to support our development efforts, you can upgrade to a paid plan(new window). Thank you for your support.


Feel free to share your feedback and questions with us via our official social media channels on Twitter(new window) and Reddit(new window).

Protect your privacy with Proton
Get a free account

Share this page

Proton Team

We are scientists, engineers, and specialists from around the world drawn together by a shared vision of protecting freedom and privacy online. Proton was born out of a desire to build an internet that puts people before profits, and we're working to create a world where everyone is in control of their digital lives.

Related articles

The first month of 2023 has brought brutal layoffs from Big Tech, a potential ban of TikTok in the US, and another Twitter breach. But the biggest development of this new year has to be the ascent of ChatGPT.  The chatbot can produce remarkably huma
Hackers were able to steal account details from over 200 million Twitter users and posted the database on a hacking forum in early January 2023. These details include users’ email addresses and Twitter handles, allowing people to potentially identify
From your online shopping receipts to financial statements, your emails contain a great deal of sensitive information about your life, interests, and daily schedule. If you’re concerned about your online privacy, it’s therefore vital to keep your inb
At Proton, we’re committed to building privacy-focused products that are convenient to use and improve your productivity. Last year, we released the new mobile apps for Proton Calendar and Proton Drive, letting you manage your schedule and upload imp
Most email services aren’t secure and limit attachment file sizes, but there are ways to send large files securely. If you’ve ever tried attaching multiple images or video files to an email, you’ll know that it doesn’t always work. We explain ways t
Email wasn’t initially designed to be secure. From spam and phishing attempts to malware, unethical marketers and cybercriminals try to undermine the security and privacy of your inbox every day. Since your inbox stores plenty of sensitive informatio