hcrypto_evp - Man Page

EVP generic crypto functions

Synopsis

Functions

const EVP_CIPHER * EVP_wincrypt_des_ede3_cbc (void)
const EVP_CIPHER * EVP_hcrypto_aes_128_cbc (void)
const EVP_CIPHER * EVP_hcrypto_aes_192_cbc (void)
const EVP_CIPHER * EVP_hcrypto_aes_256_cbc (void)
const EVP_CIPHER * EVP_hcrypto_aes_128_cfb8 (void)
const EVP_CIPHER * EVP_hcrypto_aes_192_cfb8 (void)
const EVP_CIPHER * EVP_hcrypto_aes_256_cfb8 (void)
const EVP_MD * EVP_hcrypto_sha256 (void)
const EVP_MD * EVP_hcrypto_sha384 (void)
const EVP_MD * EVP_hcrypto_sha512 (void)
const EVP_MD * EVP_hcrypto_sha1 (void)
const EVP_MD * EVP_hcrypto_md5 (void)
const EVP_MD * EVP_hcrypto_md4 (void)
const EVP_CIPHER * EVP_hcrypto_des_cbc (void)
const EVP_CIPHER * EVP_hcrypto_des_ede3_cbc (void)
const EVP_CIPHER * EVP_hcrypto_rc2_cbc (void)
const EVP_CIPHER * EVP_hcrypto_rc2_40_cbc (void)
const EVP_CIPHER * EVP_hcrypto_rc2_64_cbc (void)
const EVP_CIPHER * EVP_hcrypto_camellia_128_cbc (void)
const EVP_CIPHER * EVP_hcrypto_camellia_192_cbc (void)
const EVP_CIPHER * EVP_hcrypto_camellia_256_cbc (void)
OSSL_CIPHER_ALGORITHM (rc2_cbc, hc_EVP_CIPH_CBC_MODE|hc_EVP_CIPH_VARIABLE_LENGTH) OSSL_CIPHER_ALGORITHM(rc2_40_cbc
hc_EVP_CIPH_CBC_MODE OSSL_CIPHER_ALGORITHM (rc2_64_cbc, hc_EVP_CIPH_CBC_MODE|hc_EVP_CIPH_VARIABLE_LENGTH) OSSL_CIPHER_ALGORITHM(rc4
WINCNG_CIPHER_ALGORITHM (des_ede3_cbc, BCRYPT_3DES_ALGORITHM, 8, 24, 8, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM (des_cbc, BCRYPT_DES_ALGORITHM, 8, 8, 8, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM (aes_128_cbc, BCRYPT_AES_ALGORITHM, 16, 16, 16, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM (aes_192_cbc, BCRYPT_AES_ALGORITHM, 16, 24, 16, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM (aes_256_cbc, BCRYPT_AES_ALGORITHM, 16, 32, 16, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM (aes_128_cfb8, BCRYPT_AES_ALGORITHM, 16, 16, 16, EVP_CIPH_CFB8_MODE)
WINCNG_CIPHER_ALGORITHM (aes_192_cfb8, BCRYPT_AES_ALGORITHM, 16, 24, 16, EVP_CIPH_CFB8_MODE)
WINCNG_CIPHER_ALGORITHM (aes_256_cfb8, BCRYPT_AES_ALGORITHM, 16, 32, 16, EVP_CIPH_CFB8_MODE)
WINCNG_CIPHER_ALGORITHM (rc2_cbc, BCRYPT_RC2_ALGORITHM, 8, 16, 8, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM (rc2_40_cbc, BCRYPT_RC2_ALGORITHM, 8, 5, 8, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM (rc2_64_cbc, BCRYPT_RC2_ALGORITHM, 8, 8, 8, EVP_CIPH_CBC_MODE)
WINCNG_CIPHER_ALGORITHM_UNAVAILABLE (camellia_128_cbc)
WINCNG_CIPHER_ALGORITHM_UNAVAILABLE (camellia_192_cbc)
WINCNG_CIPHER_ALGORITHM_UNAVAILABLE (camellia_256_cbc)
WINCNG_CIPHER_ALGORITHM (rc4, BCRYPT_RC4_ALGORITHM, 1, 16, 0, EVP_CIPH_STREAM_CIPHER|EVP_CIPH_VARIABLE_LENGTH)
WINCNG_CIPHER_ALGORITHM (rc4_40, BCRYPT_RC4_ALGORITHM, 1, 5, 0, EVP_CIPH_STREAM_CIPHER|EVP_CIPH_VARIABLE_LENGTH)
size_t EVP_MD_size (const EVP_MD *md)
size_t EVP_MD_block_size (const EVP_MD *md)
EVP_MD_CTX * EVP_MD_CTX_create (void)
void EVP_MD_CTX_init (EVP_MD_CTX *ctx) HC_DEPRECATED
void EVP_MD_CTX_destroy (EVP_MD_CTX *ctx)
int EVP_MD_CTX_cleanup (EVP_MD_CTX *ctx) HC_DEPRECATED
const EVP_MD * EVP_MD_CTX_md (EVP_MD_CTX *ctx)
size_t EVP_MD_CTX_size (EVP_MD_CTX *ctx)
size_t EVP_MD_CTX_block_size (EVP_MD_CTX *ctx)
int EVP_DigestInit_ex (EVP_MD_CTX *ctx, const EVP_MD *md, ENGINE *engine)
int EVP_DigestUpdate (EVP_MD_CTX *ctx, const void *data, size_t size)
int EVP_DigestFinal_ex (EVP_MD_CTX *ctx, void *hash, unsigned int *size)
int EVP_Digest (const void *data, size_t dsize, void *hash, unsigned int *hsize, const EVP_MD *md, ENGINE *engine)
const EVP_MD * EVP_sha256 (void)
const EVP_MD * EVP_sha384 (void)
const EVP_MD * EVP_sha512 (void)
const EVP_MD * EVP_sha1 (void)
const EVP_MD * EVP_sha (void)
const EVP_MD * EVP_md5 (void)
const EVP_MD * EVP_md4 (void)
const EVP_MD * EVP_md_null (void)
size_t EVP_CIPHER_block_size (const EVP_CIPHER *c)
size_t EVP_CIPHER_key_length (const EVP_CIPHER *c)
size_t EVP_CIPHER_iv_length (const EVP_CIPHER *c)
void EVP_CIPHER_CTX_init (EVP_CIPHER_CTX *c)
int EVP_CIPHER_CTX_cleanup (EVP_CIPHER_CTX *c)
int EVP_CIPHER_CTX_set_key_length (EVP_CIPHER_CTX *c, int length)
const EVP_CIPHER * EVP_CIPHER_CTX_cipher (EVP_CIPHER_CTX *ctx)
size_t EVP_CIPHER_CTX_block_size (const EVP_CIPHER_CTX *ctx)
size_t EVP_CIPHER_CTX_key_length (const EVP_CIPHER_CTX *ctx)
size_t EVP_CIPHER_CTX_iv_length (const EVP_CIPHER_CTX *ctx)
unsigned long EVP_CIPHER_CTX_flags (const EVP_CIPHER_CTX *ctx)
int EVP_CIPHER_CTX_mode (const EVP_CIPHER_CTX *ctx)
void * EVP_CIPHER_CTX_get_app_data (EVP_CIPHER_CTX *ctx)
void EVP_CIPHER_CTX_set_app_data (EVP_CIPHER_CTX *ctx, void *data)
int EVP_CipherInit_ex (EVP_CIPHER_CTX *ctx, const EVP_CIPHER *c, ENGINE *engine, const void *key, const void *iv, int encp)
int EVP_CipherUpdate (EVP_CIPHER_CTX *ctx, void *out, int *outlen, void *in, size_t inlen)
int EVP_CipherFinal_ex (EVP_CIPHER_CTX *ctx, void *out, int *outlen)
const EVP_CIPHER * EVP_enc_null (void)
const EVP_CIPHER * EVP_rc2_cbc (void)
const EVP_CIPHER * EVP_rc2_40_cbc (void)
const EVP_CIPHER * EVP_rc2_64_cbc (void)
const EVP_CIPHER * EVP_rc4 (void)
const EVP_CIPHER * EVP_rc4_40 (void)
const EVP_CIPHER * EVP_des_cbc (void)
const EVP_CIPHER * EVP_des_ede3_cbc (void)
const EVP_CIPHER * EVP_aes_128_cbc (void)
const EVP_CIPHER * EVP_aes_192_cbc (void)
const EVP_CIPHER * EVP_aes_256_cbc (void)
const EVP_CIPHER * EVP_aes_128_cfb8 (void)
const EVP_CIPHER * EVP_aes_192_cfb8 (void)
const EVP_CIPHER * EVP_aes_256_cfb8 (void)
const EVP_CIPHER * EVP_camellia_128_cbc (void)
const EVP_CIPHER * EVP_camellia_192_cbc (void)
const EVP_CIPHER * EVP_camellia_256_cbc (void)
const EVP_CIPHER * EVP_get_cipherbyname (const char *name)
int EVP_BytesToKey (const EVP_CIPHER *type, const EVP_MD *md, const void *salt, const void *data, size_t datalen, unsigned int count, void *keydata, void *ivdata)

Detailed Description

See the EVP - generic crypto interface for description and examples.

Function Documentation

const EVP_CIPHER* EVP_aes_128_cbc (void)

The AES-128 cipher type

Returns

the AES-128 EVP_CIPHER pointer.

Examples example_evp_cipher.c.

const EVP_CIPHER* EVP_aes_128_cfb8 (void)

The AES-128 cipher type

Returns

the AES-128 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_aes_192_cbc (void)

The AES-192 cipher type

Returns

the AES-192 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_aes_192_cfb8 (void)

The AES-192 cipher type

Returns

the AES-192 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_aes_256_cbc (void)

The AES-256 cipher type

Returns

the AES-256 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_aes_256_cfb8 (void)

The AES-256 cipher type

Returns

the AES-256 EVP_CIPHER pointer.

int EVP_BytesToKey (const EVP_CIPHER * type, const EVP_MD * md, const void * salt, const void * data, size_t datalen, unsigned int count, void * keydata, void * ivdata)

Provides a legancy string to key function, used in PEM files.

New protocols should use new string to key functions like NIST SP56-800A or PKCS#5 v2.0 (see PKCS5_PBKDF2_HMAC_SHA1()).

Parameters

type type of cipher to use
md message digest to use
salt salt salt string, should be an binary 8 byte buffer.
data the password/input key string.
datalen length of data parameter.
count iteration counter.
keydata output keydata, needs to of the size EVP_CIPHER_key_length().
ivdata output ivdata, needs to of the size EVP_CIPHER_block_size().

Returns

the size of derived key.

const EVP_CIPHER* EVP_camellia_128_cbc (void)

The Camellia-128 cipher type

Returns

the Camellia-128 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_camellia_192_cbc (void)

The Camellia-198 cipher type

Returns

the Camellia-198 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_camellia_256_cbc (void)

The Camellia-256 cipher type

Returns

the Camellia-256 EVP_CIPHER pointer.

size_t EVP_CIPHER_block_size (const EVP_CIPHER * c)

Return the block size of the cipher.

Parameters

c cipher to get the block size from.

Returns

the block size of the cipher.

Examples example_evp_cipher.c.

size_t EVP_CIPHER_CTX_block_size (const EVP_CIPHER_CTX * ctx)

Return the block size of the cipher context.

Parameters

ctx cipher context to get the block size from.

Returns

the block size of the cipher context.

const EVP_CIPHER* EVP_CIPHER_CTX_cipher (EVP_CIPHER_CTX * ctx)

Return the EVP_CIPHER for a EVP_CIPHER_CTX context.

Parameters

ctx the context to get the cipher type from.

Returns

the EVP_CIPHER pointer.

int EVP_CIPHER_CTX_cleanup (EVP_CIPHER_CTX * c)

Clean up the EVP_CIPHER_CTX context.

Parameters

c the cipher to clean up.

Returns

1 on success.

Examples example_evp_cipher.c.

unsigned long EVP_CIPHER_CTX_flags (const EVP_CIPHER_CTX * ctx)

Get the flags for an EVP_CIPHER_CTX context.

Parameters

ctx the EVP_CIPHER_CTX to get the flags from

Returns

the flags for an EVP_CIPHER_CTX.

void* EVP_CIPHER_CTX_get_app_data (EVP_CIPHER_CTX * ctx)

Get the app data for an EVP_CIPHER_CTX context.

Parameters

ctx the EVP_CIPHER_CTX to get the app data from

Returns

the app data for an EVP_CIPHER_CTX.

void EVP_CIPHER_CTX_init (EVP_CIPHER_CTX * c)

Initiate a EVP_CIPHER_CTX context. Clean up with EVP_CIPHER_CTX_cleanup().

Parameters

c the cipher initiate.

Examples example_evp_cipher.c.

size_t EVP_CIPHER_CTX_iv_length (const EVP_CIPHER_CTX * ctx)

Return the IV size of the cipher context.

Parameters

ctx cipher context to get the IV size from.

Returns

the IV size of the cipher context.

size_t EVP_CIPHER_CTX_key_length (const EVP_CIPHER_CTX * ctx)

Return the key size of the cipher context.

Parameters

ctx cipher context to get the key size from.

Returns

the key size of the cipher context.

int EVP_CIPHER_CTX_mode (const EVP_CIPHER_CTX * ctx)

Get the mode for an EVP_CIPHER_CTX context.

Parameters

ctx the EVP_CIPHER_CTX to get the mode from

Returns

the mode for an EVP_CIPHER_CTX.

void EVP_CIPHER_CTX_set_app_data (EVP_CIPHER_CTX * ctx, void * data)

Set the app data for an EVP_CIPHER_CTX context.

Parameters

ctx the EVP_CIPHER_CTX to set the app data for
data the app data to set for an EVP_CIPHER_CTX.

int EVP_CIPHER_CTX_set_key_length (EVP_CIPHER_CTX * c, int length)

If the cipher type supports it, change the key length

Parameters

c the cipher context to change the key length for
length new key length

Returns

1 on success.

size_t EVP_CIPHER_iv_length (const EVP_CIPHER * c)

Return the IV size of the cipher.

Parameters

c cipher to get the IV size from.

Returns

the IV size of the cipher.

Examples example_evp_cipher.c.

size_t EVP_CIPHER_key_length (const EVP_CIPHER * c)

Return the key size of the cipher.

Parameters

c cipher to get the key size from.

Returns

the key size of the cipher.

Examples example_evp_cipher.c.

int EVP_CipherFinal_ex (EVP_CIPHER_CTX * ctx, void * out, int * outlen)

Encipher/decipher final data

Parameters

ctx the cipher context.
out output data from the operation.
outlen output length

The input length needs to be at least EVP_CIPHER_block_size() bytes long.

See EVP Cipher for an example how to use this function.

Returns

1 on success.

Examples example_evp_cipher.c.

int EVP_CipherInit_ex (EVP_CIPHER_CTX * ctx, const EVP_CIPHER * c, ENGINE * engine, const void * key, const void * iv, int encp)

Initiate the EVP_CIPHER_CTX context to encrypt or decrypt data. Clean up with EVP_CIPHER_CTX_cleanup().

Parameters

ctx context to initiate
c cipher to use.
engine crypto engine to use, NULL to select default.
key the crypto key to use, NULL will use the previous value.
iv the IV to use, NULL will use the previous value.
encp non zero will encrypt, -1 use the previous value.

Returns

1 on success.

Examples example_evp_cipher.c.

int EVP_CipherUpdate (EVP_CIPHER_CTX * ctx, void * out, int * outlen, void * in, size_t inlen)

Encipher/decipher partial data

Parameters

ctx the cipher context.
out output data from the operation.
outlen output length
in input data to the operation.
inlen length of data.

The output buffer length should at least be EVP_CIPHER_block_size() byte longer then the input length.

See EVP Cipher for an example how to use this function.

Returns

1 on success.

If there in no spare bytes in the left from last Update and the input length is on the block boundery, the EVP_CipherUpdate() function can take a shortcut (and preformance gain) and directly encrypt the data, otherwise we hav to fix it up and store extra it the EVP_CIPHER_CTX.

Examples example_evp_cipher.c.

const EVP_CIPHER* EVP_des_cbc (void)

The DES cipher type

Returns

the DES-CBC EVP_CIPHER pointer.

const EVP_CIPHER* EVP_des_ede3_cbc (void)

The triple DES cipher type

Returns

the DES-EDE3-CBC EVP_CIPHER pointer.

int EVP_Digest (const void * data, size_t dsize, void * hash, unsigned int * hsize, const EVP_MD * md, ENGINE * engine)

Do the whole EVP_MD_CTX_create(), EVP_DigestInit_ex(), EVP_DigestUpdate(), EVP_DigestFinal_ex(), EVP_MD_CTX_destroy() dance in one call.

Parameters

data the data to update the context with
dsize length of data
hash output data of at least EVP_MD_size() length.
hsize output length of hash.
md message digest to use
engine engine to use, NULL for default engine.

Returns

1 on success.

int EVP_DigestFinal_ex (EVP_MD_CTX * ctx, void * hash, unsigned int * size)

Complete the message digest.

Parameters

ctx the context to complete.
hash the output of the message digest function. At least EVP_MD_size().
size the output size of hash.

Returns

1 on success.

int EVP_DigestInit_ex (EVP_MD_CTX * ctx, const EVP_MD * md, ENGINE * engine)

Init a EVP_MD_CTX for use a specific message digest and engine.

Parameters

ctx the message digest context to init.
md the message digest to use.
engine the engine to use, NULL to use the default engine.

Returns

1 on success.

int EVP_DigestUpdate (EVP_MD_CTX * ctx, const void * data, size_t size)

Update the digest with some data.

Parameters

ctx the context to update
data the data to update the context with
size length of data

Returns

1 on success.

const EVP_CIPHER* EVP_enc_null (void)

The NULL cipher type, does no encryption/decryption.

Returns

the null EVP_CIPHER pointer.

const EVP_CIPHER* EVP_get_cipherbyname (const char * name)

Get the cipher type using their name.

Parameters

name the name of the cipher.

Returns

the selected EVP_CIPHER pointer or NULL if not found.

const EVP_CIPHER* EVP_hcrypto_aes_128_cbc (void)

The AES-128 cipher type (hcrypto)

Returns

the AES-128 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_aes_128_cfb8 (void)

The AES-128 CFB8 cipher type (hcrypto)

Returns

the AES-128 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_aes_192_cbc (void)

The AES-192 cipher type (hcrypto)

Returns

the AES-192 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_aes_192_cfb8 (void)

The AES-192 CFB8 cipher type (hcrypto)

Returns

the AES-192 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_aes_256_cbc (void)

The AES-256 cipher type (hcrypto)

Returns

the AES-256 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_aes_256_cfb8 (void)

The AES-256 CFB8 cipher type (hcrypto)

Returns

the AES-256 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_camellia_128_cbc (void)

The Camellia-128 cipher type - hcrypto

Returns

the Camellia-128 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_camellia_192_cbc (void)

The Camellia-198 cipher type - hcrypto

Returns

the Camellia-198 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_camellia_256_cbc (void)

The Camellia-256 cipher type - hcrypto

Returns

the Camellia-256 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_des_cbc (void)

The DES cipher type

Returns

the DES-CBC EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_des_ede3_cbc (void)

The triple DES cipher type - hcrypto

Returns

the DES-EDE3-CBC EVP_CIPHER pointer.

const EVP_MD* EVP_hcrypto_md4 (void)

The message digest MD4 - hcrypto

Returns

the message digest type.

const EVP_MD* EVP_hcrypto_md5 (void)

The message digest MD5 - hcrypto

Returns

the message digest type.

const EVP_CIPHER* EVP_hcrypto_rc2_40_cbc (void)

The RC2-40 cipher type

Returns

the RC2-40 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_rc2_64_cbc (void)

The RC2-64 cipher type

Returns

the RC2-64 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_hcrypto_rc2_cbc (void)

The RC2 cipher type - hcrypto

Returns

the RC2 EVP_CIPHER pointer.

const EVP_MD* EVP_hcrypto_sha1 (void)

The message digest SHA1 - hcrypto

Returns

the message digest type.

const EVP_MD* EVP_hcrypto_sha256 (void)

The message digest SHA256 - hcrypto

Returns

the message digest type.

const EVP_MD* EVP_hcrypto_sha384 (void)

The message digest SHA384 - hcrypto

Returns

the message digest type.

const EVP_MD* EVP_hcrypto_sha512 (void)

The message digest SHA512 - hcrypto

Returns

the message digest type.

const EVP_MD* EVP_md4 (void)

The message digest MD4

Returns

the message digest type.

const EVP_MD* EVP_md5 (void)

The message digest MD5

Returns

the message digest type.

size_t EVP_MD_block_size (const EVP_MD * md)

Return the blocksize of the message digest function.

Parameters

md the evp message

Returns

size size of the message digest block size

size_t EVP_MD_CTX_block_size (EVP_MD_CTX * ctx)

Return the blocksize of the message digest function.

Parameters

ctx the evp message digest context

Returns

size size of the message digest block size

int EVP_MD_CTX_cleanup (EVP_MD_CTX * ctx)

Free the resources used by the EVP_MD context.

Parameters

ctx the context to free the resources from.

Returns

1 on success.

EVP_MD_CTX* EVP_MD_CTX_create (void)

Allocate a messsage digest context object. Free with EVP_MD_CTX_destroy().

Returns

a newly allocated message digest context object.

void EVP_MD_CTX_destroy (EVP_MD_CTX * ctx)

Free a messsage digest context object.

Parameters

ctx context to free.

void EVP_MD_CTX_init (EVP_MD_CTX * ctx)

Initiate a messsage digest context object. Deallocate with EVP_MD_CTX_cleanup(). Please use EVP_MD_CTX_create() instead.

Parameters

ctx variable to initiate.

const EVP_MD* EVP_MD_CTX_md (EVP_MD_CTX * ctx)

Get the EVP_MD use for a specified context.

Parameters

ctx the EVP_MD context to get the EVP_MD for.

Returns

the EVP_MD used for the context.

size_t EVP_MD_CTX_size (EVP_MD_CTX * ctx)

Return the output size of the message digest function.

Parameters

ctx the evp message digest context

Returns

size output size of the message digest function.

const EVP_MD* EVP_md_null (void)

The null message digest

Returns

the message digest type.

size_t EVP_MD_size (const EVP_MD * md)

Return the output size of the message digest function.

Parameters

md the evp message

Returns

size output size of the message digest function.

const EVP_CIPHER* EVP_rc2_40_cbc (void)

The RC2 cipher type

Returns

the RC2 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_rc2_64_cbc (void)

The RC2 cipher type

Returns

the RC2 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_rc2_cbc (void)

The RC2 cipher type

Returns

the RC2 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_rc4 (void)

The RC4 cipher type

Returns

the RC4 EVP_CIPHER pointer.

const EVP_CIPHER* EVP_rc4_40 (void)

The RC4-40 cipher type

Returns

the RC4-40 EVP_CIPHER pointer.

const EVP_MD* EVP_sha (void)

The message digest SHA1

Returns

the message digest type.

const EVP_MD* EVP_sha1 (void)

The message digest SHA1

Returns

the message digest type.

const EVP_MD* EVP_sha256 (void)

The message digest SHA256

Returns

the message digest type.

const EVP_MD* EVP_sha384 (void)

The message digest SHA384

Returns

the message digest type.

const EVP_MD* EVP_sha512 (void)

The message digest SHA512

Returns

the message digest type.

const EVP_CIPHER* EVP_wincrypt_des_ede3_cbc (void)

The triple DES cipher type (Micrsoft crypt provider)

Returns

the DES-EDE3-CBC EVP_CIPHER pointer.

hc_EVP_CIPH_CBC_MODE OSSL_CIPHER_ALGORITHM (rc2_64_cbc, hc_EVP_CIPH_CBC_MODE| hc_EVP_CIPH_VARIABLE_LENGTH)

The RC2-64 cipher type - OpenSSL

Returns

the RC2-64 EVP_CIPHER pointer. The Camellia-128 cipher type - OpenSSL

the Camellia-128 EVP_CIPHER pointer. The Camellia-198 cipher type - OpenSSL

the Camellia-198 EVP_CIPHER pointer. The Camellia-256 cipher type - OpenSSL

the Camellia-256 EVP_CIPHER pointer. The RC4 cipher type (OpenSSL provider)

the RC4 EVP_CIPHER pointer.

OSSL_CIPHER_ALGORITHM (rc2_cbc, hc_EVP_CIPH_CBC_MODE| hc_EVP_CIPH_VARIABLE_LENGTH)

The triple DES cipher type (OpenSSL provider)

Returns

the DES-EDE3-CBC EVP_CIPHER pointer. The DES cipher type (OpenSSL provider)

the DES-CBC EVP_CIPHER pointer. The AES-128 cipher type (OpenSSL provider)

the AES-128-CBC EVP_CIPHER pointer. The AES-192 cipher type (OpenSSL provider)

the AES-192-CBC EVP_CIPHER pointer. The AES-256 cipher type (OpenSSL provider)

the AES-256-CBC EVP_CIPHER pointer. The AES-128 CFB8 cipher type (OpenSSL provider)

the AES-128-CFB8 EVP_CIPHER pointer. The AES-192 CFB8 cipher type (OpenSSL provider)

the AES-192-CFB8 EVP_CIPHER pointer. The AES-256 CFB8 cipher type (OpenSSL provider)

the AES-256-CFB8 EVP_CIPHER pointer. The RC2 cipher type - OpenSSL

the RC2 EVP_CIPHER pointer. The RC2-40 cipher type - OpenSSL

the RC2-40 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (aes_128_cbc, BCRYPT_AES_ALGORITHM, 16, 16, 16, EVP_CIPH_CBC_MODE)

The AES-128 cipher type (Windows CNG provider)

Returns

the AES-128-CBC EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (aes_128_cfb8, BCRYPT_AES_ALGORITHM, 16, 16, 16, EVP_CIPH_CFB8_MODE)

The AES-128 CFB8 cipher type (Windows CNG provider)

Returns

the AES-128-CFB8 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (aes_192_cbc, BCRYPT_AES_ALGORITHM, 16, 24, 16, EVP_CIPH_CBC_MODE)

The AES-192 cipher type (Windows CNG provider)

Returns

the AES-192-CBC EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (aes_192_cfb8, BCRYPT_AES_ALGORITHM, 16, 24, 16, EVP_CIPH_CFB8_MODE)

The AES-192 CFB8 cipher type (Windows CNG provider)

Returns

the AES-192-CFB8 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (aes_256_cbc, BCRYPT_AES_ALGORITHM, 16, 32, 16, EVP_CIPH_CBC_MODE)

The AES-256 cipher type (Windows CNG provider)

Returns

the AES-256-CBC EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (aes_256_cfb8, BCRYPT_AES_ALGORITHM, 16, 32, 16, EVP_CIPH_CFB8_MODE)

The AES-256 CFB8 cipher type (Windows CNG provider)

Returns

the AES-256-CFB8 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (des_cbc, BCRYPT_DES_ALGORITHM, 8, 8, 8, EVP_CIPH_CBC_MODE)

The DES cipher type (Windows CNG provider)

Returns

the DES-CBC EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (des_ede3_cbc, BCRYPT_3DES_ALGORITHM, 8, 24, 8, EVP_CIPH_CBC_MODE)

The triple DES cipher type (Windows CNG provider)

Returns

the DES-EDE3-CBC EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (rc2_40_cbc, BCRYPT_RC2_ALGORITHM, 8, 5, 8, EVP_CIPH_CBC_MODE)

The RC2-40 cipher type - Windows CNG

Returns

the RC2-40 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (rc2_64_cbc, BCRYPT_RC2_ALGORITHM, 8, 8, 8, EVP_CIPH_CBC_MODE)

The RC2-64 cipher type - Windows CNG

Returns

the RC2-64 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (rc2_cbc, BCRYPT_RC2_ALGORITHM, 8, 16, 8, EVP_CIPH_CBC_MODE)

The RC2 cipher type - Windows CNG

Returns

the RC2 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (rc4, BCRYPT_RC4_ALGORITHM, 1, 16, 0, EVP_CIPH_STREAM_CIPHER| EVP_CIPH_VARIABLE_LENGTH)

The RC4 cipher type (Windows CNG provider)

Returns

the RC4 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM (rc4_40, BCRYPT_RC4_ALGORITHM, 1, 5, 0, EVP_CIPH_STREAM_CIPHER| EVP_CIPH_VARIABLE_LENGTH)

The RC4-40 cipher type (Windows CNG provider)

Returns

the RC4 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM_UNAVAILABLE (camellia_128_cbc)

The Camellia-128 cipher type - CommonCrypto

Returns

the Camellia-128 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM_UNAVAILABLE (camellia_192_cbc)

The Camellia-198 cipher type - CommonCrypto

Returns

the Camellia-198 EVP_CIPHER pointer.

WINCNG_CIPHER_ALGORITHM_UNAVAILABLE (camellia_256_cbc)

The Camellia-256 cipher type - CommonCrypto

Returns

the Camellia-256 EVP_CIPHER pointer.

Author

Generated automatically by Doxygen for Heimdal crypto library from the source code.

Referenced By

evp.7ossl(7), EVP_DigestInit.3ossl(3), EVP_rc5_32_12_16_cbc.3ossl(3), fips_module.7ossl(7), MD5.3ossl(3), MDC2_Init.3ossl(3), openssl-glossary.7ossl(7), ossl-guide-libcrypto-introduction.7ossl(7), ossl-guide-migration.7ossl(7), passphrase-encoding.7ossl(7), provider.7ossl(7), provider-digest.7ossl(7), RIPEMD160_Init.3ossl(3), SHA256_Init.3ossl(3), s-nail(1), x11vnc(1).

The man pages EVP_aes_128_cbc(3), EVP_aes_128_cfb8(3), EVP_aes_192_cbc(3), EVP_aes_192_cfb8(3), EVP_aes_256_cbc(3), EVP_aes_256_cfb8(3), EVP_BytesToKey(3), EVP_camellia_128_cbc(3), EVP_camellia_192_cbc(3), EVP_camellia_256_cbc(3), EVP_CIPHER_block_size(3), EVP_CIPHER_CTX_block_size(3), EVP_CIPHER_CTX_cipher(3), EVP_CIPHER_CTX_cleanup(3), EVP_CIPHER_CTX_flags(3), EVP_CIPHER_CTX_get_app_data(3), EVP_CIPHER_CTX_init(3), EVP_CIPHER_CTX_iv_length(3), EVP_CIPHER_CTX_key_length(3), EVP_CIPHER_CTX_mode(3), EVP_CIPHER_CTX_set_app_data(3), EVP_CIPHER_CTX_set_key_length(3), EVP_CipherFinal_ex(3), EVP_CipherInit_ex(3), EVP_CIPHER_iv_length(3), EVP_CIPHER_key_length(3), EVP_CipherUpdate(3), EVP_des_cbc(3), EVP_des_ede3_cbc(3), EVP_Digest(3), EVP_DigestFinal_ex(3), EVP_DigestInit_ex(3), EVP_DigestUpdate(3), EVP_enc_null(3), EVP_get_cipherbyname(3), EVP_hcrypto_aes_128_cbc(3), EVP_hcrypto_aes_128_cfb8(3), EVP_hcrypto_aes_192_cbc(3), EVP_hcrypto_aes_192_cfb8(3), EVP_hcrypto_aes_256_cbc(3), EVP_hcrypto_aes_256_cfb8(3), EVP_hcrypto_camellia_128_cbc(3), EVP_hcrypto_camellia_192_cbc(3), EVP_hcrypto_camellia_256_cbc(3), EVP_hcrypto_des_cbc(3), EVP_hcrypto_des_ede3_cbc(3), EVP_hcrypto_md4(3), EVP_hcrypto_md5(3), EVP_hcrypto_rc2_40_cbc(3), EVP_hcrypto_rc2_64_cbc(3), EVP_hcrypto_rc2_cbc(3), EVP_hcrypto_sha1(3), EVP_hcrypto_sha256(3), EVP_hcrypto_sha384(3), EVP_hcrypto_sha512(3), EVP_md4(3), EVP_md5(3), EVP_MD_block_size(3), EVP_MD_CTX_block_size(3), EVP_MD_CTX_cleanup(3), EVP_MD_CTX_create(3), EVP_MD_CTX_destroy(3), EVP_MD_CTX_init(3), EVP_MD_CTX_md(3), EVP_MD_CTX_size(3), EVP_md_null(3), EVP_MD_size(3), EVP_rc2_40_cbc(3), EVP_rc2_64_cbc(3), EVP_rc2_cbc(3), EVP_rc4(3), EVP_rc4_40(3), EVP_sha(3), EVP_sha1(3), EVP_sha256(3), EVP_sha384(3), EVP_sha512(3), EVP_wincrypt_des_ede3_cbc(3), OSSL_CIPHER_ALGORITHM(3), WINCNG_CIPHER_ALGORITHM(3) and WINCNG_CIPHER_ALGORITHM_UNAVAILABLE(3) are aliases of hcrypto_evp(3).

Tue Nov 15 2022 Version 7.8.0 Heimdal crypto library