Public-Key Encryption Without Random Oracles

In this chapter, we introduce the ElGamal encryption scheme and the Cramer-Shoup encryption scheme [32]. The first scheme is widely known, and we give it here to help the reader understand how to analyze the correctness of a security reduction. The second scheme is the first practical encryption scheme without random oracles with CCA security. The given schemes and/or proofs may be different from the original ones.