Adrian L. Shaw
23c006f45e
Added missing return codes to get_key_attributes
...
Note that PSA_ERROR_NOT_PERMITTED is not included
because I can't think of a scenario where you have
a valid key handle but aren't allowed to read the
attributes
2019-09-04 11:31:14 +01:00
Adrian L. Shaw
39797aa34c
Fix erroneous cut and paste
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
fbf7f121f9
Separate return codes for unsupported and invalid algorithms
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
66200c4e98
Add PSA_ERROR_STORAGE_FAILURE to psa_cipher_generate_iv
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
f97c8523ee
Add CORRUPTION_DETECTED to psa_close_key
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
6725757cec
Remove errorneous insert
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
484ba88a0f
Add STORAGE_FAILURE everywhere + add missing codes
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
dc5bf5c8e7
Add storage failure to (encrypt/decrypt)_setup
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
d9e9024885
Add storage failure to psa_mac_verify_finish
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
263223689f
Add storage failure to psa_mac_sign_finish
2019-09-04 11:30:18 +01:00
Adrian L. Shaw
8d0bcf27ec
Add PSA_ERROR_INVALID_ARGUMENT to psa_hash_compare
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
df3c7ac645
Remove trailing whitespace
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
d789dc13da
Added a few more return codes
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
3e41249417
Add PSA_ERROR_STORAGE_FAILURE to psa_aead_*_setup functions
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
71b33ffcf8
Add missing error codes to psa_generate_random
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
0d280b9873
Add missing error codes for psa_raw_key_agreement
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
a3f6ba5843
Added PSA_ERROR_STORAGE_FAILURE to psa_cipher_(encrypt/decrypt)
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
320659b54c
Added PSA_ERROR_BAD_STATE to functions with operations
...
In the case that the operation object has not been initialized
appropriately.
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
e970d65273
Added extra bad state case to psa_hash_setup
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
6e758c9bb8
Add missing return codes to psa_asymmetric_verify
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
27c121574b
Add missing parameters to psa_asymmetric_sign
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
d21c6e6566
Add missing return codes to psa_generate_key
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
c207ba376e
Added missing return codes to psa_aead_decrypt
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
96f31ada18
Add missing return codes to psa_asymmetric_decrypt
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
f961d5c9e6
Add missing return codes to psa_asymmetric_encrypt
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
53d90c5199
Only return PSA_ERROR_DOES_NOT_EXIST from psa_open_key
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
9770d0e0f8
Add PSA_ERROR_STORAGE_FAILURE to psa_mac_verify_setup
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
2409ba0429
Added PSA_ERROR_STORAGE_FAILURE to psa_mac_sign_setup
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
7563ed17ab
Remove PSA_ERROR_DOES_NOT_EXIST from psa_mac_sign_setup
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
d5ae06b1e3
Add PSA_ERROR_BUFFER_TOO_SMALL to psa_mac_compute
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
dec47b6f9d
Added the possibility of PSA_ERROR_BAD_STATE to all functions
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
fa591c44af
Added PSA_ERROR_STORAGE_FAILURE to psa_mac_compute
...
In case the key could not be retrieved from
storage.
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
f7d852a9d5
Added PSA_ERROR_BUFFER_TOO_SMALL to psa_hash_compute
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
60b0320af0
Add PSA_ERROR_STORAGE_FAILURE to psa_copy_key
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
398b3c27e0
Add PSA_ERROR_STORAGE_FAILURE to psa_export_public_key
...
The same reason that it is included in psa_export_key
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
e926e7370f
Removed PSA_DOES_NOT_EXIST from psa_export_public_key
...
The implementation should return PSA_ERROR_INVALID_HANDLE instead.
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
88c51adfc0
Added PSA_ERROR_INSUFFICIENT_MEMORY to psa_export_public_key
...
For the same reasons that psa_export_key can fail with this error
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
742084ea25
Removed PSA_ERROR_DOES_NOT_EXIST from psa_export_key
...
If the key doesn't exist by the time this call is made
then the handle is invalid,
which means that PSA_ERROR_INVALID_HANDLE should be
returned rather than "does not exist"
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
0542d595ce
Add PSA_ERROR_INSUFFICIENT_MEMORY to psa_export_key
...
It may be possible that the implementation runs out of
memory when exporting a key from storage or a secure
element. For example, it may not be possible to directly
move the data from storage to the caller, so the implementation
will have to buffer the material temporarily (an issue if dynamic
memory allocation scheme is used). For a large key
this is more likely to return.
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
89b7152ed0
Added PSA_ERROR_STORAGE_FAILURE to psa_export_key
...
It may be possible that an implementation does not
fetch key material until a command like
this is called and such an error may occur if an
off-chip secure storage dependency may have been wiped.
2019-09-04 11:30:17 +01:00
Adrian L. Shaw
29b64073af
Added missing return codes to get_key_attributes
...
Note that PSA_ERROR_NOT_PERMITTED is not included
because I can't think of a scenario where you have
a valid key handle but aren't allowed to read the
attributes
2019-09-04 11:30:17 +01:00
Jaeden Amero
5656623d9e
Merge pull request #240 from Ko-/development
...
Enable 64-bit bignum limbs and add optimized multiplication for Aarch64
2019-09-04 11:11:51 +01:00
Jaeden Amero
f66e7ea7f3
Merge pull request #178 from mpg/sha512-smaller
...
New config.h option to make SHA-512 smaller
2019-09-04 10:19:28 +01:00
Jaeden Amero
4013b98df0
Merge pull request #166 from k-stachowiak/IOTCRYPT-440-add-missing-dec_empty_buf-tests
...
Add missing dec_empty_buf tests
2019-09-04 10:18:11 +01:00
Jaeden Amero
3d7005f851
Merge remote-tracking branch 'tls/pr/2363' into development
...
* origin/pr/2363:
Add ChangeLog entry
fix memory leak in mpi_miller_rabin()
2019-09-03 19:32:45 +01:00
Ko-
cb260bb30d
Fix -O0 build for Aarch64 bignum multiplication.
2019-09-02 13:44:57 +02:00
Ko-
05cff953c9
Make GNUC-compatible compilers use the right mbedtls_t_udbl again on Aarch64 builds.
2019-09-02 13:44:57 +02:00
Ko-
cc1871e674
Add optimized bignum multiplication for Aarch64.
...
x0-x3 are skipped such that function parameters to not have to be moved.
MULADDC_INIT and MULADDC_STOP are mostly empty because it is more
efficient to keep everything in registers (and that should easily be
possible). I considered a MULADDC_HUIT implementation, but could not
think of something that would be more efficient than basically 8
consecutive MULADDC_CORE. You could combine the loads and stores, but
it's probably more efficient to interleave them with arithmetic,
depending on the specific microarchitecture. NEON allows to do a
64x64->128 bit multiplication (and optional accumulation) in one
instruction, but is not great at handling carries.
2019-09-02 13:44:57 +02:00
Ko-
03d2daf55c
Enable 64-bit limbs for all Aarch64 builds.
...
GCC and Clang do not define __ARMCC_VERSION when building for Aarch64.
Yet they should also use 64-bit limbs for Aarch64 builds.
2019-09-02 13:44:57 +02:00
Jaeden Amero
822b8f65bd
Merge pull request #238 from hanno-arm/hmac_drbg_entropy_incompatibility_fix-crypto
...
HMAC DRBG: Split entropy-gathering requests to reduce request sizes
2019-08-30 12:15:16 +01:00