Cryptography Engineering: Design Principles and Practical Applications is a book, or rather a textbook, about designing and implementing cryptographic security systems. The authors hope to educate you not only how to design and implement, but also how to think like a cryptographer/security engineer. This book offers a highly practical understanding of the security environment from a cryptography standpoint.
As part of my self-study in the immense field of security engineering, I will share my thoughts on the book as well as my own solutions to the supplied exercises. Many things in the book I already know/understand, but as history has shown us, practice makes perfect.
Done with this book. It was a great experience, and I highly recommend any publications from the authors.
A security system is only as strong as its weakest link.
- Part I Introduction
- Chapter 1 The Context of Cryptography
- Chapter 2 Introduction to Cryptography
- Part II Message Security
- Chapter 3 Block Ciphers
- Chapter 4 Block Cipher Modes
- Chapter 5 Hash Functions
- Chapter 6 Message Authentication Codes
- Chapter 7 The Secure Channel
- Chapter 8 Implementation Issues (I)
- Part III Key Negotiation
- Chapter 9 Generating Randomness
- Chapter 10 Primes
- Chapter 11 Diffie-Hellman
- Chapter 12 RSA
- Chapter 13 Introduction to Cryptographic Protocols
- Chapter 14 Key Negotiation
- Chapter 15 Implementation Issues (II)
- Part IV Key Management
- Chapter 16 The Clock
- Chapter 17 Key Servers
- Chapter 18 The Dream of PKI
- Chapter 19 PKI Reality
- Chapter 20 PKI Practicalities
- Chapter 21 Storing Secrets
- Part V Miscellaneous
- Chapter 22 Standards and Patents
- Chapter 23 Involving Experts
Everything in this repository is released under the terms of the MIT License. For more information, please see the file "LICENSE".