Angus Gratton
1d47755588
mbedtls hardware bignum: Use memcpy instead of REG_WRITE/REG_READ in a loop
...
Removes memory barriers for better performance, thanks Ivan for pointing
this out.
Manually unrolling the loop further seemed like diminishing returns.
2016-11-21 18:09:09 +11:00
Angus Gratton
1cc0b3000b
mbedtls hardware bignum: Expose ESP-only bignum API in wrapper mbedtls/bignum.h
2016-11-18 17:08:14 +11:00
Angus Gratton
36f29017b6
mbedtls hardware bignum: Support "RSA" interrupt for end of operation
...
Allows CPU to do other things which bignum operation is in
progress.
2016-11-18 15:53:00 +11:00
Angus Gratton
68d370542a
mbedtls hardware RSA: Put into menuconfig, squash warnings
...
All combinations of enabling/disabling hardware acceleration no longer
show unused warnings.
2016-11-18 15:50:45 +11:00
Angus Gratton
f87be70d51
mbedtls hardware RSA: Combine methods for calculating M' & r inverse
...
Remove redundant gcd calculation, use consistent terminology.
Also remove leftover debugging code
2016-11-18 14:10:20 +11:00
Dong Heng
6b687b43f4
mbedtls hardware RSA: Fix "mbedtls_mpi_exp_mod" hardware calculations
2016-11-18 14:09:59 +11:00
Angus Gratton
ce7b8059de
RSA Accelerator: Remove timing-sensitive optimisations
...
Avoid potentially leaking timing information about number of bits set in
MPI values.
2016-10-12 17:18:24 +11:00
Angus Gratton
9632c8e56c
RSA Accelerator: Add mod_exp, refactor to avoid memory allocation & copying
...
Not fully working at the moment, mod_exp has a bug.
2016-10-12 16:19:09 +11:00
Angus Gratton
6b3bc4d8c5
hwcrypto bignum: Implement multiplication modulo
...
Fixes case where hardware bignum multiplication fails due to either
operand >2048 bits.
2016-10-12 15:45:08 +11:00
Angus Gratton
1a6dd44d03
hwcrypto bignum: Use mbedtls_mpi data structures for all bignum data
...
Still doesn't solve the problem of multiplying two numbers where one is
>2048 bits, needed for RSA support.
2016-10-12 15:45:08 +11:00
Wu Jian Gang
95defc7d32
mbedtls: Use hardware accelerated AES, SHA, bignum
2016-09-08 17:41:43 +08:00