Implementing Cryptography Using Python

Book description

Learn to deploy proven cryptographic tools in your applications and services

Cryptography is, quite simply, what makes security and privacy in the digital world possible. Tech professionals, including programmers, IT admins, and security analysts, need to understand how cryptography works to protect users, data, and assets. Implementing Cryptography Using Python will teach you the essentials, so you can apply proven cryptographic tools to secure your applications and systems. Because this book uses Python, an easily accessible language that has become one of the standards for cryptography implementation, you’ll be able to quickly learn how to secure applications and data of all kinds.

In this easy-to-read guide, well-known cybersecurity expert Shannon Bray walks you through creating secure communications in public channels using public-key cryptography. You’ll also explore methods of authenticating messages to ensure that they haven’t been tampered with in transit. Finally, you’ll learn how to use digital signatures to let others verify the messages sent through your services.

  • Learn how to implement proven cryptographic tools, using easy-to-understand examples written in Python
  • Discover the history of cryptography and understand its critical importance in today’s digital communication systems
  • Work through real-world examples to understand the pros and cons of various authentication methods
  • Protect your end-users and ensure that your applications and systems are using up-to-date cryptography

Table of contents

  1. Cover
  2. Introduction
    1. What This Book Covers
    2. What You Need to Know
    3. What You Need to Have
    4. How to Use This Book
    5. What's on the Website
  3. CHAPTER 1: Introduction to Cryptography and Python
    1. Exploring Algorithms
    2. Why Use Python?
    3. Downloading and Installing Python
    4. Testing Your Install
    5. Diving into Python Basics
    6. Creating a Reverse Cipher
    7. Summary
  4. CHAPTER 2: Cryptographic Protocols and Perfect Secrecy
    1. The Study of Cryptology
    2. Attack Models
    3. Shannon's Theorem
    4. One-Time Pad
    5. One-Way Hashes
    6. Perfect Forward Secrecy
    7. Published and Proprietary Encryption Algorithms
    8. Summary
    9. References
  5. CHAPTER 3: Classical Cryptography
    1. Password Best Practices
    2. Obfuscating Data
    3. Historical Ciphers
    4. Summary
  6. CHAPTER 4: Cryptographic Math and Frequency Analysis
    1. Modular Arithmetic and the Greatest Common Devisor
    2. Prime Numbers
    3. Basic Group Theory
    4. Modular Inverses
    5. Extending the GCD
    6. Euler's Theorem
    7. Pseudorandomness
    8. Solving Systems of Linear Equations
    9. Frequency Analysis
    10. Cryptanalysis with Python
    11. Summary
  7. CHAPTER 5: Stream Ciphers and Block Ciphers
    1. Convert between Hexdigest and Plaintext
    2. Use Stream Ciphers
    3. Use Block Ciphers
    4. Summary
  8. CHAPTER 6: Using Cryptography with Images
    1. Simple Image Cryptography
    2. Images and Cryptography Libraries
    3. Image Cryptography
    4. Steganography
    5. Summary
  9. CHAPTER 7: Message Integrity
    1. Message Authentication Codes
    2. Setting Up a Secure Channel
    3. Summary
    4. References
  10. CHAPTER 8: Cryptographic Applications and PKI
    1. The Public-Key Transformation
    2. The El-Gamal Cryptosystem
    3. Elliptic Curve Cryptography
    4. Diffie-Hellman Key Exchange
    5. Summary
  11. CHAPTER 9: Mastering Cryptography Using Python
    1. Constructing a Plaintext Communications Application
    2. Installing and Testing Wireshark
    3. Implementing PKI in the Application Using RSA Certificates
    4. Implementing Diffie-Hellman Key Exchange
    5. Wrapping Up
  12. Index
  13. End User License Agreement

Product information

  • Title: Implementing Cryptography Using Python
  • Author(s): Shannon W. Bray
  • Release date: August 2020
  • Publisher(s): Wiley
  • ISBN: 9781119612209