Data Structures | Typedefs | Enumerations | Functions | Variables
evp.h File Reference

evp.h defines mini evp openssl compatibility layer More...

Go to the source code of this file.

Data Structures

union  WOLFSSL_Hasher
 
struct  WOLFSSL_EVP_MD_CTX
 
union  WOLFSSL_Cipher
 
struct  WOLFSSL_EVP_CIPHER_CTX
 
struct  WOLFSSL_EVP_PKEY_CTX
 

Typedefs

typedef char WOLFSSL_EVP_MD
 
typedef struct WOLFSSL_EVP_PKEY WOLFSSL_EVP_PKEY
 
typedef struct WOLFSSL_EVP_MD_CTX WOLFSSL_EVP_MD_CTX
 
typedef WOLFSSL_EVP_PKEY EVP_PKEY
 
typedef WOLFSSL_EVP_PKEY PKCS8_PRIV_KEY_INFO
 
typedef struct WOLFSSL_EVP_PKEY_CTX WOLFSSL_EVP_PKEY_CTX
 
typedef struct WOLFSSL_EVP_CIPHER_CTX WOLFSSL_EVP_CIPHER_CTX
 
typedef int WOLFSSL_ENGINE
 
typedef WOLFSSL_ENGINE ENGINE
 
typedef WOLFSSL_EVP_PKEY_CTX EVP_PKEY_CTX
 
typedef WOLFSSL_EVP_MD EVP_MD
 
typedef WOLFSSL_EVP_CIPHER EVP_CIPHER
 
typedef WOLFSSL_EVP_MD_CTX EVP_MD_CTX
 
typedef WOLFSSL_EVP_CIPHER_CTX EVP_CIPHER_CTX
 

Enumerations

enum  {
  AES_128_CBC_TYPE = 1, AES_192_CBC_TYPE = 2, AES_256_CBC_TYPE = 3, AES_128_CTR_TYPE = 4,
  AES_192_CTR_TYPE = 5, AES_256_CTR_TYPE = 6, AES_128_ECB_TYPE = 7, AES_192_ECB_TYPE = 8,
  AES_256_ECB_TYPE = 9, DES_CBC_TYPE = 10, DES_ECB_TYPE = 11, DES_EDE3_CBC_TYPE = 12,
  DES_EDE3_ECB_TYPE = 13, ARC4_TYPE = 14, NULL_CIPHER_TYPE = 15, EVP_PKEY_RSA = 16,
  EVP_PKEY_DSA = 17, EVP_PKEY_EC = 18, IDEA_CBC_TYPE = 19, AES_128_GCM_TYPE = 21,
  AES_192_GCM_TYPE = 22, AES_256_GCM_TYPE = 23, NID_sha1 = 64, NID_sha224 = 65,
  NID_md2 = 77, NID_md4 = 257, NID_md5 = 4, NID_hmac = 855,
  NID_dhKeyAgreement = 28, EVP_PKEY_DH = NID_dhKeyAgreement, EVP_PKEY_HMAC = NID_hmac, AES_128_CFB1_TYPE = 24,
  AES_192_CFB1_TYPE = 25, AES_256_CFB1_TYPE = 26, AES_128_CFB8_TYPE = 27, AES_192_CFB8_TYPE = 28,
  AES_256_CFB8_TYPE = 29, AES_128_CFB128_TYPE = 30, AES_192_CFB128_TYPE = 31, AES_256_CFB128_TYPE = 32,
  AES_128_OFB_TYPE = 33, AES_192_OFB_TYPE = 34, AES_256_OFB_TYPE = 35, AES_128_XTS_TYPE = 36,
  AES_256_XTS_TYPE = 37
}
 
enum  {
  NID_md5WithRSA = 104, NID_md5WithRSAEncryption = 8, NID_dsaWithSHA1 = 113, NID_dsaWithSHA1_2 = 70,
  NID_sha1WithRSA = 115, NID_sha1WithRSAEncryption = 65, NID_sha224WithRSAEncryption = 671, NID_sha256WithRSAEncryption = 668,
  NID_sha384WithRSAEncryption = 669, NID_sha512WithRSAEncryption = 670, NID_ecdsa_with_SHA1 = 416, NID_ecdsa_with_SHA224 = 793,
  NID_ecdsa_with_SHA256 = 794, NID_ecdsa_with_SHA384 = 795, NID_ecdsa_with_SHA512 = 796, NID_dsa_with_SHA224 = 802,
  NID_dsa_with_SHA256 = 803, NID_sha3_224 = 1096, NID_sha3_256 = 1097, NID_sha3_384 = 1098,
  NID_sha3_512 = 1099
}
 
enum  {
  NID_aes_128_cbc = 419, NID_aes_192_cbc = 423, NID_aes_256_cbc = 427, NID_aes_128_gcm = 895,
  NID_aes_192_gcm = 898, NID_aes_256_gcm = 901, NID_aes_128_ctr = 904, NID_aes_192_ctr = 905,
  NID_aes_256_ctr = 906, NID_aes_128_ecb = 418, NID_aes_192_ecb = 422, NID_aes_256_ecb = 426,
  NID_des_cbc = 31, NID_des_ecb = 29, NID_des_ede3_cbc = 44, NID_des_ede3_ecb = 33,
  NID_idea_cbc = 34, NID_aes_128_cfb1 = 650, NID_aes_192_cfb1 = 651, NID_aes_256_cfb1 = 652,
  NID_aes_128_cfb8 = 653, NID_aes_192_cfb8 = 654, NID_aes_256_cfb8 = 655, NID_aes_128_cfb128 = 421,
  NID_aes_192_cfb128 = 425, NID_aes_256_cfb128 = 429, NID_aes_128_ofb = 420, NID_aes_192_ofb = 424,
  NID_aes_256_ofb = 428, NID_aes_128_xts = 913, NID_aes_256_xts = 914
}
 

Functions

WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_md4 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_md5 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_mdc2 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha1 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha224 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha256 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha384 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha512 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_ripemd160 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha3_224 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha3_256 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha3_384 (void)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_sha3_512 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_ecb (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_ecb (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_ecb (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_cbc (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_cbc (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_cbc (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_cfb1 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_cfb1 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_cfb1 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_cfb8 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_cfb8 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_cfb8 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_cfb128 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_cfb128 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_cfb128 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_ofb (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_ofb (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_ofb (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_xts (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_xts (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_gcm (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_gcm (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_gcm (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_128_ctr (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_192_ctr (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_aes_256_ctr (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_des_ecb (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_des_ede3_ecb (void)
 Getter functions for the respective WOLFSSL_EVP_CIPHER pointers. wolfSSL_EVP_init() must be called once in the program first to populate these cipher strings. WOLFSSL_DES_ECB macro must be defined for wolfSSL_EVP_des_ede3_ecb(). More...
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_des_cbc (void)
 Getter functions for the respective WOLFSSL_EVP_CIPHER pointers. wolfSSL_EVP_init() must be called once in the program first to populate these cipher strings. WOLFSSL_DES_ECB macro must be defined for wolfSSL_EVP_des_ecb(). More...
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_des_ede3_cbc (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_rc4 (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_idea_cbc (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_enc_null (void)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_rc2_cbc (void)
 
WOLFSSL_API void wolfSSL_EVP_init (void)
 
WOLFSSL_API int wolfSSL_EVP_MD_size (const WOLFSSL_EVP_MD *md)
 
WOLFSSL_API int wolfSSL_EVP_MD_type (const WOLFSSL_EVP_MD *md)
 
WOLFSSL_API int wolfSSL_EVP_MD_block_size (const WOLFSSL_EVP_MD *md)
 
WOLFSSL_API WOLFSSL_EVP_MD_CTXwolfSSL_EVP_MD_CTX_new (void)
 
WOLFSSL_API void wolfSSL_EVP_MD_CTX_free (WOLFSSL_EVP_MD_CTX *ctx)
 
WOLFSSL_API void wolfSSL_EVP_MD_CTX_init (WOLFSSL_EVP_MD_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_MD_CTX_cleanup (WOLFSSL_EVP_MD_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_MD_CTX_copy (WOLFSSL_EVP_MD_CTX *out, const WOLFSSL_EVP_MD_CTX *in)
 
WOLFSSL_API int wolfSSL_EVP_MD_CTX_copy_ex (WOLFSSL_EVP_MD_CTX *out, const WOLFSSL_EVP_MD_CTX *in)
 
WOLFSSL_API int wolfSSL_EVP_MD_CTX_type (const WOLFSSL_EVP_MD_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_MD_CTX_size (const WOLFSSL_EVP_MD_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_MD_CTX_block_size (const WOLFSSL_EVP_MD_CTX *ctx)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_MD_CTX_md (const WOLFSSL_EVP_MD_CTX *ctx)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_get_cipherbyname (const char *name)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_get_digestbyname (const char *name)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_nid (const WOLFSSL_EVP_CIPHER *cipher)
 
WOLFSSL_API int wolfSSL_EVP_DigestInit (WOLFSSL_EVP_MD_CTX *ctx, const WOLFSSL_EVP_MD *type)
 
WOLFSSL_API int wolfSSL_EVP_DigestInit_ex (WOLFSSL_EVP_MD_CTX *ctx, const WOLFSSL_EVP_MD *type, WOLFSSL_ENGINE *impl)
 Function for initializing WOLFSSL_EVP_MD_CTX. This function is a wrapper for wolfSSL_EVP_DigestInit() because wolfSSL does not use WOLFSSL_ENGINE. More...
 
WOLFSSL_API int wolfSSL_EVP_DigestUpdate (WOLFSSL_EVP_MD_CTX *ctx, const void *data, size_t sz)
 
WOLFSSL_API int wolfSSL_EVP_DigestFinal (WOLFSSL_EVP_MD_CTX *ctx, unsigned char *md, unsigned int *s)
 
WOLFSSL_API int wolfSSL_EVP_DigestFinal_ex (WOLFSSL_EVP_MD_CTX *ctx, unsigned char *md, unsigned int *s)
 
WOLFSSL_API int wolfSSL_EVP_DigestSignInit (WOLFSSL_EVP_MD_CTX *ctx, WOLFSSL_EVP_PKEY_CTX **pctx, const WOLFSSL_EVP_MD *type, WOLFSSL_ENGINE *e, WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_DigestSignUpdate (WOLFSSL_EVP_MD_CTX *ctx, const void *d, unsigned int cnt)
 
WOLFSSL_API int wolfSSL_EVP_DigestSignFinal (WOLFSSL_EVP_MD_CTX *ctx, unsigned char *sig, size_t *siglen)
 
WOLFSSL_API int wolfSSL_EVP_DigestVerifyInit (WOLFSSL_EVP_MD_CTX *ctx, WOLFSSL_EVP_PKEY_CTX **pctx, const WOLFSSL_EVP_MD *type, WOLFSSL_ENGINE *e, WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_DigestVerifyUpdate (WOLFSSL_EVP_MD_CTX *ctx, const void *d, size_t cnt)
 
WOLFSSL_API int wolfSSL_EVP_DigestVerifyFinal (WOLFSSL_EVP_MD_CTX *ctx, const unsigned char *sig, size_t siglen)
 
WOLFSSL_API int wolfSSL_EVP_Digest (const unsigned char *in, int inSz, unsigned char *out, unsigned int *outSz, const WOLFSSL_EVP_MD *evp, WOLFSSL_ENGINE *eng)
 
WOLFSSL_API int wolfSSL_EVP_BytesToKey (const WOLFSSL_EVP_CIPHER *, const WOLFSSL_EVP_MD *, const unsigned char *, const unsigned char *, int, int, unsigned char *, unsigned char *)
 
WOLFSSL_API void wolfSSL_EVP_CIPHER_CTX_init (WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_cleanup (WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_ctrl (WOLFSSL_EVP_CIPHER_CTX *ctx, \ int type, int arg, void *ptr)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_iv_length (const WOLFSSL_EVP_CIPHER_CTX *)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_iv_length (const WOLFSSL_EVP_CIPHER *)
 
WOLFSSL_API int wolfSSL_EVP_Cipher_key_length (const WOLFSSL_EVP_CIPHER *c)
 
WOLFSSL_API int wolfSSL_EVP_CipherInit (WOLFSSL_EVP_CIPHER_CTX *ctx, const WOLFSSL_EVP_CIPHER *type, const unsigned char *key, const unsigned char *iv, int enc)
 
WOLFSSL_API int wolfSSL_EVP_CipherInit_ex (WOLFSSL_EVP_CIPHER_CTX *ctx, const WOLFSSL_EVP_CIPHER *type, WOLFSSL_ENGINE *impl, const unsigned char *key, const unsigned char *iv, int enc)
 Function for initializing WOLFSSL_EVP_CIPHER_CTX. This function is a wrapper for wolfSSL_CipherInit() because wolfSSL does not use WOLFSSL_ENGINE. More...
 
WOLFSSL_API int wolfSSL_EVP_EncryptInit (WOLFSSL_EVP_CIPHER_CTX *ctx, const WOLFSSL_EVP_CIPHER *type, const unsigned char *key, const unsigned char *iv)
 
WOLFSSL_API int wolfSSL_EVP_EncryptInit_ex (WOLFSSL_EVP_CIPHER_CTX *ctx, const WOLFSSL_EVP_CIPHER *type, WOLFSSL_ENGINE *impl, const unsigned char *key, const unsigned char *iv)
 Function for initializing WOLFSSL_EVP_CIPHER_CTX. This function is a wrapper for wolfSSL_EVP_CipherInit() because wolfSSL does not use WOLFSSL_ENGINE. Sets encrypt flag to be encrypt. More...
 
WOLFSSL_API int wolfSSL_EVP_DecryptInit (WOLFSSL_EVP_CIPHER_CTX *ctx, const WOLFSSL_EVP_CIPHER *type, const unsigned char *key, const unsigned char *iv)
 
WOLFSSL_API int wolfSSL_EVP_DecryptInit_ex (WOLFSSL_EVP_CIPHER_CTX *ctx, const WOLFSSL_EVP_CIPHER *type, WOLFSSL_ENGINE *impl, const unsigned char *key, const unsigned char *iv)
 Function for initializing WOLFSSL_EVP_CIPHER_CTX. This function is a wrapper for wolfSSL_EVP_CipherInit() because wolfSSL does not use WOLFSSL_ENGINE. Sets encrypt flag to be decrypt. More...
 
WOLFSSL_API int wolfSSL_EVP_CipherUpdate (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl, const unsigned char *in, int inl)
 Function for encrypting/decrypting data. In buffer is added to be encrypted or decrypted and out buffer holds the results. outl will be the length of encrypted/decrypted information. More...
 
WOLFSSL_API int wolfSSL_EVP_CipherFinal (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl)
 This function performs the final cipher operations adding in padding. If WOLFSSL_EVP_CIPH_NO_PADDING flag is set in WOLFSSL_EVP_CIPHER_CTX structure then 1 is returned and no encryption/decryption is done. If padding flag is seti padding is added and encrypted when ctx is set to encrypt, padding values are checked when set to decrypt. More...
 
WOLFSSL_API int wolfSSL_EVP_CipherFinal_ex (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl, int enc)
 
WOLFSSL_API int wolfSSL_EVP_EncryptFinal (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl)
 
WOLFSSL_API int wolfSSL_EVP_EncryptFinal_ex (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl)
 
WOLFSSL_API int wolfSSL_EVP_DecryptFinal (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl)
 
WOLFSSL_API int wolfSSL_EVP_DecryptFinal_ex (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl)
 
WOLFSSL_API int wolfSSL_EVP_DecryptFinal_legacy (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl)
 
WOLFSSL_API WOLFSSL_EVP_CIPHER_CTXwolfSSL_EVP_CIPHER_CTX_new (void)
 
WOLFSSL_API void wolfSSL_EVP_CIPHER_CTX_free (WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_reset (WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_key_length (WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_set_key_length (WOLFSSL_EVP_CIPHER_CTX *ctx, int keylen)
 Setter function for WOLFSSL_EVP_CIPHER_CTX structure key length. More...
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_set_iv_length (WOLFSSL_EVP_CIPHER_CTX *ctx, int ivLen)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_set_iv (WOLFSSL_EVP_CIPHER_CTX *ctx, byte *iv, int ivLen)
 
WOLFSSL_API int wolfSSL_EVP_Cipher (WOLFSSL_EVP_CIPHER_CTX *ctx, unsigned char *dst, unsigned char *src, unsigned int len)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_get_cipherbynid (int)
 
WOLFSSL_API const WOLFSSL_EVP_MD * wolfSSL_EVP_get_digestbynid (int)
 
WOLFSSL_API const WOLFSSL_EVP_CIPHER * wolfSSL_EVP_CIPHER_CTX_cipher (const WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_assign_RSA (WOLFSSL_EVP_PKEY *pkey, WOLFSSL_RSA *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_assign_EC_KEY (WOLFSSL_EVP_PKEY *pkey, WOLFSSL_EC_KEY *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_assign_DSA (EVP_PKEY *pkey, WOLFSSL_DSA *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_assign_DH (EVP_PKEY *pkey, WOLFSSL_DH *key)
 
WOLFSSL_API WOLFSSL_RSAwolfSSL_EVP_PKEY_get0_RSA (struct WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API WOLFSSL_RSAwolfSSL_EVP_PKEY_get1_RSA (WOLFSSL_EVP_PKEY *)
 
WOLFSSL_API WOLFSSL_DSAwolfSSL_EVP_PKEY_get1_DSA (WOLFSSL_EVP_PKEY *)
 
WOLFSSL_API WOLFSSL_EC_KEYwolfSSL_EVP_PKEY_get0_EC_KEY (WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API WOLFSSL_EC_KEYwolfSSL_EVP_PKEY_get1_EC_KEY (WOLFSSL_EVP_PKEY *key)
 
WOLFSSL_API WOLFSSL_DHwolfSSL_EVP_PKEY_get0_DH (WOLFSSL_EVP_PKEY *key)
 
WOLFSSL_API WOLFSSL_DHwolfSSL_EVP_PKEY_get1_DH (WOLFSSL_EVP_PKEY *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_set1_RSA (WOLFSSL_EVP_PKEY *pkey, WOLFSSL_RSA *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_set1_DSA (WOLFSSL_EVP_PKEY *pkey, WOLFSSL_DSA *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_set1_DH (WOLFSSL_EVP_PKEY *pkey, WOLFSSL_DH *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_set1_EC_KEY (WOLFSSL_EVP_PKEY *pkey, WOLFSSL_EC_KEY *key)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_assign (WOLFSSL_EVP_PKEY *pkey, int type, void *key)
 
WOLFSSL_API WOLFSSL_EVP_PKEYwolfSSL_EVP_PKEY_new_mac_key (int type, ENGINE *e, const unsigned char *key, int keylen)
 
WOLFSSL_API const unsigned char * wolfSSL_EVP_PKEY_get0_hmac (const WOLFSSL_EVP_PKEY *pkey, size_t *len)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_sign_init (WOLFSSL_EVP_PKEY_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_sign (WOLFSSL_EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, const unsigned char *tbs, size_t tbslen)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_keygen_init (WOLFSSL_EVP_PKEY_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_keygen (WOLFSSL_EVP_PKEY_CTX *ctx, WOLFSSL_EVP_PKEY **ppkey)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_bits (const WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_CTX_free (WOLFSSL_EVP_PKEY_CTX *ctx)
 
WOLFSSL_API WOLFSSL_EVP_PKEY_CTXwolfSSL_EVP_PKEY_CTX_new (WOLFSSL_EVP_PKEY *pkey, WOLFSSL_ENGINE *e)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_CTX_set_rsa_padding (WOLFSSL_EVP_PKEY_CTX *ctx, int padding)
 
WOLFSSL_API WOLFSSL_EVP_PKEY_CTXwolfSSL_EVP_PKEY_CTX_new_id (int id, WOLFSSL_ENGINE *e)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_CTX_set_rsa_keygen_bits (WOLFSSL_EVP_PKEY_CTX *ctx, int bits)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_derive_init (WOLFSSL_EVP_PKEY_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_derive_set_peer (WOLFSSL_EVP_PKEY_CTX *ctx, WOLFSSL_EVP_PKEY *peer)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_derive (WOLFSSL_EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_decrypt (WOLFSSL_EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen, const unsigned char *in, size_t inlen)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_decrypt_init (WOLFSSL_EVP_PKEY_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_encrypt (WOLFSSL_EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen, const unsigned char *in, size_t inlen)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_encrypt_init (WOLFSSL_EVP_PKEY_CTX *ctx)
 
WOLFSSL_API WOLFSSL_EVP_PKEYwolfSSL_EVP_PKEY_new (void)
 
WOLFSSL_API WOLFSSL_EVP_PKEYwolfSSL_EVP_PKEY_new_ex (void *heap)
 
WOLFSSL_API void wolfSSL_EVP_PKEY_free (WOLFSSL_EVP_PKEY *)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_size (WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_missing_parameters (WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_cmp (const WOLFSSL_EVP_PKEY *a, const WOLFSSL_EVP_PKEY *b)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_type (int type)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_id (const EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_PKEY_base_id (const EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_SignFinal (WOLFSSL_EVP_MD_CTX *ctx, unsigned char *sigret, unsigned int *siglen, WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_SignInit (WOLFSSL_EVP_MD_CTX *ctx, const WOLFSSL_EVP_MD *type)
 
WOLFSSL_API int wolfSSL_EVP_SignInit_ex (WOLFSSL_EVP_MD_CTX *ctx, const WOLFSSL_EVP_MD *type, WOLFSSL_ENGINE *impl)
 
WOLFSSL_API int wolfSSL_EVP_SignUpdate (WOLFSSL_EVP_MD_CTX *ctx, const void *data, size_t len)
 
WOLFSSL_API int wolfSSL_EVP_VerifyFinal (WOLFSSL_EVP_MD_CTX *ctx, unsigned char *sig, unsigned int sig_len, WOLFSSL_EVP_PKEY *pkey)
 
WOLFSSL_API int wolfSSL_EVP_VerifyInit (WOLFSSL_EVP_MD_CTX *ctx, const WOLFSSL_EVP_MD *type)
 
WOLFSSL_API int wolfSSL_EVP_VerifyUpdate (WOLFSSL_EVP_MD_CTX *ctx, const void *data, size_t len)
 
WOLFSSL_API void * wolfSSL_EVP_X_STATE (const WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_X_STATE_LEN (const WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API void wolfSSL_3des_iv (WOLFSSL_EVP_CIPHER_CTX *ctx, int doset, unsigned char *iv, int len)
 
WOLFSSL_API void wolfSSL_aes_ctr_iv (WOLFSSL_EVP_CIPHER_CTX *ctx, int doset, unsigned char *iv, int len)
 
WOLFSSL_API int wolfSSL_StoreExternalIV (WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_SetInternalIV (WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_block_size (const WOLFSSL_EVP_CIPHER_CTX *ctx)
 This is a getter function for the ctx block size. More...
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_block_size (const WOLFSSL_EVP_CIPHER *cipher)
 This is a getter function for the block size of cipher. More...
 
WOLFSSL_API unsigned long WOLFSSL_EVP_CIPHER_mode (const WOLFSSL_EVP_CIPHER *cipher)
 
WOLFSSL_API unsigned long WOLFSSL_CIPHER_mode (const WOLFSSL_EVP_CIPHER *cipher)
 
WOLFSSL_API unsigned long wolfSSL_EVP_CIPHER_flags (const WOLFSSL_EVP_CIPHER *cipher)
 
WOLFSSL_API void wolfSSL_EVP_CIPHER_CTX_set_flags (WOLFSSL_EVP_CIPHER_CTX *ctx, int flags)
 Setter function for WOLFSSL_EVP_CIPHER_CTX structure. More...
 
WOLFSSL_API void wolfSSL_EVP_CIPHER_CTX_clear_flags (WOLFSSL_EVP_CIPHER_CTX *ctx, int flags)
 Clearing function for WOLFSSL_EVP_CIPHER_CTX structure. More...
 
WOLFSSL_API unsigned long wolfSSL_EVP_CIPHER_CTX_mode (const WOLFSSL_EVP_CIPHER_CTX *ctx)
 
WOLFSSL_API int wolfSSL_EVP_CIPHER_CTX_set_padding (WOLFSSL_EVP_CIPHER_CTX *c, int pad)
 Setter function for WOLFSSL_EVP_CIPHER_CTX structure to use padding. More...
 
WOLFSSL_API int wolfSSL_EVP_add_digest (const WOLFSSL_EVP_MD *digest)
 
WOLFSSL_API int wolfSSL_EVP_add_cipher (const WOLFSSL_EVP_CIPHER *cipher)
 
WOLFSSL_API void wolfSSL_EVP_cleanup (void)
 
WOLFSSL_API int wolfSSL_add_all_algorithms (void)
 
WOLFSSL_API int wolfSSL_OpenSSL_add_all_algorithms_conf (void)
 
WOLFSSL_API int wolfSSL_OpenSSL_add_all_algorithms_noconf (void)
 
WOLFSSL_API int wolfSSL_EVP_read_pw_string (char *, int, const char *, int)
 
WOLFSSL_API int wolfSSL_PKCS5_PBKDF2_HMAC_SHA1 (const char *pass, int passlen, const unsigned char *salt, int saltlen, int iter, int keylen, unsigned char *out)
 
WOLFSSL_API int wolfSSL_PKCS5_PBKDF2_HMAC (const char *pass, int passlen, const unsigned char *salt, int saltlen, int iter, const WOLFSSL_EVP_MD *digest, int keylen, unsigned char *out)
 
WOLFSSL_LOCAL int wolfSSL_EVP_get_hashinfo (const WOLFSSL_EVP_MD *evp, int *pHash, int *pHashSz)
 
WOLFSSL_API void printPKEY (WOLFSSL_EVP_PKEY *k)
 

Variables

 C
 

Detailed Description

evp.h defines mini evp openssl compatibility layer

Variable Documentation

◆ C

C
Initial value:
{
#endif
typedef char WOLFSSL_EVP_CIPHER