mbed TLS library

Dependents:   HTTPClient-SSL WS_SERVER

Embed: (wiki syntax)

« Back to documentation index

pk_info_t Struct Reference

pk_info_t Struct Reference

Public key information and operations. More...

#include <pk.h>

Data Fields

pk_type_t type
 Public key type.
const char * name
 Type name.
size_t(* get_size )(const void *)
 Get key size in bits.
int(* can_do )(pk_type_t type)
 Tell if the context implements this type (e.g.
int(* verify_func )(void *ctx, md_type_t md_alg, const unsigned char *hash, size_t hash_len, const unsigned char *sig, size_t sig_len)
 Verify signature.
int(* sign_func )(void *ctx, md_type_t md_alg, const unsigned char *hash, size_t hash_len, unsigned char *sig, size_t *sig_len, int(*f_rng)(void *, unsigned char *, size_t), void *p_rng)
 Make signature.
int(* decrypt_func )(void *ctx, 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.
int(* encrypt_func )(void *ctx, 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.
int(* check_pair_func )(const void *pub, const void *prv)
 Check public-private key pair.
void *(* ctx_alloc_func )(void)
 Allocate a new context.
void(* ctx_free_func )(void *ctx)
 Free the given context.
void(* debug_func )(const void *ctx, pk_debug_item *items)
 Interface with the debug module.

Detailed Description

Public key information and operations.

Definition at line 139 of file pk.h.


Field Documentation

Tell if the context implements this type (e.g.

ECKEY can do ECDSA)

Definition at line 151 of file pk.h.

int(* check_pair_func)(const void *pub, const void *prv)

Check public-private key pair.

Definition at line 178 of file pk.h.

void*(* ctx_alloc_func)(void)

Allocate a new context.

Definition at line 181 of file pk.h.

void(* ctx_free_func)(void *ctx)

Free the given context.

Definition at line 184 of file pk.h.

void(* debug_func)(const void *ctx, pk_debug_item *items)

Interface with the debug module.

Definition at line 187 of file pk.h.

int(* decrypt_func)(void *ctx, 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.

Definition at line 166 of file pk.h.

int(* encrypt_func)(void *ctx, 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.

Definition at line 172 of file pk.h.

size_t(* get_size)(const void *)

Get key size in bits.

Definition at line 148 of file pk.h.

const char* name

Type name.

Definition at line 145 of file pk.h.

int(* sign_func)(void *ctx, md_type_t md_alg, const unsigned char *hash, size_t hash_len, unsigned char *sig, size_t *sig_len, int(*f_rng)(void *, unsigned char *, size_t), void *p_rng)

Make signature.

Definition at line 159 of file pk.h.

Public key type.

Definition at line 142 of file pk.h.

int(* verify_func)(void *ctx, md_type_t md_alg, const unsigned char *hash, size_t hash_len, const unsigned char *sig, size_t sig_len)

Verify signature.

Definition at line 154 of file pk.h.