Early access

OpenPGP

Create or import your OpenPGP key, add your correspondents' public keys, and see which algorithms FOLD accepts.

FOLD reads and writes PGP/MIME on Mac, iPhone and iPad. Private keys belong to one account; your correspondents’ public keys serve all accounts.

Your key

Create a key. On the Mac, open Settings (,) > Security > Signing key, pick the account and use Or: generate a new key. On iPhone and iPad, tap your account picture, then Security & Privacy > PGP keys > Generate key. FOLD creates an Ed25519 signing key with a Curve25519 encryption subkey. The passphrase cannot be recovered. The Mac shows Your public key (to share) for sending to others.

Import a key. Paste an armored private key (BEGIN PGP PRIVATE KEY BLOCK) on the Mac, or import the file on iPhone and iPad. FOLD signs with Ed25519 or RSA keys.

The private key stays in its passphrase-protected OpenPGP form (S2K) in the keychain of this device and is never synced. Keys FOLD creates are protected with iterated and salted S2K (SHA-256) and AES-256. On the Mac, Remember passphrase in the keychain is optional; without it, FOLD asks for the passphrase when you send. iPhone and iPad always store it.

Your correspondents’ keys

On the Mac, Settings > Security > PGP keys offers Choose key file … (.asc or .gpg, several at once), Paste text and From GnuPG (pubring.kbx). For the last one, select ~/.gnupg/pubring.kbx (G opens the path field) and pick the keys to import. On iPhone and iPad, use Import public key with an armored .asc file.

FOLD does not look up keys on key servers or via WKD, and it does not import keys attached to messages.

When you write

As soon as a recipient becomes a pill, FOLD checks whether it has an OpenPGP key or an S/MIME certificate for that address and tints the pill. With Encrypt on, the tint changes to show that the message will be encrypted to that recipient. The sign and encrypt switches work as described on the S/MIME page; FOLD prefers OpenPGP when every recipient has a key.

Encrypted mail uses AES-256 with a mandatory integrity check (MDC), the most widely readable format. The subject and other headers stay unencrypted.

When you read

FOLD decrypts PGP/MIME and inline PGP messages automatically, provided the passphrase is stored in the keychain. Otherwise the message shows Encrypted message instead of its content; the reader does not ask for the passphrase yet.

Signatures are checked for PGP/MIME messages when you have the sender’s public key: verified ✓, valid, foreign sender (the key does not belong to the sender’s address) or invalid signature. Inline signatures (BEGIN PGP SIGNED MESSAGE) are not checked.

Algorithms

Accepted: Ed25519 and RSA signatures, Curve25519 (ECDH) and RSA encryption keys, AES-128, AES-192 and AES-256, SHA-256, SHA-384 and SHA-512, encrypted data with integrity protection (MDC or GnuPG’s OCB mode), ZIP and ZLIB compression.

Rejected: CAST5, IDEA, Blowfish, 3DES, MD5, SHA-1 message signatures, encrypted data without integrity protection, messages whose integrity check fails, BZip2 compression. SHA-1 is accepted only for a key’s own self-signatures.