Example program to test AES-GCM functionality. Used for a workshop

Dependencies:   mbed

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.
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 130 of file pk.h.


Field Documentation

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

ECKEY can do ECDSA)

Definition at line 142 of file pk.h.

void*(* ctx_alloc_func)(void)

Allocate a new context.

Definition at line 169 of file pk.h.

void(* ctx_free_func)(void *ctx)

Free the given context.

Definition at line 172 of file pk.h.

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

Interface with the debug module.

Definition at line 175 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 157 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 163 of file pk.h.

size_t(* get_size)(const void *)

Get key size in bits.

Definition at line 139 of file pk.h.

const char* name

Type name.

Definition at line 136 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 150 of file pk.h.

Public key type.

Definition at line 133 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 145 of file pk.h.