How PGP Works
Pretty Good Privacy (PGP) was created in 1991 by Phil Zimmermann as a way to provide near military-grade encryption to the masses. Over the years, PGP changed hands a number of times and ultimately gave way to the open standard OpenPGP, opening the way for PGP to be used on a variety of platforms, including iOS. PGP is based on public-key cryptography. Public-key cryptography relies on a private/public key pair to encrypt and decrypt information. With this encryption method, a user generates a key pair with both a public and a private key. The public key is shared as much as possible – uploaded to key servers on the Internet, included in email signatures, displayed on a personal or professional website – so that any other OpenPGP user can use the public key to encrypt information to the intended recipient, information that can only be decrypted with their corresponding private key.
iPGMail: The Best PGP Client on iOS
iPGMail is the most full-featured and well-reviewed of the PGP apps on the App Store. Unlike some other security apps, iPGMail gives you almost all the capabilities you would expect from a desktop version, including the ability to encrypt and decrypt emails and files.
Working with Keys
Since PGP relies on having a private/public key, iPGMail provides full support for key management. You can create new keys, ranging from 2048 to 4096 bits, as well as set expiration dates for them if desired.
If you already use PGP on another platform, you can also import your existing keys. Depending on your computing platform and iOS version, you can use AirDrop, iTunes File Sharing or a cloud service, such as iCloud Drive. Be aware, however, that it is extremely unwise to upload your private key to any public cloud service without first encrypting it.
Encrypting and Decrypting
Once you have a key pair in iPGMail, you can begin encrypting and decrypting emails and files. When using a PGP client on macOS or Windows, the software often integrates directly in your email client of choice, as well as the macOS Finder and Windows File Explorer. Due to iOS’s siloed approach, where apps cannot directly share information, the process is a little more convoluted.
To Encrypt an Email
To compose an email in iPGMail, select the “Compose” tab at the bottom of the screen. Using the “+” buttons on the right side, select the key you want to use to encrypt the email as well as the key of the recipient.
Type your subject and message in the appropriate fields and add any attachments via the paperclip icon. Once you’re ready to send it, tap the action menu in the upper-?right corner and choose whether to send the email directly from iPGMail or copy the encrypted contents to the clipboard so you can paste them into your main email client. Once you make your selection, you will be prompted to enter your password so iPGMail can sign and encrypt your message.
To Decrypt an Email
When you receive an encrypted email, it will usually come in one of two ways. It will either be encrypted plain text in the body of the email or it will be an encrypted attachment.
If it is encrypted text in the body of the email, simply copy it to the clipboard.
When you open iPGMail, it will ask if you want to import the contents of the clipboard. Enter your password to decrypt and view your message.
Similarly, iPGMail gives you the option of importing files from iCloud Drive and Dropbox and then encrypting and/or signing them using your PGP key. Once encrypted, you can then email them, export them to another app via the standard Share pane or simply leave them stored in iPGMail. For added security, iPGMail lets you lock the application with a PIN as well as with Touch ID or Face ID.
Conclusion
Although iOS requires a slightly different approach to PGP than many long-term users may be accustomed to, iPGMail goes a long way toward providing the power and capability of desktop-based PGP on your iOS device. In an era where hacking and electronic surveillance have become the norm, iPGMail represents one of the best ways to keep your email communication secure on iOS.