Note edit

Please see the talk page for the status of this book. You may wish to visit the OpenSSL Foundation Wiki instead. (aka the OpenSSL wiki).

OpenSSL edit

OpenSSL is an open-source library for Transport Layer Security and general-purpose Cryptography.

Overview edit

OpenSSL consists of two separate libraries: libcrypto and libssl. libcrypto is a general-purpose cryptography library which can be used alone. libssl is a TLS library which depends on libcrypto. OpenSSL also comes with an "openssl" command-line program, which can be used to exercise much of the functionality of the library from the command line.

libcrypto edit

libcrypto is the portion of OpenSSL for performing general-purpose cryptography, which can be used without libssl.

Introduction to libcrypto edit

BIO edit

EVP edit

Keys and Certificates edit

Elliptic Curve Cryptography edit

Engines edit

More libcrypto edit

libssl edit

libssl is the portion of OpenSSL which supports TLS, and depends on libcrypto.

Introduction to libssl edit

Configuration edit

Certificate Validation edit

More libssl edit

command line programs edit

The "openssl" command line program contains a variety of sub-programs.

TODO: document all of them!

Appendices edit

FIPS

About the book edit

Notes for contributors