void gcm_set_key( //鍵から、GCM 用のキースケジュールを作成する

GCM
void gcm_set_key(
//
GCM_CTX* ctx,
const UB* key,
UINT len
)
void gcm_enc(
// GCM
GCM_CTX* ctx,
UB* out,
const UB* in,
UINT sz,
const UB* iv,
UINT iv_sz,
UB* auth_tag,
UINT auth_tag_sz,
const UB* auth_in,
UINT auth_in_sz
)
ER
)
gcm_dec(
// GCM
GCM_CTX* ctx,
UB* out,
const UB* in,
UINT sz,
const UB* iv,
UINT iv_sz,
const UB* auth_tag,
UINT auth_tag_sz,
const UB* auth_in,
UINT auth_in_sz
GCM
//
//
//
(
)
//
//
//
//
//
//
//
//
// Additional authenticated data
// Additional authenticated data
//
//
//
//
//
//
//
//
// Additional authenticated data
// Additional authenticated data
CCM
void ccm_set_key(
//
CCM_CTX* ctx,
const UB* key,
UINT key_sz
)
//
//
//
void ccm_enc(
// CCM
CCM_CTX* ctx,
UB* out,
const UB* in,
UINT in_sz,
const UB* nonce,
UINT nonce_sz,
UB* auth_tag,
UINT auth_tag_sz,
const UB* auth_in,
UINT auth_in_sz
)
//
//
//
//
//
//
//
//
//
//
nonce
nonce
//
//
//
//
//
//
//
//
//
//
nonce
nonce
ER
)
ccm_dec(
// CCM
CCM_CTX* ctx,
UB* out,
const UB* in,
UINT in_sz,
const UB* nonce,
UINT nonce_sz,
const UB* auth_tag,
UINT auth_tag_sz,
const UB* auth_in,
UINT auth_in_sz
CCM
(
)
Additional authenticated data
Additional authenticated data
Additional authenticated data
Additional authenticated data