The OpenSSL toolkit provides support for secure communications between
machines. This version of OpenSSL package contains only the libraries
and is provided for compatibility with previous releases and software
that does not support compilation with OpenSSL-1.1. This package
contains include files needed to develop applications which
support various cryptographic algorithms and protocols.
blowfish.3ssl This library implements the Blowfish cipher, which was invented and described by Counterpane (see http://www.counterpane.com/blowfish.html ). Blowfish is a... bn.3ssl This library performs arithmetic operations on integers of arbitrary size. It was written for use in public key cryptography, such as RSA and Diffie-Hellman. It... bn_internal.3ssl This page documents the internal functions used by the OpenSSL BIGNUM implementation. They are described here to facilitate debugging and extending the library... buffer.3ssl The buffer library handles simple character arrays. Buffers are used for various purposes in the library, most notably memory BIOs. BUF_MEM_new() allocates a... crypto.3ssl The OpenSSL crypto library implements a wide range of cryptographic algorithms used in various Internet standards. The services provided by this library are... d2i_PKCS8PrivateKey.3ssl The PKCS#8 functions encode and decode private keys in PKCS#8 format using both PKCS#5 v1.5 and PKCS#5 v2.0 password based encryption algorithms. Other than the... des.3ssl This library contains a fast implementation of the DES encryption algorithm. There are two phases to the use of DES encryption. The first is the generation of a... dh.3ssl These functions implement the Diffie-Hellman key agreement protocol. The generation of shared DH parameters is described in DH_generate_parameters(3)... dsa.3ssl These functions implement the Digital Signature Algorithm (DSA). The generation of shared DSA parameters is described in DSA_generate_parameters(3)... ec.3ssl This library provides an extensive set of functions for performing operations on elliptic curves over finite fields. In general an elliptic curve is one with an... ecdsa.3ssl The ECDSA_SIG structure consists of two BIGNUMs for the r and s value of a ECDSA signature (see X9.62 or FIPS 186-2). engine.3ssl These functions create, manipulate, and use cryptographic modules in the form of ENGINE objects. These objects act as containers for implementations of... err.3ssl When a call to the OpenSSL library fails, this is usually signalled by the return value, and an error code is stored in an error queue associated with the... evp.3ssl The EVP library provides a high-level interface to cryptographic functions. EVP_Seal... and EVP_Open... provide public key encryption and decryption to... EVP_PKEY_get_default_digest.3ssl The EVP_PKEY_get_default_digest_nid() function sets pnid to the default message digest NID for the public key signature operations associated with key pkey. hmac.3ssl HMAC is a MAC (message authentication code), i.e. a keyed hash function used for message authentication, which is based on a hash function. HMAC() computes the... lhash.3ssl This library implements type-checked dynamic hash tables. The hash table entries can be arbitrary structures. Usually they consist of key and value fields... lh_stats.3ssl The LHASH structure records statistics about most aspects of accessing the hash table. This is mostly a legacy of Eric Young writing this library for the... md5.3ssl MD2, MD4, and MD5 are cryptographic hash functions with a 128 bit output. MD2(), MD4(), and MD5() compute the MD2, MD4, and MD5 message digest of the n bytes at... mdc2.3ssl MDC2 is a method to construct hash functions with 128 bit output from block ciphers. These functions are an implementation of MDC2 with DES. MDC2() computes the... pem.3ssl The PEM functions read or write structures in PEM format. In this sense PEM format is simply base64 encoded data surrounded by header lines. For more details... rand.3ssl Since the introduction of the ENGINE API, the recommended way of controlling default implementations is by using the ENGINE API functions. The default... rc4.3ssl This library implements the Alleged RC4 cipher, which is described for example in Applied Cryptography. It is believed to be compatible with RC4[TM], a... ripemd.3ssl RIPEMD-160 is a cryptographic hash function with a 160 bit output. RIPEMD160() computes the RIPEMD-160 message digest of the n bytes at d and places it in md... rsa.3ssl These functions implement RSA public key encryption and signatures as defined in PKCS #1 v2.0 [RFC 2437]. The RSA structure consists of several BIGNUM... sha.3ssl Applications should use the higher level functions EVP_DigestInit(3) etc. instead of calling the hash functions directly. SHA-1 (Secure Hash Algorithm) is a... ssl.3ssl The OpenSSL ssl library implements the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols. It provides a rich API which is... SSL_CTX_get_ex_new_index.3ssl Several OpenSSL structures can have application specific data attached to them. These functions are used internally by OpenSSL to manipulate application... SSL_CTX_set_custom_cli_ext.3ssl SSL_CTX_add_client_custom_ext() adds a custom extension for a TLS client with extension type ext_type and callbacks add_cb, free_cb and parse_cb... SSL_CTX_set_tmp_rsa_callback.3ssl SSL_CTX_set_tmp_rsa_callback() sets the callback function for ctx to be used when a temporary/ephemeral RSA key is required to tmp_rsa_callback. The callback is... SSL_get_ex_new_index.3ssl Several OpenSSL structures can have application specific data attached to them. These functions are used internally by OpenSSL to manipulate application... SSL_SESSION_get_ex_new_index.3ssl Several OpenSSL structures can have application specific data attached to them. These functions are used internally by OpenSSL to manipulate application... threads.3ssl OpenSSL can safely be used in multi-threaded applications provided that at least two callback functions are set, locking_function and threadid_func... ui.3ssl UI stands for User Interface, and is general purpose set of routines to prompt the user for text-based information. Through user-written methods (see... ui_compat.3ssl The DES library contained a few routines to prompt for passwords. These aren't necessarely dependent on DES, and have therefore become part of the UI... x509.3ssl A X.509 certificate is a structured grouping of information about an individual, a device, or anything one can imagine. A X.509 CRL (certificate revocation...