Introduction to Modern Cryptography

Jonathan Ned Katz, Yehuda Lindell