ccli8
d66074fecc
[NUC472/M487] Coordinate crypto init among AES/DES/SHA/PRNG
...
Add counter to track crypto init among crypto sub-modules. It includes:
1. Enable crypto clock
2. Enable crypto interrupt
As counter gets zero, crypto clock is disabled to save power.
2018-01-05 09:18:18 +08:00
ccli8
b0eededdaf
[NUC472/M487] Fix DES alter. DMA buffer could locate at unsupported region
2018-01-05 09:18:18 +08:00
ccli8
f85875c7b6
[NUC472/M487] Fix AES alter. DMA buffer could locate at unsupported region
2018-01-05 09:18:18 +08:00
ccli8
70e9a90957
[NUC472/M487] Refine AES alter. input/output data endianness
2018-01-05 09:18:18 +08:00
ccli8
a1e202518f
[NUC472/M487] Fix AES alter. DMA buffer check
2018-01-05 09:18:18 +08:00
ccli8
20aa516e79
[NUC472/M487] Refine config check code
2018-01-05 09:18:17 +08:00
ccli8
126aa565c7
[NUC472/M487] Remove redundant S/W DES code
...
This S/W DES code was to test DES H/W port before.
2018-01-05 09:18:17 +08:00
ccli8
2e7f07e264
[NUC472/M487] Refine DES alter. code
2018-01-05 09:18:17 +08:00
ccli8
b2b67af189
[NUC472/M487] Add comment for DES alter. context
2018-01-05 09:18:17 +08:00
ccli8
ed57432c95
[NUC472/M487] Add comment for AES alter. context
2018-01-05 09:18:17 +08:00
ccli8
9e5837fd77
[NUC472/M487] Refine AES alter. code with IV endianness
2018-01-05 09:18:16 +08:00
ccli8
087186aba7
[NUC472/M487] Rework AES alter. CFB128
...
1. Fix bug on non-block aligned data size
2. More concise
2018-01-05 09:18:16 +08:00
ccli8
93f6ef996f
[NUC472/M487] Refine AES alter. DMA buffer code
2018-01-05 09:18:16 +08:00
ccli8
f24ca8c857
[NUC472/M487] Refine AES alter. code
2018-01-05 09:18:16 +08:00
ccli8
82bd285e51
[NUC472/M487] Support multiple contexts in AES alter. with context save & restore
2018-01-05 09:18:15 +08:00
ccli8
0d25a9c421
[NUC472/M487] Fix AES DMA buffer cannot locate at ROM region
2018-01-05 09:18:15 +08:00
ccli8
2dcc1e9e27
[NUC472/M487] Remove AES alter. dead code
2018-01-05 09:18:15 +08:00
ccli8
5665247d4a
[NUC472/M487] Fix AES alternative function not thread-safe
2018-01-05 09:18:14 +08:00
ccli8
315b684bd9
[NUC472] Refine coding style
2018-01-05 09:18:14 +08:00
ccli8
0c5b860409
[M487] Refine coding style
2018-01-05 09:18:14 +08:00
ccli8
19e9dbf799
[NUC472] Fix DES alternative function not thread-safe
2018-01-05 09:18:13 +08:00
ccli8
61d9e69be4
[NUC472] Remove unnecessary MBEDTLS_CONFIG_FILE check from AES/DES/SHA alternative
...
1. aes.h/des.h/sha1.h/sha256.h/sha512.h includes config.h before aes_alt.h/des_alt.h/sha1_alt.h/sha256_alt.h/sha512_alt.h.
2. aes_alt.h/des_alt.h/sha1_alt.h/sha256_alt.h/sha512_alt.h should not be included in any other location.
3. Just include aes.h/des.h/sha1.h/sha256.h/sha512.h in aes_alt.c/des_alt.c/sha1_alt.c/sha256_alt.c/sha512_alt.c.
2018-01-05 09:18:13 +08:00
ccli8
6b0213c13d
[NUC472] Remove other unnecessary AES alternative macro definitions
...
As MBEDTLS_AES_ALT is defined, alternative implementations for all AES functions should be defined.
2018-01-05 09:18:13 +08:00
ccli8
925eee0688
[NUC472] Remove debug code in AES alternative
2018-01-05 09:18:13 +08:00
ccli8
530b8dfdb9
[M487] Fix DES alternative function not thread-safe
2018-01-05 09:18:13 +08:00
ccli8
436ecdbd60
[M487] Remove unnecessary MBEDTLS_CONFIG_FILE check from AES/DES/SHA alternative
...
1. aes.h/des.h/sha1.h/sha256.h/sha512.h includes config.h before aes_alt.h/des_alt.h/sha1_alt.h/sha256_alt.h/sha512_alt.h.
2. aes_alt.h/des_alt.h/sha1_alt.h/sha256_alt.h/sha512_alt.h should not be included in any other location.
3. Just include aes.h/des.h/sha1.h/sha256.h/sha512.h in aes_alt.c/des_alt.c/sha1_alt.c/sha256_alt.c/sha512_alt.c.
2018-01-05 09:18:12 +08:00
ccli8
8f7df9ab41
[M487] Remove other unnecessary AES alternative macro definitions
...
As MBEDTLS_AES_ALT is defined, alternative implementations for all AES functions should be defined.
2018-01-05 09:18:12 +08:00
ccli8
fbf7d40778
[M487] Remove debug code in AES alternative
2018-01-05 09:18:12 +08:00
Martin Kojtal
3bedff36e3
Merge pull request #4825 from SiliconLabs/feature/mbedtls-hw-accel
...
Silicon Labs: Add cryptographic acceleration support
2017-11-16 16:24:52 +00:00
Steven Cooreman
1dc3941a5f
Apply feedback by @Patater
2017-11-11 19:38:54 +01:00
Steven Cooreman
2f02a23ac0
Cosmetic fix
2017-10-31 18:58:15 +01:00
stcoorem
2e2fb6ff26
Applied @yanesca and @andresag01 comments ( #4825 )
2017-10-19 12:00:09 +02:00
Jimmy Brisson
2f652be4c0
Merge pull request #4898 from u-blox/stm32f437xg_hw_security
...
Enable crypto HW acceleration for STM32F437xG platforms
2017-10-13 09:16:19 -05:00
Jimmy Brisson
181d7bc1bb
Merge pull request #5080 from andresag01/fix-hw-acc-sha1-md5-sha256
...
mbedtls: Disable MD5, SHA1, SHA256 HW ACC for STM32F439xI
2017-09-21 09:03:33 -05:00
adustm
e6fa5f07a2
Change after code review : standardize calls among ST families
...
Check return values in alignment with MBEDTLS error codes
2017-09-15 14:59:08 +02:00
adustm
cd1a18fee3
Use new interface of mbedtls instead of deprecated functions
2017-09-14 13:49:43 +02:00
adustm
c1fcae6c50
Fix multi context for AES CBC and ECB mode
...
Fix mbed-os-example-tls-client use case
2017-09-14 13:49:03 +02:00
adustm
458b0ec99f
Enable AES_ALT mode again (remove workaround)
2017-09-14 13:48:52 +02:00
Andres Amaya Garcia
f928e7a707
mbedtls: Disable MD5, SHA1, SHA256 HW ACC for STM32F439xI
...
STM32F439xI-family MD5, SHA1 and SHA256 hardware acceleration
occasionally produces incorrect output (#5079 ).
Don't enable MD5, SHA1 and SHA256 HW acceleration on STM32F439xI-family
targets by default until issue #5079 is fixed.
2017-09-12 13:39:04 +01:00
Martin Kojtal
de6d2918b8
Merge pull request #4987 from andresag01/release-mbedtls-2.6.0
...
Update mbed TLS to version 2.6.0
2017-09-12 06:18:46 +01:00
Andres Amaya Garcia
7c8ed0cc42
Enable MBEDTLS_AES_ROM_TABLES in mbed TLS main conf
...
Enable the compile-time option MBEDTLS_AES_ROM_TABLES in the mbed TLS
main config.h file in mbed OS. This option has the effect of labelling
the AES tables as 'const' so they are placed in ROM, which saves some
RAM space.
2017-08-29 12:05:50 +01:00
Andres Amaya Garcia
adbba2c86b
Update mbed TLS to version 2.6.0
2017-08-29 11:50:29 +01:00
Jaeden Amero
bea62d6b8c
mbedtls: STM32F439xI: Don't enable AES acceleration by default
...
STM32F439xI-family AES hardware acceleration occasionally produces
incorrect output (https://github.com/ARMmbed/mbed-os/issues/4928 ).
Don't enable AES HW acceleration on STM32F439xI-family targets by
default until issue #4928 is fixed.
2017-08-18 10:12:14 +01:00
Jimmy Brisson
0f0a461209
Merge pull request #4832 from OpenNuvoton/nuvoton
...
NUC472/M453: Fix several startup and hal bugs
2017-08-14 11:38:18 -05:00
Jimmy Brisson
0150f58e12
Merge pull request #4608 from OpenNuvoton/nuvoton_m487
...
Support Nuvoton's new target NUMAKER_PFM_M487
2017-08-14 11:35:33 -05:00
Rob Meades
410a345b70
Enable crypto HW acceleration for STM32F437xG platforms (i.e. ublox C030 family).
2017-08-14 11:44:13 +01:00
Martin Kojtal
744c364683
STM mbedtls: clear algo value for md5/sha1 and sha256
...
The hw block for mbedtls is shared, thus HASH algo value should be cleared
in the init.
2017-08-09 07:45:20 +01:00
Martin Kojtal
d92e4b5fcd
STM32F4: remove md5 from the mbedtls config file
2017-08-09 07:45:20 +01:00
adustm
85c8bf87a1
Add a check 'non busy' status of the HW before save restore procedures
2017-08-09 07:45:20 +01:00
adustm
f033c87640
Handle context swap + Modify macro name ST_MD5_BLOCK_SIZE
2017-08-09 07:45:20 +01:00
adustm
de2899279e
Move MBEDTLS_MD5_C from mbetdls_device.h to targets.json
2017-08-09 07:45:20 +01:00
adustm
766e451c88
Replace 64 by a define
2017-08-09 07:45:19 +01:00
adustm
53a8b75e4e
Improve md5 buffer storing concept
2017-08-09 07:45:19 +01:00
adustm
d39d52b042
Fix use case with size = 0 (md5_selftest #1 )
2017-08-09 07:45:19 +01:00
adustm
b2092f072f
Handle 64bytes per 64 bytes
...
+ remove unused includes files
2017-08-09 07:45:19 +01:00
adustm
29114f1a56
Remove unused variables in mbedtls_md5_context + remove unnecessary ifdef
...
__cplusplus
2017-08-09 07:45:19 +01:00
adustm
e126975d91
Remove unnecessary functions in md5_alt.h file
2017-08-09 07:45:19 +01:00
adustm
c174191eb9
Move MBEDTLS_MD5_C define from mbedtls_device.h to targets.json
2017-08-09 07:45:19 +01:00
adustm
bd1c4f5c62
NUCLEO_F756ZG/mbedtls : MD5 hw activation
2017-08-09 07:45:18 +01:00
ccli8
afb5aba8d9
[M487] Fix compile warnings with IAR toolchain
2017-08-03 13:33:17 +08:00
ccli8
99d12b1eb8
[M487] Fix compile warnings with GCC_ARM toolchain
2017-08-03 11:10:15 +08:00
Steven Cooreman
e07ab46f32
Apply feedback from @RonEld
...
* Use _C flags at compile time in SHA to avoid compiling in unconfigured features
* Don't define ECP_SHORTWEIERSTRASS since it is part of the application's configuration
2017-08-02 16:03:29 +02:00
adustm
9432227c68
NUCLEO_F756ZG/mbedTLS: sha256 hw acceleration
2017-08-01 16:14:53 +02:00
Steven Cooreman
1e51dfa302
[Silicon Labs] cryptographic acceleration support
...
Initial commit of mbed TLS hardware acceleration drivers for Silicon Labs parts
2017-08-01 09:25:19 +02:00
ccli8
46cb684a32
[NUC472] Conform to mbed TLS H/W acceleration support
2017-08-01 14:40:08 +08:00
cyliangtw
aa47503435
[M487] Revise CAN & AES to fulfill real-chip
2017-08-01 10:31:36 +08:00
ccli8
12536436f8
[M487] Conform to mbed TLS H/W acceleration support released with mbed OS 5.3
2017-08-01 10:23:48 +08:00
Jimmy Brisson
50c616ec74
Merge pull request #4750 from andreaslarssonublox/ublox_enable_hw_acc_odin_w2
...
Enable crypto HW acceleration for UBLOX_EVK_ODIN_W2
2017-07-31 15:24:47 +00:00
adustm
45dcf598c8
Remove MBEDTLS_SHA1_C
2017-07-25 11:22:55 +02:00
adustm
a08eec05c0
NUCLEO_F756ZG/mbedTLS : add hw acceleration for SHA1
2017-07-25 11:21:45 +02:00
adustm
a89860c81d
fix typo in directory name
2017-07-18 17:09:56 -05:00
adustm
1ae5f8cdaa
Add AES HW encryption for NUCLEO_F756ZG in mbedtls
2017-07-18 17:09:54 -05:00
andreas.larsson
ef232dbae5
Renamed so that we have one configuration for all STM32F439 targets.
2017-07-12 12:13:09 +02:00
Jimmy Brisson
868adafe57
Merge pull request #4518 from mazimkhan/mbed-tls-test-deploy
...
Add new target in mbedtls importer Makefile for mbedtls tests
2017-07-10 12:03:47 -05:00
Azim Khan
5067db07ae
Add deploy-tests to the .PHONY target
2017-07-04 19:26:31 +01:00
adustm
e2c96e9b7a
Move definitions in aes_alt.c + Factorize code
2017-06-29 16:09:34 +02:00
adustm
2da3128a2a
STM32L486RG/mbedtls: add aes hw acceleration
2017-06-29 16:05:45 +02:00
Armelle DUBOC
ec72ac0a28
Merge branch 'master' into STM_sha256_F439ZI
2017-06-27 08:25:42 +02:00
adustm
e63912ff44
Check that the HASH is not busy before save and restore iHW registers
2017-06-16 11:03:50 +02:00
adustm
842791bef7
handle context swap + change macro name
2017-06-16 11:03:46 +02:00
adustm
85d68e32f7
replace 64 by define
2017-06-16 11:03:41 +02:00
adustm
b38eea2caf
Remove tabs, fix doxygen comments
2017-06-16 11:03:32 +02:00
adustm
c2a85fb12a
Rework SHA1 update for buffer <4 bytes management
2017-06-16 11:03:27 +02:00
adustm
ca65e01ffa
Handle 64 bytes buffers
2017-06-16 11:03:23 +02:00
adustm
dac9004684
Move MBEDTLS_SHA1_C from mbedtls_device.h to targets.json
2017-06-16 11:02:42 +02:00
adustm
85d549c902
Improve memory management
2017-06-16 11:02:38 +02:00
adustm
f26ae03e48
Remove unneeded function declarations + include file
...
Move include platform from sha1_alt.h to sha1_alt.c
2017-06-16 11:02:33 +02:00
adustm
996e093b77
Better explanation of the use of mbedtls_sha1_context fields
2017-06-16 11:02:29 +02:00
adustm
1695e9a7bb
use mbedtls_zeroize instead of memset(xxx,0,xxx)
2017-06-16 11:02:24 +02:00
adustm
ddd186cc61
NUCLEO_F429ZI/mbedtls: add SHA1 hw_acceleration
2017-06-16 11:01:43 +02:00
adustm
a27498c44a
Check HASH is not busy before save/resteore context
2017-06-16 10:48:41 +02:00
adustm
021b84a140
Handle context swapping + rename macro ST_SHA256_BLOCK_SIZE
...
Handle 64 bytes accumulation
2017-06-16 10:47:31 +02:00
adustm
f1704733af
Remove trailing whitespace
2017-06-16 10:47:18 +02:00
adustm
80b58614a2
SHA256: get ready to return error codes
2017-06-16 10:47:07 +02:00
adustm
b929b54b7c
Replace 64 by MBEDTLS_SHA256_BLOCK_SIZE
2017-06-16 10:46:56 +02:00
adustm
4976e2f3c7
Align SHA256 with MD5 and SHA1 implementation
...
This will solve Size <4 issues
2017-06-16 10:43:54 +02:00
adustm
0805876e0b
NUCLEO_F429ZI/mbedtls: add SHA256 hw_acceleration
2017-06-16 10:43:43 +02:00
Azim Khan
b03441870a
Add new target in mbedtls importer Makefile for mbedtls tests
2017-06-09 17:01:00 +01:00
Hanno Becker
ddb7cef907
Update mbed TLS to version 2.5.0
2017-05-17 15:42:07 +01:00
Hanno Becker
e9e3040297
Update mbed TLS to version 2.5.0-rc1
2017-05-15 17:07:30 +01:00
Anna Bridge
e743a26f94
Merge pull request #3691 from adustm/STM_aes_f439zi
...
[TLS / hw acceleration] AES ECB for NUCLEO_F439ZI
2017-03-14 14:32:25 +00:00
Andres AG
1c8d7c1115
Update mbed TLS feature to mbedtls-2.4.2
2017-03-08 15:56:59 +00:00
adustm
5c858a456e
remove mbedtls_printf error notification
2017-02-28 18:07:20 +01:00
adustm
d73088a90e
Big commit after code review from andesag01
...
cleanup in include files (unrequired removed + other moved to aes_alt.h)
hcryp_aes moved to mbedtls_aes_context to allow multi instances
remove ctx->nr, ctx->buf
doxygen comments are removed (kept in .h file)
function _ALT are removed (full module _ALT)
handle error returned by HAL_CRYPxx functions
aes is symetric, remove the dupplicated set_key_enc and set_key_dec
buffer, and factorize the call to set_key function
2017-02-28 16:42:06 +01:00
adustm
fe1e7aac98
Better use of MBEDTLS_AES_ALT
...
removed from targets.json, added in mbedtls_device.h
remove function alternate defines (not used as we replace the full
module)
2017-02-28 16:42:03 +01:00
adustm
fa8f6e4a86
Add AES_CBC mode
2017-02-28 16:42:01 +01:00
adustm
35bf8e17e6
AES ECB for NUCLEO_F439ZI
...
+---------------------------+--------+--------+--------+
| test case | passed | failed | result |
+---------------------------+--------+--------+--------+
| mbedtls_aes_self_test | 1 | 0 | OK |
| mbedtls_entropy_self_test | 1 | 0 | OK |
| mbedtls_sha256_self_test | 1 | 0 | OK |
| mbedtls_sha512_self_test | 1 | 0 | OK |
+---------------------------+--------+--------+--------+
2017-02-28 16:41:16 +01:00
Janos Follath
e9144ad771
Apply new naming convention to mbed TLS macros
2016-11-18 15:01:01 +00:00
Janos Follath
9137574e4d
Move mbed TLS configuration symbol to macro section
...
The configuration option for the mbed TLS specific hardware acceleration
has to be in the macro section and not in the device capabilities
section in targets.json.
The option has also been renamed to better reflect its function.
2016-11-18 09:55:16 +00:00
Janos Follath
80aedd2f39
Move crypto hardware acceleration configuration
...
The crypto hardware acceleration might require defining a lot of mbed
TLS specific macros. Enumerating all of them in `targets.json` creates
too much noise, therefore we move it into a target specific mbed TLS
header.
The target with crypto hardware acceleration has to
- indicate its capability in `targets.json` by adding "CRYPTO"
to the "device_has" section
- has to define his crypto hardware acceleration related macros
in an `mbedtls_device.h` header
- place the `mbedtls_device.h` file in the
`features/mbedtls/targets/TARGET_XXXX`
directory specific to the target
2016-11-17 14:38:04 +00:00
Andres AG
509a72ca81
Add checks for NULL_ENTROPY and SSL_TLS in mbed OS
2016-10-20 17:07:32 +01:00
Andres AG
57814ddbbc
Update feature/mbedtls to version 2.4.0
2016-10-17 13:32:25 +01:00
Andres AG
2ff5400158
Update to mbed TLS release candidate
2016-10-14 09:03:05 +01:00
Andres AG
39c95e0e2f
Sync mbed TLS with development HEAD
...
Update the current version of mbed TLS with the development HEAD of the
mbed TLS project repository. This mostly includes the latest CMAC
feature. Also, update the version in the importer Makefile and
VERSION.txt with the hash of the mbed TLS commit that was sync'ed.
2016-10-06 16:29:41 +01:00
Andres AG
916ce43ffa
Fix mbedtls user config and null entropy
2016-10-05 11:04:35 +01:00
Andres AG
11ee1de620
Update feature/mbedtls with mbedtls' development HEAD
2016-09-28 09:26:02 +01:00
Andres AG
21a7b1de04
Modify mbedtls scripts to add config-no-entropy.h
2016-09-27 16:19:39 +01:00
Martin Kojtal
1b95c67dd2
mbedtls trng - remove MBEDTLS_ENTROPY_HARDWARE_ALT
...
MBEDTLS_ENTROPY_HARDWARE_ALT will be defined via config in mbedtls,
the mbed wrapper should use DEVICE_TRNG.
2016-09-27 09:16:28 +01:00
Martin Kojtal
1f8da7da34
mbedtls - move TRNG mbed impl into platform folder
2016-09-27 09:14:42 +01:00
Martin Kojtal
ea1041ea36
HAL - RNG rename to TRNG
2016-09-27 09:13:59 +01:00
Martin Kojtal
e8ca16dde7
RNG - rename rng_get_numbers to rng_get_bytes
2016-09-27 08:51:49 +01:00
Martin Kojtal
ee344abd34
mbedtls - mbed wrapper rename to mbed_rng
2016-09-27 08:51:47 +01:00
Martin Kojtal
7d68492bef
mbedtls: add wrapper for mbed hw poll
...
This wrapper uses RNG HAL API
2016-09-27 08:51:34 +01:00
Sam Grove
4794bc87e3
Update mbed TLS to version 2.3.0
2016-07-23 00:13:43 -05:00