libsignal-protocol-c
master
key_helper.h
1
#ifndef KEY_HELPER_H
2
#define KEY_HELPER_H
3
4
#include <stdint.h>
5
#include "signal_protocol_types.h"
6
7
#ifdef __cplusplus
8
extern
"C"
{
9
#endif
10
18
int
signal_protocol_key_helper_generate_identity_key_pair(
ratchet_identity_key_pair
**key_pair,
signal_context
*global_context);
19
32
int
signal_protocol_key_helper_generate_registration_id(uint32_t *registration_id,
int
extended_range,
signal_context
*global_context);
33
41
int
signal_protocol_key_helper_get_random_sequence(
int
*value,
int
max,
signal_context
*global_context);
42
59
int
signal_protocol_key_helper_generate_pre_keys(
signal_protocol_key_helper_pre_key_list_node
**head,
60
unsigned
int
start,
unsigned
int
count,
61
signal_context
*global_context);
62
69
session_pre_key
*signal_protocol_key_helper_key_list_element(
const
signal_protocol_key_helper_pre_key_list_node
*node);
70
77
signal_protocol_key_helper_pre_key_list_node
*signal_protocol_key_helper_key_list_next(
const
signal_protocol_key_helper_pre_key_list_node
*node);
78
84
void
signal_protocol_key_helper_key_list_free(
signal_protocol_key_helper_pre_key_list_node
*head);
85
96
int
signal_protocol_key_helper_generate_signed_pre_key(
session_signed_pre_key
**signed_pre_key,
97
const
ratchet_identity_key_pair
*identity_key_pair,
98
uint32_t signed_pre_key_id,
99
uint64_t timestamp,
100
signal_context
*global_context);
101
102
/*
103
* Generate a sender signing key pair
104
*
105
* @param key_pair the generated key pair
106
* @return 0 on success, or negative on failure
107
*/
108
int
signal_protocol_key_helper_generate_sender_signing_key(
ec_key_pair
**key_pair,
signal_context
*global_context);
109
110
/*
111
* Generate a sender key
112
*
113
* @param key_buffer buffer to be allocated and populated with the result
114
* @return 0 on success, or negative on failure
115
*/
116
int
signal_protocol_key_helper_generate_sender_key(
signal_buffer
**key_buffer,
signal_context
*global_context);
117
118
/*
119
* Generate a sender key ID
120
*
121
* @param key_id assigned to the generated ID
122
* @return 0 on success, or negative on failure
123
*/
124
int
signal_protocol_key_helper_generate_sender_key_id(uint32_t *key_id,
signal_context
*global_context);
125
126
#ifdef __cplusplus
127
}
128
#endif
129
130
#endif
/* KEY_HELPER_H */
signal_protocol_key_helper_pre_key_list_node
Definition:
key_helper.c:11
signal_context
Definition:
signal_protocol_internal.h:23
signal_buffer
Definition:
signal_protocol_internal.h:18
session_signed_pre_key
Definition:
session_pre_key.c:17
ec_key_pair
Definition:
curve.c:31
session_pre_key
Definition:
session_pre_key.c:11
ratchet_identity_key_pair
Definition:
ratchet.c:38
src
key_helper.h
Generated by
1.8.13