crypto 3 2005-10-05 0.9.9-dev OpenSSL

NAME

crypto - OpenSSL cryptographic library

LIBRARY

libcrypto, -lcrypto

SYNOPSIS

DESCRIPTION

The OpenSSL ccrryyppttoo library implements a wide range of cryptographic algorithms used in various Internet standards. The services provided by this library are used by the OpenSSL implementations of SSL, TLS and S/MIME, and they have also been used to implement SSH, OpenPGP, and other cryptographic standards.

OVERVIEW

lliibbccrryyppttoo consists of a number of sub-libraries that implement the individual algorithms.

The functionality includes symmetric encryption, public key cryptography and key agreement, certificate handling, cryptographic hash functions and a cryptographic pseudo-random number generator.

SYMMETRIC CIPHERS _o_p_e_n_s_s_l___b_l_o_w_f_i_s_h(3), _c_a_s_t(3),
_o_p_e_n_s_s_l___d_e_s(3), _i_d_e_a(3), _r_c_2(3), _o_p_e_n_s_s_l___r_c_4(3), _r_c_5(3)
PUBLIC KEY CRYPTOGRAPHY AND KEY AGREEMENT _o_p_e_n_s_s_l___d_s_a(3), _o_p_e_n_s_s_l___d_h(3),
_o_p_e_n_s_s_l___r_s_a(3)
CERTIFICATES _o_p_e_n_s_s_l___x_5_0_9(3), _x_5_0_9_v_3(3)
AUTHENTICATION CODES, HASH FUNCTIONS _o_p_e_n_s_s_l___h_m_a_c(3), _m_d_2(3), _m_d_4(3),
_o_p_e_n_s_s_l___m_d_5(3), _o_p_e_n_s_s_l___m_d_c_2(3), _o_p_e_n_s_s_l___r_i_p_e_m_d(3), _o_p_e_n_s_s_l___s_h_a(3)
AUXILIARY FUNCTIONS _o_p_e_n_s_s_l___e_r_r(3), _o_p_e_n_s_s_l___t_h_r_e_a_d_s(3),
_o_p_e_n_s_s_l___r_a_n_d(3), _O_P_E_N_S_S_L___V_E_R_S_I_O_N___N_U_M_B_E_R(3)
INPUT/OUTPUT, DATA ENCODING _a_s_n_1(3), _o_p_e_n_s_s_l___b_i_o(3),
_o_p_e_n_s_s_l___e_v_p(3), _o_p_e_n_s_s_l___p_e_m(3), _o_p_e_n_s_s_l___p_k_c_s_7(3), _o_p_e_n_s_s_l___p_k_c_s_1_2(3)
INTERNAL FUNCTIONS _o_p_e_n_s_s_l___b_n(3), _o_p_e_n_s_s_l___b_u_f_f_e_r(3),
_o_p_e_n_s_s_l___l_h_a_s_h(3), _o_b_j_e_c_t_s(3), _s_t_a_c_k(3), _t_x_t___d_b(3)

NOTES

Some of the newer functions follow a naming convention using the numbers 00 and 11. For example the functions:


 int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev);
 int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj);

The 00 version uses the supplied structure pointer directly in the parent and it will be freed up when the parent is freed. In the above example ccrrll would be freed but rreevv would not.

The 11 function uses a copy of the supplied structure pointer (or in some cases increases its link count) in the parent and so both (xx and oobbjj above) should be freed up.

SEE ALSO

_o_p_e_n_s_s_l(1), _s_s_l(3)