A graduate course in applied cryptographyAuthors: D. Boneh and Victor Shoup
The book is divided into three parts. The first part develops symmetric encryption which explains how two parties, Alice and Bob, can securely exchange information when they have a shared key unknown to the attacker. The second part develops the concepts of public-key encryption and digital signatures, which allows Alice and Bob to do the same, but without having a shared, secret key. The third part is about cryptographic protocols, such as protocols for user identification, key exchange, and secure computation.
First draft available at cryptobook.us
Full paper: pdf