HKDS: Heirarchal Key Derivation System 1.0.0.2 (A2)
A fast post-quantum secure replacement for DUKPT
|
This file contains the HKDS factory definitions. More...
Go to the source code of this file.
Functions | |
HKDS_EXPORT_API void | hkds_factory_serialize_packet_header (uint8_t *output, const hkds_packet_header *header) |
Serialize a packet header to a byte array. | |
HKDS_EXPORT_API void | hkds_factory_serialize_client_message (uint8_t *output, const hkds_client_message_request *header) |
Serialize a client message request to a byte array. | |
HKDS_EXPORT_API void | hkds_factory_serialize_client_token (uint8_t *output, const hkds_client_token_request *header) |
Serialize a client token request to a byte array. | |
HKDS_EXPORT_API void | hkds_factory_serialize_server_message (uint8_t *output, const hkds_server_message_response *header) |
Serialize a server message response to a byte array. | |
HKDS_EXPORT_API void | hkds_factory_serialize_server_token (uint8_t *output, const hkds_server_token_response *header) |
Serialize a server token response to a byte array. | |
HKDS_EXPORT_API void | hkds_factory_serialize_administrative_message (uint8_t *output, const hkds_administrative_message *header) |
Serialize an administrative message to a byte array. | |
HKDS_EXPORT_API void | hkds_factory_serialize_error_message (uint8_t *output, const hkds_error_message *header) |
Serialize an error message to a byte array. | |
HKDS_EXPORT_API hkds_packet_header | hkds_factory_extract_packet_header (const uint8_t *input) |
Extract a packet header structure from a byte array. | |
HKDS_EXPORT_API hkds_client_message_request | hkds_factory_extract_client_message (const uint8_t *input) |
Extract a client message request from a byte array. | |
HKDS_EXPORT_API hkds_client_token_request | hkds_factory_extract_client_token (const uint8_t *input) |
Extract a client token request from a byte array. | |
HKDS_EXPORT_API hkds_server_message_response | hkds_factory_extract_server_message (const uint8_t *input) |
Extract a server message response from a byte array. | |
HKDS_EXPORT_API hkds_server_token_response | hkds_factory_extract_server_token (const uint8_t *input) |
Extract a server token response from a byte array. | |
HKDS_EXPORT_API hkds_administrative_message | hkds_factory_extract_administrative_message (const uint8_t *input) |
Extract an administrative message from a byte array. | |
HKDS_EXPORT_API hkds_error_message | hkds_factory_extract_error_message (const uint8_t *input) |
Extract an error message from a byte array. | |
HKDS_EXPORT_API hkds_client_message_request | hkds_factory_create_client_message_request (const uint8_t *message, const uint8_t *ksn, const uint8_t *tag) |
Build a client message request from components. | |
HKDS_EXPORT_API hkds_client_token_request | hkds_factory_create_client_token_request (const uint8_t *ksn) |
Build a client token request from components. | |
HKDS_EXPORT_API hkds_server_message_response | hkds_factory_create_server_message_response (const uint8_t *message) |
Build a server message response from components. | |
HKDS_EXPORT_API hkds_server_token_response | hkds_factory_create_server_token_reponse (const uint8_t *etok) |
Build a server token response from components. | |
HKDS_EXPORT_API hkds_administrative_message | hkds_factory_create_administrative_message (const uint8_t *message) |
Build an administrative message from components. | |
HKDS_EXPORT_API hkds_error_message | hkds_factory_create_error_message (const uint8_t *message, hkds_error_type err) |
Build an error message from components. | |
HKDS_EXPORT_API hkds_packet_type | hkds_factory_extract_packet_type (const uint8_t *input) |
Extract the packet type enumeral from a serialized packet header. | |
HKDS_EXPORT_API hkds_protocol_id | hkds_factory_extract_protocol_id (const uint8_t *input) |
Extract the protocol id numeral from a serialized packet header. | |
HKDS_EXPORT_API size_t | hkds_factory_extract_packet_size (const uint8_t *input) |
Extract the packet size from a serialized packet header. | |
HKDS_EXPORT_API uint8_t | hkds_factory_extract_packet_sequence (const uint8_t *input) |
Extract the packet sequence from a serialized packet header. | |
This file contains the HKDS factory definitions.
This file provides functions to serialize and deserialize HKDS packet structures to and from raw byte arrays, and functions to construct HKDS packet structures from individual components. The functions support:
HKDS_EXPORT_API hkds_administrative_message hkds_factory_create_administrative_message | ( | const uint8_t * | message | ) |
Build an administrative message from components.
message | [in] The administrative message array. |
HKDS_EXPORT_API hkds_client_message_request hkds_factory_create_client_message_request | ( | const uint8_t * | message, |
const uint8_t * | ksn, | ||
const uint8_t * | tag ) |
Build a client message request from components.
message | [in] The encrypted client message array. |
ksn | [in] The client's KSN array. |
tag | [in] The [optional] authentication tag. |
HKDS_EXPORT_API hkds_client_token_request hkds_factory_create_client_token_request | ( | const uint8_t * | ksn | ) |
Build a client token request from components.
ksn | [in] The client's KSN array. |
HKDS_EXPORT_API hkds_error_message hkds_factory_create_error_message | ( | const uint8_t * | message, |
hkds_error_type | err ) |
Build an error message from components.
message | [in] The error message array. |
err | [in] The error type to be included in the packet header. |
HKDS_EXPORT_API hkds_server_message_response hkds_factory_create_server_message_response | ( | const uint8_t * | message | ) |
Build a server message response from components.
message | [in] The server message response array. |
HKDS_EXPORT_API hkds_server_token_response hkds_factory_create_server_token_reponse | ( | const uint8_t * | etok | ) |
Build a server token response from components.
etok | [in] The server's encrypted token response array. |
HKDS_EXPORT_API hkds_administrative_message hkds_factory_extract_administrative_message | ( | const uint8_t * | input | ) |
Extract an administrative message from a byte array.
input | [in] The serialized administrative message input array. |
HKDS_EXPORT_API hkds_client_message_request hkds_factory_extract_client_message | ( | const uint8_t * | input | ) |
Extract a client message request from a byte array.
input | [in] The serialized client message request input array. |
HKDS_EXPORT_API hkds_client_token_request hkds_factory_extract_client_token | ( | const uint8_t * | input | ) |
Extract a client token request from a byte array.
input | [in] The serialized client token request input array. |
HKDS_EXPORT_API hkds_error_message hkds_factory_extract_error_message | ( | const uint8_t * | input | ) |
Extract an error message from a byte array.
input | [in] The serialized error message input array. |
HKDS_EXPORT_API hkds_packet_header hkds_factory_extract_packet_header | ( | const uint8_t * | input | ) |
Extract a packet header structure from a byte array.
input | [in] The serialized packet input array. |
HKDS_EXPORT_API uint8_t hkds_factory_extract_packet_sequence | ( | const uint8_t * | input | ) |
Extract the packet sequence from a serialized packet header.
input | [in] The serialized packet header array. |
HKDS_EXPORT_API size_t hkds_factory_extract_packet_size | ( | const uint8_t * | input | ) |
Extract the packet size from a serialized packet header.
input | [in] The serialized packet header array. |
HKDS_EXPORT_API hkds_packet_type hkds_factory_extract_packet_type | ( | const uint8_t * | input | ) |
Extract the packet type enumeral from a serialized packet header.
input | [in] The serialized packet header array. |
HKDS_EXPORT_API hkds_protocol_id hkds_factory_extract_protocol_id | ( | const uint8_t * | input | ) |
Extract the protocol id numeral from a serialized packet header.
input | [in] The serialized packet header array. |
HKDS_EXPORT_API hkds_server_message_response hkds_factory_extract_server_message | ( | const uint8_t * | input | ) |
Extract a server message response from a byte array.
input | [in] The serialized server message response input array. |
HKDS_EXPORT_API hkds_server_token_response hkds_factory_extract_server_token | ( | const uint8_t * | input | ) |
Extract a server token response from a byte array.
input | [in] The serialized server token response input array. |
HKDS_EXPORT_API void hkds_factory_serialize_administrative_message | ( | uint8_t * | output, |
const hkds_administrative_message * | header ) |
Serialize an administrative message to a byte array.
output | [out] The serialized administrative message header. |
header | [in] The administrative message structure. |
HKDS_EXPORT_API void hkds_factory_serialize_client_message | ( | uint8_t * | output, |
const hkds_client_message_request * | header ) |
Serialize a client message request to a byte array.
output | [out] The serialized client message request header. |
header | [in] The client message request structure. |
HKDS_EXPORT_API void hkds_factory_serialize_client_token | ( | uint8_t * | output, |
const hkds_client_token_request * | header ) |
Serialize a client token request to a byte array.
output | [out] The serialized client token request header. |
header | [in] The client token request structure. |
HKDS_EXPORT_API void hkds_factory_serialize_error_message | ( | uint8_t * | output, |
const hkds_error_message * | header ) |
Serialize an error message to a byte array.
output | [out] The serialized error message header. |
header | [in] The error message structure. |
HKDS_EXPORT_API void hkds_factory_serialize_packet_header | ( | uint8_t * | output, |
const hkds_packet_header * | header ) |
Serialize a packet header to a byte array.
output | [out] The serialized packet header. |
header | [in] The packet header structure. |
HKDS_EXPORT_API void hkds_factory_serialize_server_message | ( | uint8_t * | output, |
const hkds_server_message_response * | header ) |
Serialize a server message response to a byte array.
output | [out] The serialized server message response header. |
header | [in] The server message response structure. |
HKDS_EXPORT_API void hkds_factory_serialize_server_token | ( | uint8_t * | output, |
const hkds_server_token_response * | header ) |
Serialize a server token response to a byte array.
output | [out] The serialized server token response header. |
header | [in] The server token response structure. |