Hybrid Cryptography It turns out the only ways we currently know to do public-key crypto take a long time do calculate (as compared to symmetric-key crypto) Using public-key to encrypt large messages would be too slow! We take a hybrid approach: Pick a random 128-bit key for a symmtric-key cryptosystem Encrypt the large message with that symmetric key (use, e.g. AES) Encrypt the 128-bit key with a public-key cryptosystem Send the symmetric-encrypted message and the public-encrypted key to Bob. This hybrid approach is used for almost every cryptography application on the Internet today.