Hardcover ISBN:  9781470450557 
Product Code:  AMSTEXT/40 
List Price:  $89.00 
MAA Member Price:  $80.10 
AMS Member Price:  $71.20 
Electronic ISBN:  9781470453893 
Product Code:  AMSTEXT/40.E 
List Price:  $89.00 
MAA Member Price:  $80.10 
AMS Member Price:  $71.20 

Book DetailsPure and Applied Undergraduate TextsVolume: 40; 2019; 323 ppMSC: Primary 94; Secondary 68; 81; 11;
This book provides a compact course in modern cryptography. The mathematical foundations in algebra, number theory and probability are presented with a focus on their cryptographic applications. The text provides rigorous definitions and follows the provable security approach. The most relevant cryptographic schemes are covered, including block ciphers, stream ciphers, hash functions, message authentication codes, publickey encryption, key establishment, digital signatures and elliptic curves. The current developments in postquantum cryptography are also explored, with separate chapters on quantum computing, latticebased and codebased cryptosystems.
Many examples, figures and exercises, as well as SageMath (Python) computer code, help the reader to understand the concepts and applications of modern cryptography. A special focus is on algebraic structures, which are used in many cryptographic constructions and also in postquantum systems. The essential mathematics and the modern approach to cryptography and security prepare the reader for more advanced studies.
The text requires only a firstyear course in mathematics (calculus and linear algebra) and is also accessible to computer scientists and engineers. This book is suitable as a textbook for undergraduate and graduate courses in cryptography as well as for selfstudy.ReadershipUndergraduate students interested in cryptography.

Table of Contents

Cover

Title page

Contents

Preface

Getting Started with SageMath

0.1. Installation

0.2. SageMath Command Line

0.3. Browser Notebooks

0.4. Computations with SageMath

Chapter 1. Fundamentals

1.1. Sets, Relations and Functions

1.2. Combinatorics

1.3. Computational Complexity

1.4. Discrete Probability

1.5. Random Numbers

1.6. Summary

Exercises

Chapter 2. Encryption Schemes and Definitions of Security

2.1. Encryption Schemes

2.2. Perfect Secrecy

2.3. Computational Security

2.4. Indistinguishable Encryptions

2.5. Eavesdropping Attacks

2.6. Chosen Plaintext Attacks

2.7. Chosen Ciphertext Attacks

2.8. Pseudorandom Generators

2.9. Pseudorandom Functions

2.10. Block Ciphers and Operation Modes

2.11. Summary

Exercises

Chapter 3. Elementary Number Theory

3.1. Integers

3.2. Congruences

3.3. Modular Exponentiation

3.4. Summary

Exercises

Chapter 4. Algebraic Structures

4.1. Groups

4.2. Rings and Fields

4.3. Finite Fields

4.4. Linear and Affine Maps

4.5. Summary

Exercises

Chapter 5. Block Ciphers

5.1. Constructions of Block Ciphers

5.2. Advanced Encryption Standard

5.3. Summary

Exercises

Chapter 6. Stream Ciphers

6.1. Definition of Stream Ciphers

6.2. Linear Feedback Shift Registers

6.3. RC4

6.4. Salsa20 and ChaCha20

6.5. Summary

Exercises

Chapter 7. Hash Functions

7.1. Definitions and Security Requirements

7.2. Applications of Hash Functions

7.3. MerkleDamgård Construction

7.4. SHA1

7.5. SHA2

7.6. SHA3

7.7. Summary

Exercises

Chapter 8. Message Authentication Codes

8.1. Definitions and Security Requirements

8.2. CBC MAC

8.3. HMAC

8.4. Authenticated Encryption

8.5. Summary

Exercises

Chapter 9. PublicKey Encryption and the RSA Cryptosystem

9.1. PublicKey Cryptosystems

9.2. Plain RSA

9.3. RSA Security

9.4. Generation of Primes

9.5. Efficiency of RSA

9.6. Padded RSA

9.7. Factoring

9.8. Summary

Exercises

Chapter 10. Key Establishment

10.1. Key Distribution

10.2. Key Exchange Protocols

10.3. DiffieHellman Key Exchange

10.4. DiffieHellman using Subgroups of zz _{𝑝}*

10.5. Discrete Logarithm

10.6. Key Encapsulation

10.7. Hybrid Encryption

10.8. Summary

Exercises

Chapter 11. Digital Signatures

11.1. Definitions and Security Requirements

11.2. Plain RSA Signature

11.3. Probabilistic Signature Scheme

11.4. Summary

Exercises

Chapter 12. Elliptic Curve Cryptography

12.1. Weierstrass Equations and Elliptic Curves

12.2. Elliptic Curve DiffieHellman

12.3. Efficiency and Security of Elliptic Curve Cryptography

12.4. Elliptic Curve Factoring Method

12.5. Summary

Exercises

Chapter 13. Quantum Computing

13.1. Quantum Bits

13.2. Multiple Qubit Systems

13.3. Quantum Algorithms

13.4. Quantum Fourier Transform

13.5. Shor’s Factoring Algorithm

13.6. Quantum Key Distribution

13.7. Summary

Exercises

Chapter 14. Latticebased Cryptography

14.1. Lattices

14.2. Lattice Algorithms

14.3. GGH Cryptosystem

14.4. NTRU

14.5. Learning with Errors

14.6. Summary

Exercises

Chapter 15. Codebased Cryptography

15.1. Linear Codes

15.2. Bounds on Codes

15.3. Goppa Codes

15.4. McEliece Cryptosystem

15.5. Summary

Exercises

Bibliography

Index

Back cover


Additional Material

Reviews

This book does an excellent job of introducing modern cryptographic schemes and assessing their security. The book is replete with over 100 references to the cryptographic literature and takes its readers to the forefront of the topics discussed. I think that it is especially wellsuited to be a textbook in departments where there are a large number of mathematics/computer science double majors.
Benjamin Linowitz, Oberlin College


RequestsReview Copy – for reviewers who would like to review an AMS bookDesk Copy – for instructors who have adopted an AMS textbook for a courseExamination Copy – for faculty considering an AMS textbook for a coursePermission – for use of book, eBook, or Journal contentAccessibility – to request an alternate format of an AMS title
 Book Details
 Table of Contents
 Additional Material
 Reviews
 Requests
This book provides a compact course in modern cryptography. The mathematical foundations in algebra, number theory and probability are presented with a focus on their cryptographic applications. The text provides rigorous definitions and follows the provable security approach. The most relevant cryptographic schemes are covered, including block ciphers, stream ciphers, hash functions, message authentication codes, publickey encryption, key establishment, digital signatures and elliptic curves. The current developments in postquantum cryptography are also explored, with separate chapters on quantum computing, latticebased and codebased cryptosystems.
Many examples, figures and exercises, as well as SageMath (Python) computer code, help the reader to understand the concepts and applications of modern cryptography. A special focus is on algebraic structures, which are used in many cryptographic constructions and also in postquantum systems. The essential mathematics and the modern approach to cryptography and security prepare the reader for more advanced studies.
The text requires only a firstyear course in mathematics (calculus and linear algebra) and is also accessible to computer scientists and engineers. This book is suitable as a textbook for undergraduate and graduate courses in cryptography as well as for selfstudy.
Undergraduate students interested in cryptography.

Cover

Title page

Contents

Preface

Getting Started with SageMath

0.1. Installation

0.2. SageMath Command Line

0.3. Browser Notebooks

0.4. Computations with SageMath

Chapter 1. Fundamentals

1.1. Sets, Relations and Functions

1.2. Combinatorics

1.3. Computational Complexity

1.4. Discrete Probability

1.5. Random Numbers

1.6. Summary

Exercises

Chapter 2. Encryption Schemes and Definitions of Security

2.1. Encryption Schemes

2.2. Perfect Secrecy

2.3. Computational Security

2.4. Indistinguishable Encryptions

2.5. Eavesdropping Attacks

2.6. Chosen Plaintext Attacks

2.7. Chosen Ciphertext Attacks

2.8. Pseudorandom Generators

2.9. Pseudorandom Functions

2.10. Block Ciphers and Operation Modes

2.11. Summary

Exercises

Chapter 3. Elementary Number Theory

3.1. Integers

3.2. Congruences

3.3. Modular Exponentiation

3.4. Summary

Exercises

Chapter 4. Algebraic Structures

4.1. Groups

4.2. Rings and Fields

4.3. Finite Fields

4.4. Linear and Affine Maps

4.5. Summary

Exercises

Chapter 5. Block Ciphers

5.1. Constructions of Block Ciphers

5.2. Advanced Encryption Standard

5.3. Summary

Exercises

Chapter 6. Stream Ciphers

6.1. Definition of Stream Ciphers

6.2. Linear Feedback Shift Registers

6.3. RC4

6.4. Salsa20 and ChaCha20

6.5. Summary

Exercises

Chapter 7. Hash Functions

7.1. Definitions and Security Requirements

7.2. Applications of Hash Functions

7.3. MerkleDamgård Construction

7.4. SHA1

7.5. SHA2

7.6. SHA3

7.7. Summary

Exercises

Chapter 8. Message Authentication Codes

8.1. Definitions and Security Requirements

8.2. CBC MAC

8.3. HMAC

8.4. Authenticated Encryption

8.5. Summary

Exercises

Chapter 9. PublicKey Encryption and the RSA Cryptosystem

9.1. PublicKey Cryptosystems

9.2. Plain RSA

9.3. RSA Security

9.4. Generation of Primes

9.5. Efficiency of RSA

9.6. Padded RSA

9.7. Factoring

9.8. Summary

Exercises

Chapter 10. Key Establishment

10.1. Key Distribution

10.2. Key Exchange Protocols

10.3. DiffieHellman Key Exchange

10.4. DiffieHellman using Subgroups of zz _{𝑝}*

10.5. Discrete Logarithm

10.6. Key Encapsulation

10.7. Hybrid Encryption

10.8. Summary

Exercises

Chapter 11. Digital Signatures

11.1. Definitions and Security Requirements

11.2. Plain RSA Signature

11.3. Probabilistic Signature Scheme

11.4. Summary

Exercises

Chapter 12. Elliptic Curve Cryptography

12.1. Weierstrass Equations and Elliptic Curves

12.2. Elliptic Curve DiffieHellman

12.3. Efficiency and Security of Elliptic Curve Cryptography

12.4. Elliptic Curve Factoring Method

12.5. Summary

Exercises

Chapter 13. Quantum Computing

13.1. Quantum Bits

13.2. Multiple Qubit Systems

13.3. Quantum Algorithms

13.4. Quantum Fourier Transform

13.5. Shor’s Factoring Algorithm

13.6. Quantum Key Distribution

13.7. Summary

Exercises

Chapter 14. Latticebased Cryptography

14.1. Lattices

14.2. Lattice Algorithms

14.3. GGH Cryptosystem

14.4. NTRU

14.5. Learning with Errors

14.6. Summary

Exercises

Chapter 15. Codebased Cryptography

15.1. Linear Codes

15.2. Bounds on Codes

15.3. Goppa Codes

15.4. McEliece Cryptosystem

15.5. Summary

Exercises

Bibliography

Index

Back cover

This book does an excellent job of introducing modern cryptographic schemes and assessing their security. The book is replete with over 100 references to the cryptographic literature and takes its readers to the forefront of the topics discussed. I think that it is especially wellsuited to be a textbook in departments where there are a large number of mathematics/computer science double majors.
Benjamin Linowitz, Oberlin College