Public key information and operations.
Note
The library does not support custom pk info structures, only built-in structures returned by mbedtls_cipher_info_from_type().
Public Attributes#
mbedtls_pk_type_t
Public key type.
const char *
Type name.
size_t(*
Get key size in bits.
int(*
Tell if the context implements this type (e.g.
int(*
Verify signature.
int(*
Make signature.
int(*
Decrypt message.
int(*
Encrypt message.
int(*
Check public-private key pair.
void *(*
Allocate a new context.
void(*
Free the given context.
void(*
Interface with the debug module.
Public Attribute Documentation#
can_do#
int(* mbedtls_pk_info_t::can_do) (mbedtls_pk_type_t type)
Tell if the context implements this type (e.g.
ECKEY can do ECDSA)
verify_func#
int(* mbedtls_pk_info_t::verify_func) (mbedtls_pk_context *pk, mbedtls_md_type_t md_alg, const unsigned char *hash, size_t hash_len, const unsigned char *sig, size_t sig_len)
Verify signature.
sign_func#
int(* mbedtls_pk_info_t::sign_func) (mbedtls_pk_context *pk, mbedtls_md_type_t md_alg, const unsigned char *hash, size_t hash_len, unsigned char *sig, size_t sig_size, size_t *sig_len, int(*f_rng)(void *, unsigned char *, size_t), void *p_rng)
Make signature.
decrypt_func#
int(* mbedtls_pk_info_t::decrypt_func) (mbedtls_pk_context *pk, const unsigned char *input, size_t ilen, unsigned char *output, size_t *olen, size_t osize, int(*f_rng)(void *, unsigned char *, size_t), void *p_rng)
Decrypt message.
encrypt_func#
int(* mbedtls_pk_info_t::encrypt_func) (mbedtls_pk_context *pk, const unsigned char *input, size_t ilen, unsigned char *output, size_t *olen, size_t osize, int(*f_rng)(void *, unsigned char *, size_t), void *p_rng)
Encrypt message.
check_pair_func#
int(* mbedtls_pk_info_t::check_pair_func) (mbedtls_pk_context *pub, mbedtls_pk_context *prv, int(*f_rng)(void *, unsigned char *, size_t), void *p_rng)
Check public-private key pair.
debug_func#
void(* mbedtls_pk_info_t::debug_func) (mbedtls_pk_context *pk, mbedtls_pk_debug_item *items)
Interface with the debug module.