Since there has been a lot of talk and work recently on email encryption, I thought I would attempt to list the requirements. These are a combination of things I would want and some things others have asked for.
- Easy to use — everybody, including your grandmother, should be able to use it. That means it shouldn't take 20 minutes to apply for and set up keys and certificates.
- TNO (Trust No One) — no organization should be responsible for holding encryption keys. All keys need to be generated by the client and never leave the client.
- Key negotiation (Perfect Forward Secrecy) — no key should be able to decrypt a message after the fact. If your machine and key are compromised, it shouldn't be able to decrypt all your messages from the past.
- Metadata protection — headers must be encrypted. Email headers can reveal a lot of information in addition to the sender and recipient.
- Key management — keys need to be revocable and updatable. Losing your private key shouldn't mean you lose all your messages.
- Compatibility — should work with most existing mail clients. Without compatibility you won't get everyone on board.
- Spam free — spam filtering techniques need to be leveraged to block unwanted encrypted emails, working as well as those available today on non-encrypted email.
- Standardization — there needs to be a single agreed-upon standard that allows all mail clients to be compatible with each other.
As you can see, some of these are tough requirements, while some seem to contradict each other. There is a long road ahead for whoever attempts to standardize this.