Putting it all together ...
Server:
- Securely register with CA
- Distribute X.509 certificates I.e. public key
- To send to receiver, use public key of receiver
- For body: use symmetric encryption using shared secret (aka “cookie”) which itself is exchanged using PKE
- Append signature: Apply hash function to text to generate a MAC, and apply my private key