Download free course A Graduate Course in Applied Cryptography, pdf file on 900 pages by by Dan Boneh, Victor Shoup.
Cryptography is an indispensable tool used to protect information in computing systems. It is used everywhere and by billions of people worldwide on a daily basis. It is used to protect data at rest and data in motion. Cryptographic systems are an integral part of standard protocols, most notably the Transport Layer Security (TLS) protocol, making it relatively easy to incorporate strong encryption into a wide range of applications.
While extremely useful, cryptography is also highly brittle. The most secure cryptographic system can be rendered completely insecure by a single specification or programming error. No amount of unit testing will uncover a security vulnerability in a cryptosystem.
Instead, to argue that a cryptosystem is secure, we rely on mathematical modeling and proofs to show that a particular system satisfies the security properties attributed to it. We often need to introduce certain plausible assumptions to push our security arguments through.
This book is about exactly that: constructing practical cryptosystems for which we can argue security under plausible assumptions. The book covers many constructions for different tasks in cryptography. For each task we define a precise security goal that we aim to achieve and then present constructions that achieve the required goal. To analyze the constructions, we develop a unified framework for doing cryptographic proofs. A reader who masters this framework will be capable of applying it to new constructions that may not be covered in the book.
Table of contentsSecret key cryptography
Introduction
Encryption
Stream ciphers
Block ciphers
Chosen plaintext attacks
Message integrity
Message integrity from universal hashing
Message integrity from collision resistant hashing
Authenticated encryption
Public key cryptography
Public key tools
Public key encryption
Chosen ciphertext secure public-key encryption
Digital signatures
Fast signatures from one-way functions
Elliptic curve cryptography and pairings
Post-quantum cryptography: lattices and isogenies
Analysis of number theoretic assumptions
Protocols
Protocols for identification and login
Identification and signatures from sigma protocols
Proving properties in zero-knowledge
Modern proof systems
Authenticated key exchange
Two-party and multi-party secure computation
Basic number theory
Basic probability theory
Basic complexity theory
Probabilistic algorithms
Others related eBooks about A Graduate Course in Applied Cryptography
Azure Tips and Tricks
Download free course Azure Tips and Tricks, pdf file on 67 pages by by Michael Crump....
Exploring Cloud Computing
Cloud Computing is enabling many trends in IT today: microservices, pay-as-you-go pricing,..., download free Cloud Computing tutorial in PDF (121 pages) created by ....
Bayesian Methods for Hackers: Probabilistic Programming and Bayesian Inference Using Python and PyMC
Master Bayesian Inference through Practical Examples and Computation - Without Advanced Mathematical Analysis....
Kubernetes for Full-Stack Developers
Download free course Kubernetes for Full-Stack Developers, pdf file on 637 pages by Jamon Camisso, Hanif Jetha, Katherine Juell....
Essential Coding Theory
Error-correcting codes (henceforth, just codes) are clever ways of representing data so that one can recover the original information even if parts of it are corrupted. The basic idea is to judiciously introduce redundancy so that the original information can be recovered even when parts of the (r...
Microsoft DirectAccess Best Practices and Troubleshooting
DirectAccess is an amazing Microsoft technology that is truly the evolution of VPN; any Mi..., download free DirectAccess tutorial in PDF (116 pages) created by ....
Introduction to Data Science
Download free course Introduction to Data Science, pdf file on 722 pages by Rafael A Irizarry....
The InfoSec Handbook
The InfoSec Handbook offers the reader an organized layout of information that is easily r..., download free InfoSec tutorial in PDF (392 pages) created by Umesh Hodeghatta Rao ....
How To Code in Node.js
Download free course How To Code in Node.js, pdf file on 418 pages by David Landup, Marcus Sanatan....
Introduction to High-Performance Scientific Computing
The field of parallel scientific computing lies at the crossroads of a number of disciplines and skill sets, and correspondingly, for someone to be successful at using parallel computing in science requires at least elementary knowledge of and skills in all these areas. ...