Proton
An image of Proton Mail's open source encryption libraries.

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

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(nowe okno) since 2016 and GopenPGP(nowe okno) 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(nowe okno). This suite, maintained by the Sequoia PGP(nowe okno) 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(nowe okno) for OpenPGP.js(nowe okno) (sop-openpgp-js(nowe okno), expanding on the work by Sequoia) and GopenPGP(nowe okno) (gosop(nowe okno)). 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(nowe okno) 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(nowe okno) and Proton VPN(nowe okno), 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(nowe okno)

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(nowe okno) 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(nowe okno). Thank you for your support.


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

Powiązane artykuły

how to create a business email account
en
This article explains how to create a business email account that’s secure by default using Proton Mail.
A cover image for a Proton blog about how to safely share your wifi password - image shows a wifi symbol with a button saying 'share' with a key symbol
en
  • Przewodniki dot. prywatności
Is it safe to share Wi-Fi passwords in a text? Here’s how to share your Wi-Fi password easily and securely on any device, from any location.
A Proton blog cover image showing a phone screen with an empty one time password code field
en
  • Przewodniki dot. prywatności
One time passwords are a common method for authenticating your identity – are they safe? We explain what they are and how to use them safely.
en
In response to popular demand, our privacy-first AI writing assistant Proton Scribe is now available for free on our Duo and Family plans, in nine different languages.
en
  • Przewodniki dot. prywatności
It’s easy to understand Bitcoin if you know a few simple concepts. This article explains how Bitcoin works and how to start using it.
A collection of images demonstrating the in-product experience for Proton Drive cloud storage for Business
en
  • Dla firm
  • Aktualizacje produktów
  • Proton Drive
Proton Drive provides private and secure file sharing, document editing, and cloud storage for businesses of all sizes. Take control of your company's data.