Secure Email
Confidentiality
If Alice wants to send a confidential email to Bob she can do the following:
- Generate a random symmetric private key $K_S$.
- Encrypt the message with $K_S$ (for efficiency).
- Also encrypt $K_S$ with Bob’s public key.
- Send both $K_S(m)$ and $K^+_B(K_S)$ to Bob.
Bob will then:
- Use his privaet key to decrypt and recover $K_S$.
- Use $K_S$ to decrypt $K_S(m)$ to recover $m$.
Integrity & Authentication
If Alice want to send $m$ to Bob, with message integrity and authentication (no encryption) we can do the following:
- Digitally sign the hash of her message with her private key, providing integrity and authentication.
- Send the signature and the message in the clear.
Bob can then verify the message using the technique covered in the Integrity lecture.
Confidentiality, Integrity & Authentication
To do this:
- Complete the integrity & authentication section.
- Pass the signature and message to the confidentiality section.
- Send the message.
This uses three keys:
- Alice’s private key: $K^-_A$.
- Bob’s public key: $K^+_B$.
- A session symmetric key: $K_S$.
PGP (Pretty Good Privacy)
This is pretty much the same as the last method. It provides:
- Secrecy
- Authentication
- Integrity