max32690_crypto_pkc.c
void maaSetValue(uint_t offset, uint32_t value, uint_t length)
Set operand value.
Definition: max32690_crypto_pkc.c:55
MAX32690 hardware cryptographic accelerator.
error_t maaExportMpi(uint_t offset, Mpi *r, uint_t length)
Export multiple-precision integer.
Definition: max32690_crypto_pkc.c:117
#define CTB_MAA_CTRL_CALC_MOD_EXP_Val
Definition: max32690_crypto_pkc.h:96
error_t ecMulMod(const EcDomainParameters *params, Mpi *r, const Mpi *a, const Mpi *b)
Modular multiplication.
Definition: max32690_crypto_pkc.c:323
void maaImportMpi(uint_t offset, const Mpi *a, uint_t length)
Import multiple-precision integer.
Definition: max32690_crypto_pkc.c:84
error_t mpiExpModFast(Mpi *r, const Mpi *a, const Mpi *e, const Mpi *p)
Modular exponentiation (fast calculation)
Definition: max32690_crypto_pkc.c:167
MAX32690 public-key hardware accelerator.
General definitions for cryptographic algorithms.
void osAcquireMutex(OsMutex *mutex)
Acquire ownership of the specified mutex object.
Definition: os_port_chibios.c:396
void osReleaseMutex(OsMutex *mutex)
Release ownership of the specified mutex object.
Definition: os_port_chibios.c:408
#define CTB_MAA_CTRL_CALC_MOD_MUL_Val
Definition: max32690_crypto_pkc.h:98
#define CTB_MAA_CTRL_CALC_MOD_SQR_Val
Definition: max32690_crypto_pkc.h:97
ECC (Elliptic Curve Cryptography)
error_t mpiGrow(Mpi *r, uint_t size)
Adjust the size of multiple precision integer.
Definition: mpi.c:94
error_t mpiExpMod(Mpi *r, const Mpi *a, const Mpi *e, const Mpi *p)
Modular exponentiation.
Definition: esp32_crypto_pkc.c:202
Debugging facilities.
error_t ecSqrMod(const EcDomainParameters *params, Mpi *r, const Mpi *a)
Fast modular squaring.
Definition: max32690_crypto_pkc.c:389
error_t mpiExpModRegular(Mpi *r, const Mpi *a, const Mpi *e, const Mpi *p)
Modular exponentiation (regular calculation)
Definition: max32690_crypto_pkc.c:244