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 Official Raspberry Pi Beginner's Guide
The Raspberry Pi is a small, clever, British-built computer that’s packed with potential. Made using the same technology you find in a smartphone, the Raspberry Pi is designed to help you learn coding, discover how computers work, and build your own amazing things. Fully updated for Raspberry Pi 4...
Functional Programming in OCaml
This book is about making you a better programmer. It gives you the opportunity to now learn a new language from scratch and reflect along the way about the difference between programming and programming in a language....
The Next.js Handbook
Download free course The Next.js Handbook, pdf file on 102 pages by Flavio Copes....
Satellite Positioning - Methods, Models and Applications
Satellite positioning techniques, particularly global navigation satellite systems (GNSS), are capable of measuring small changes of the Earths shape and atmosphere, as well as surface characteristics with an unprecedented accuracy....
Introduction to MATLAB
With this tutorial you will work through the examples to understand the basics of MATLAB programming ,a free training document under 74 pages for download....
Efficient Learning Machines
Download free course Efficient Learning Machines, pdf file on 244 pages by Mariette Awad, Rahul Khanna....
MATLAB Notes for Professionals
Download free course MATLAB Notes for Professionals, pdf file on 181 pages by Stack Overflow Community....
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? ...
The Complete FreeBSD: Documentation from the Source
The Complete FreeBSD is an eminently practical guidebook that explains not only how to get a computer up and running with the FreeBSD operating system, but also how to turn it into a highly functional and secure server that can host large numbers of users and disks, support remote access, and prov...
Learning iOS
Download free course Learning iOS, pdf file on 1117 pages by Stack Overflow Community....