Book description
Develop a greater intuition for the proper use of cryptography. This book teaches the basics of writing cryptographic algorithms in Python, demystifies cryptographic internals, and demonstrates common ways cryptography is used incorrectly.
Cryptography is the lifeblood of the digital world’s security infrastructure. From governments around the world to the average consumer, most communications are protected in some form or another by cryptography. These days, even Google searches are encrypted. Despite its ubiquity, cryptography is easy to misconfigure, misuse, and misunderstand.
Developers building cryptographic operations into their applications are not typically experts in the subject, and may not fully grasp the implication of different algorithms, modes, and other parameters. The concepts in this book are largely taught by example, including incorrect uses of cryptography and how "bad" cryptography can be broken. By digging into the guts of cryptography, you can experience what works, what doesn't, and why.
What You’ll Learn
- Understand where cryptography is used, why, and how it gets misused
- Know what secure hashing is used for and its basic properties
- Get up to speed on algorithms and modes for block ciphers such as AES, and see how bad configurations break
- Use message integrity and/or digital signatures to protect messages
- Utilize modern symmetric ciphers such as AES-GCM and CHACHA
- Practice the basics of public key cryptography, including ECDSA signatures
- Discover how RSA encryption can be broken if insecure padding is used
- Employ TLS connections for secure communications
- Find out how certificates work and modern improvements such as certificate pinning and certificate transparency (CT) logs
Who This Book Is For
IT administrators and software developers familiar with Python. Although readers may have some knowledge of cryptography, the book assumes that the reader is starting from scratch.
Table of contents
- Cover
- Front Matter
- 1. Cryptography: More Than Secrecy
- 2. Hashing
- 3. Symmetric Encryption: Two Sides, One Key
- 4. Asymmetric Encryption: Public/Private Keys
- 5. Message Integrity, Signatures, and Certificates
- 6. Combining Asymmetric and Symmetric Algorithms
- 7. More Symmetric Crypto: Authenticated Encryption and Kerberos
- 8. TLS Communications
- Back Matter
Product information
- Title: Practical Cryptography in Python: Learning Correct Cryptography by Example
- Author(s):
- Release date: September 2019
- Publisher(s): Apress
- ISBN: 9781484249000
You might also like
book
Real-World Cryptography
An all-practical guide to the cryptography behind common tools and protocols that will help you make …
book
Demystifying Cryptography with OpenSSL 3.0
Use OpenSSL to add security features to your application, including cryptographically strong symmetric and asymmetric encryption, …
book
Automate the Boring Stuff with Python, 2nd Edition
If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how …
book
Serious Cryptography
"This practical guide to modern encryption breaks down the fundamental mathematical concepts at the heart of …