Tools I No Longer Recommend: Manual PGP

I’ve been a fan of “old school” manual PGP for a long time. I’ve written several articles about it here, tried to convince friends to use it, and taught it in classes as recently as 2018. I still believe it can be the absolute most secure option for email. I also believe it has the potential to be the best option for some very limited individuals and use-cases. Mostly, though, I’ve given up on it and you probably should, too.

Manual PGP: What Is It?

Manual PGP was really the only viable option for encrypted email for a very long time. Doing it requires having an email client (typically Thunderbird for individuals), an encryption program (Gnu Privacy Guard [GPG]), and a Thunderbird plugin that interfaces between the encryption and the mail client. Users have to setup the client to handle their webmail, generate key pairs, distribute their public keys, and import other users’ public keys.

Manual PGP encryption captured a large share of the encrypted email market  by default, and stuck around for a long time afterward. When simpler, commercial options (ProtonMail, Tutanota, Hushmail, et. al.) became popular, manual PGP stuck around as the domain of the hardcore. There were some good reasons it stuck around.

First, it provides the absolute best security. Users manage their own keys. The commercial providers handle encryption keys in a key escrow system. Although I trust these providers to a reasonable degree, keys could be misused, and information could be encrypted in a way that the providers could access it. I don’t think this is happening, but it could. When the user maintains the keys exclusively, he or she enjoys a higher degree of security.

Manual PGP also allows the user to do all kinds of other cool things. Users can change keys as often as they like. Users can also do ‘per recipient keys’ by creating a unique key pair for all or select recipients that they communicate with.¬† Additionally, encryption happens locally on the user’s machine rather than via Javascript in the browser. Manual PGP does offer some truly fantastic options. However…

Problems with PGP

I maintained Thunderbird and all the other necessary support to do full manual PGP until recently. The reasons I decided to jettison it are compliance rates and error rates.

Compliance: Compliance – or convincing someone else to play with you – is the most difficult thing to achieve with this system. In the past five years I’ve only had one individual who was willing to go through the hassle of using PGP encryption with me. Many people have used it from time to time, but few have the patience to stick with it.

Error Rate: Because manual PGP is so difficult to use it is extremely mistake-prone. After ten years of using it I still made the occasional mistake, like forgetting to encrypt a message, or in an attempt to use per-recipient keys, encrypt the message with the wrong key. This leads to frustration in the system as a whole, especially with non-dedicated personnel.

Alternatives to PGP

If you require the absolute most secure email, and it absolutely must be email, there really is no substitute for downloading Thunderbird (or a similar mail client), GPG (GPG4Win or GPGSuite), and the Enigmail extension and doing it old-school. The commercial providers just can’t quite compete with the security of doing it yourself. Where they win hands-down is in usability/user-friendliness and a near zero rate of mistakes. Protonmail’s “address verification/trusted keys” system does increase the security of Protonmail considerably. I will post an article about this system soon. However, Protonmail’s system of key escrow remains less secure than managing your own keys, and encryption in the browser is inferior to local encryption.

I was very careful in choosing my qualifiers in the first sentence of the preceding paragraph. If your system does not require email, but can work with other forms of messaging, there are massively better options. The major encrypted messaging platforms (Signal, Threema, Wire, etc.) are more private and secure than any email platform. These systems transmit far less metadata than email headers. They all utilize Perfect Forward Secrecy, meaning that the decryption of any message doesn’t reveal historical or future communications (this is NOT the case with any form of encrypted email to my knowledge).

Encrypted messaging applications are also massively easier to implement. Unskilled users through power users can use and appreciate them. Because their encryption is non-user configurable (i.e. it is just always on and cannot be turned off) the error rate drops to effectively zero. They also have additional features like ephemeral messages, message recall, and a ton of features that email lacks.

In Summary

If you absolutely require email, one of the commercial providers will probably be a better fit for you. If you require the utmost security in email, and email is all that will work for you, then old-school, DIY PGP is still your answer. If you don’t require email but do require utmost security, use an encrypted messenger. Your messages will be safer and you’ll encrypt more communications overall because these systems are far more accessible.

Image Attribution:
Thunderbird logo By Ura Design – https://demo.identihub.co/thunderbirdhttps://thunderbird.ura.design/visuals/product-identity-assets.html, CC BY 3.0, https://commons.wikimedia.org/w/index.php?curid=71404223
GNUPG Logo By Techietim at English Wikipedia. – Transferred from en.wikipedia to Commons by Shizhao using CommonsHelper., GPL, https://commons.wikimedia.org/w/index.php?curid=5867772