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
The Complete Guide to Rooting Your Android Phone or Tablet
Download free Android PDF tutorial in 12 chapters and 18 pages. This course helps users to know the efficient way to root their Android smartphone or tablet. ...
Kubernetes Succinctly
Download free course Kubernetes Succinctly, pdf file on 121 pages by Rahul Rai, Tarun Pabbi....
Blender 3D: Noob to Pro
This book is a series of tutorials to help new users learn Blender. The tutorials increase in difficulty, and later tutorials are built on the previous ones. Therefore, Blender beginners should follow the tutorials in sequence. Intermediate users can skip to a tutorial of suitable difficulty. Effo...
Mastering AWS Development
This book is a practical guide to developing, administering, and managing applications and..., download free AWS Development tutorial in PDF (416 pages) created by Uchit Vyas ....
Learning R
Download free course Learning R, pdf file on 619 pages by Stack Overflow Community....
Pro Git, 2nd Edition
Pro Git (2nd Edition) is your fully-updated guide to Git and its usage in the modern world..., download free Git tutorial in PDF (456 pages) created by Scott Chacon ....
Optimizing HPC Applications with Intel Cluster Tools
Download free course Optimizing HPC Applications with Intel Cluster Tools, pdf file on 291 pages by Alexander Supalov, Andrey Semin, Michael Klemm, Christopher Dahnken....
How To Code in Go
Download free course How To Code in Go, pdf file on 447 pages by Mark Bates, Cory LaNou, Tim Raymond....
Android on x86
Android on x86: an Introduction to Optimizing for Intel Architecture serves two main purpo..., download free Android tutorial in PDF (380 pages) created by Iggy Krajci ....
Developing Reactive Microservices: Enterprise Implementation in Java
With microservices taking the software industry by storm, traditional enterprises running large, monolithic Java EE applications have been forced to rethink what they’ve been doing for nearly two decades. But how can microservices built upon reactive principles make a difference? ...