Foundations of Cryptography surveys the main paradigms, approaches and techniques used to conceptualize, define and provide solutions to natural cryptographic problems. The author starts by presenting some of the central tools; that is, computational difficulty in the form of one-way functions, pseudorandomness, and zero-knowledge proofs. Based on these tools, the emphasis is shifted to the treatment of basic applications such as encryption and signature schemes as well as the design of general secure cryptographic protocols. The author has created a unique overview that includes well over 100 references. The accent is on the clarification of fundamental concepts and on demonstrating the feasibility of solving several central cryptographic problems. This is an invaluable resource for all students, researchers and practitioners interested in the foundations that underpin modern cryptography.