58 #ifndef BIGNUM_DRIVER_H_ 59 #define BIGNUM_DRIVER_H_ 89 const uint8_t number_size,
90 const uint32_t *modulus,
91 const uint8_t modulus_size,
92 uint32_t *result_vector,
93 struct process *process);
114 const uint8_t buffer_size,
115 const uint32_t result_vector);
134 const uint32_t *number2,
136 struct process *process);
170 const uint8_t number_size,
171 const uint32_t *modulus,
172 const uint8_t modulus_size,
173 uint32_t *result_vector,
174 struct process *process);
196 const uint8_t buffer_size,
197 const uint32_t result_vector);
219 const uint8_t multiplicand_size,
220 const uint32_t *multiplier,
221 const uint8_t multiplier_size,
222 uint32_t *result_vector,
223 struct process *process);
247 uint32_t *buffer_size,
248 const uint32_t result_vector);
268 const uint8_t number1_size,
269 const uint32_t *number2,
270 const uint8_t number2_size,
271 uint32_t *result_vector,
272 struct process *process);
296 uint32_t *buffer_size,
297 const uint32_t result_vector);
317 const uint8_t number1_size,
318 const uint32_t *number2,
319 const uint8_t number2_size,
320 uint32_t *result_vector,
321 struct process *process);
341 uint32_t *buffer_size,
342 const uint32_t result_vector);
368 const uint8_t number_size,
369 const uint32_t *modulus,
370 const uint8_t modulus_size,
371 const uint32_t *base,
372 const uint8_t base_size,
373 uint32_t *result_vector,
374 struct process *process);
401 const uint8_t buffer_size,
402 const uint32_t result_vector);
424 const uint8_t dividend_size,
425 const uint32_t *divisor,
426 const uint8_t divisor_size,
427 uint32_t *result_vector,
428 struct process *process);
452 uint32_t *buffer_size,
453 const uint32_t result_vector);
uint8_t bignum_cmp_start(const uint32_t *number1, const uint32_t *number2, uint8_t size, struct process *process)
Starts the comparison of two big numbers.
uint8_t bignum_add_get_result(uint32_t *buffer, uint32_t *buffer_size, const uint32_t result_vector)
Gets the result of the addition operation on two big number.
uint8_t bignum_subtract_get_result(uint32_t *buffer, uint32_t *buffer_size, const uint32_t result_vector)
Gets the result of big number subtract.
uint8_t bignum_mod_get_result(uint32_t *buffer, const uint8_t buffer_size, const uint32_t result_vector)
Gets the result of the big number modulus operation.
uint8_t bignum_mod_start(const uint32_t *number, const uint8_t number_size, const uint32_t *modulus, const uint8_t modulus_size, uint32_t *result_vector, struct process *process)
Starts the big number modulus operation.
uint8_t bignum_exp_mod_start(const uint32_t *number, const uint8_t number_size, const uint32_t *modulus, const uint8_t modulus_size, const uint32_t *base, const uint8_t base_size, uint32_t *result_vector, struct process *process)
Starts the big number moduluar Exponentiation operation.
uint8_t bignum_inv_mod_get_result(uint32_t *buffer, const uint8_t buffer_size, const uint32_t result_vector)
Gets the result of the big number inverse modulo operation.
uint8_t bignum_cmp_get_result(void)
Gets the result of the comparison operation of two big numbers.
Header file for the cc2538 PKA engine driver.
uint8_t bignum_exp_mod_get_result(uint32_t *buffer, const uint8_t buffer_size, const uint32_t result_vector)
Gets the result of the big number modulus operation result.
uint8_t bignum_inv_mod_start(const uint32_t *number, const uint8_t number_size, const uint32_t *modulus, const uint8_t modulus_size, uint32_t *result_vector, struct process *process)
Starts the big number inverse modulo operation.
uint8_t bignum_mul_get_result(uint32_t *buffer, uint32_t *buffer_size, const uint32_t result_vector)
Gets the results of the big number multiplication.
uint8_t bignum_mul_start(const uint32_t *multiplicand, const uint8_t multiplicand_size, const uint32_t *multiplier, const uint8_t multiplier_size, uint32_t *result_vector, struct process *process)
Starts the big number multiplication.
uint8_t bignum_add_start(const uint32_t *number1, const uint8_t number1_size, const uint32_t *number2, const uint8_t number2_size, uint32_t *result_vector, struct process *process)
Starts the addition of two big number.
uint8_t bignum_subtract_start(const uint32_t *number1, const uint8_t number1_size, const uint32_t *number2, const uint8_t number2_size, uint32_t *result_vector, struct process *process)
Starts the substract of two big number.
uint8_t bignum_divide_start(const uint32_t *dividend, const uint8_t dividend_size, const uint32_t *divisor, const uint8_t divisor_size, uint32_t *result_vector, struct process *process)
Starts the big number Divide.
uint8_t bignum_divide_get_result(uint32_t *buffer, uint32_t *buffer_size, const uint32_t result_vector)
Gets the results of the big number Divide.