#ifndef __BKSECAPP_KDF_H
#define __BKSECAPP_KDF_H

typedef struct bksecapp_kdf_req_s
{
	uint32_t Reqkeylen;
	uint32_t ReqkeyContextLen;
	uint8_t  ReqkeyContext[BKSECAPP_MAX_REQ_SIZE - 8]; // Reqkeylen + ReqkeyContextLen
} __attribute__ ((packed)) bksecapp_kdf_req_t;


typedef struct bksecapp_kdf_rsp_s
{
	uint32_t Rspkeylen;
	uint8_t  Rspkeydata[BKSECAPP_MAX_RSP_SIZE - 4]; // Rspkeylen
} __attribute__ ((packed)) bksecapp_kdf_rsp_t;

int32_t bksecapp_kdf(bksecapp_kdf_req_t *kdf_in_data, bksecapp_kdf_rsp_t *kdf_out_data);

#endif
