Books & Videos

Table of Contents

  1. Chapter 1 Introduction

    1. Cryptography for the Rest of Us

    2. Overview of SSL

    3. Problems with SSL

    4. What SSL Doesn't Do Well

    5. OpenSSL Basics

    6. Securing Third-Party Software

  2. Chapter 2 Command-Line Interface

    1. The Basics

    2. Message Digest Algorithms

    3. Symmetric Ciphers

    4. Public Key Cryptography

    5. S/MIME

    6. Passwords and Passphrases

    7. Seeding the Pseudorandom Number Generator

  3. Chapter 3 Public Key Infrastructure (PKI)

    1. Certificates

    2. Obtaining a Certificate

    3. Setting Up a Certification Authority

  4. Chapter 4 Support Infrastructure

    1. Multithread Support

    2. Internal Error Handling

    3. Abstract Input/Output

    4. Random Number Generation

    5. Arbitrary Precision Math

    6. Using Engines

  5. Chapter 5 SSL/TLS Programming

    1. Programming with SSL

    2. Advanced Programming with SSL

  6. Chapter 6 Symmetric Cryptography

    1. Concepts in Symmetric Cryptography

    2. Encrypting with the EVP API

    3. General Recommendations

  7. Chapter 7 Hashes and MACs

    1. Overview of Hashes and MACs

    2. Hashing with the EVP API

    3. Using MACs

    4. Secure HTTP Cookies

  8. Chapter 8 Public Key Algorithms

    1. When to Use Public Key Cryptography

    2. Diffie-Hellman

    3. Digital Signature Algorithm (DSA)

    4. RSA

    5. The EVP Public Key Interface

    6. Encoding and Decoding Objects

  9. Chapter 9 OpenSSL in Other Languages

    1. Net::SSLeay for Perl

    2. M2Crypto for Python

    3. OpenSSL Support in PHP

  10. Chapter 10 Advanced Programming Topics

    1. Object Stacks

    2. Configuration Files

    3. X.509

    4. PKCS#7 and S/MIME

    5. PKCS#12

  1. Appendix A Command-Line Reference

  2. Colophon