**by Dan Boneh, Victor Shoup**

DescriptionTable of ContentsDetailsHashtagsReport an issue ### Book Description

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

### Book Details

### Related Books

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.

This open book is out of copyright. You can download A Graduate Course in Applied Cryptography ebook for free in PDF format (9.5 MB).

Part I

Secret key cryptography

Chapter 1

Introduction

Chapter 2

Encryption

Chapter 3

Stream ciphers

Chapter 4

Block ciphers

Chapter 5

Chosen plaintext attacks

Chapter 6

Message integrity

Chapter 7

Message integrity from universal hashing

Chapter 8

Message integrity from collision resistant hashing

Chapter 9

Authenticated encryption

Part II

Public key cryptography

Chapter 10

Public key tools

Chapter 11

Public key encryption

Chapter 12

Chosen ciphertext secure public-key encryption

Chapter 13

Digital signatures

Chapter 14

Fast signatures from one-way functions

Chapter 15

Elliptic curve cryptography and pairings

Chapter 16

Post-quantum cryptography: lattices and isogenies

Chapter 17

Analysis of number theoretic assumptions

Part III

Protocols

Chapter 18

Protocols for identification and login

Chapter 19

Identification and signatures from sigma protocols

Chapter 20

Proving properties in zero-knowledge

Chapter 21

Modern proof systems

Chapter 22

Authenticated key exchange

Chapter 23

Two-party and multi-party secure computation

Appendix A

Basic number theory

Appendix B

Basic probability theory

Appendix C

Basic complexity theory

Appendix D

Probabilistic algorithms

Title

A Graduate Course in Applied Cryptography

Subject

Computer Science

Publisher

Self-publishing

Published

2020

Pages

900

Edition

1

Language

English

PDF Size

9.5 MB

License

Out of Copyright

This textbook offers a comprehensive overview of applied demography by presenting both basic concepts and methodological techniques. It allows students from the social and human sciences, demographers, consultants and anyone interested in applied demography to gain an understanding of a wide range of practical applications of demographic concepts, ...

This book presents current knowledge about ecosystem services (ES) in urban planning, and discusses various urban ES topics such as spatial distribution of urban ecosystems, population distribution, and physical infrastructure properties. The book addresses all these issues by: i) investigating to what extent ecosystem services are currently includ...

This revised, updated textbook presents a systems approach to the planning, management, and operation of water resources infrastructure in the environment. Previously published in 2005 by UNESCO and Deltares (Delft Hydraulics at the time), this new edition, written again with contributions from Jery R. Stedinger, Jozef P. M. Dijkman, and Monique T...

Defend Dissent is an introduction to cryptography paired with the social impacts of surveillance and the protective potential of encryption, with a focus on US social movements. Each chapter ends with a story that brings social context to the material - from surveillance used against contemporary US protests to the African National Congress's ...

A First Course in Linear Algebra, originally by K. Kuttler, as a first course for the general students who have an understanding of basic high school algebra and intend to be users of linear algebra methods in their profession, from business & economics to science students.
All major topics of linear algebra are available in detail, as well ...

An Introduction to Computer Networks, a free and open general-purpose computer-networking free book, complete with diagrams and exercises. It covers the LAN, internetworking and transport layers, focusing primarily on TCP/IP. Particular attention is paid to congestion; other special topics include queuing, real-time traffic, network management, sec...