A Graduate Course in Applied Cryptography



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 contents

  • Secret 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
Pages : 900
Size : 9.5 MB
File type : PDF
Downloads: 131
Created: 2022-02-01
License: Out of Copyright
Author(s): by Dan Boneh, Victor Shoup
A Graduate Course in Applied Cryptography

Others Computer science Tutorials

RavenDB in Action

Lisp Hackers

Scaling a Software Business

GIS Succinctly

The SysAdmin Handbook

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? ...