Nir Sonnenschein
|
dcd636a73f
|
Commit changes to hmac to not use MD abstraction
this PR is part of efforts to use "lower level" mbedTLS APIs vs "higher level" abstract APIs.
|
2018-09-12 16:13:49 +03:00 |
|
Gilles Peskine
|
8605428dcf
|
Merge remote-tracking branch 'psa/pr/27' into feature-psa
|
2018-09-05 12:46:19 +03:00 |
|
Gilles Peskine
|
c4def2f228
|
Add input length check in psa_asymmetric_decrypt
Remove output size check which is not needed here and was copypasta.
Add non-regression tests.
|
2018-09-05 12:44:18 +03:00 |
|
Gilles Peskine
|
b75e4f1314
|
Remove ECC boilerplate in asymmetric encrypt/decrypt
We don't have any encryption algorithm using ECC keys at the moment.
|
2018-09-05 12:44:17 +03:00 |
|
Gilles Peskine
|
beb4948d10
|
Add RSA PSS verification (untested)
|
2018-09-05 12:44:17 +03:00 |
|
Gilles Peskine
|
625b01c9c3
|
Add OAEP placeholders in asymmetric encrypt/decrypt
Replace PSS placeholders by OAEP placeholders. PSS is a signature
algorithm, not an encryption algorithm.
Fix typo in PSA_ALG_IS_RSA_OAEP_MGF1.
|
2018-09-05 12:44:17 +03:00 |
|
Gilles Peskine
|
8b18a4fef3
|
Rename verify_RSA_hash_input_and_get_md_type
Give it a shorter name that's more in line with our naming conventions.
|
2018-09-05 12:44:17 +03:00 |
|
Gilles Peskine
|
61b91d4476
|
Normalize whitespace to Mbed TLS standards
Only whitespace changes in this commit.
|
2018-09-05 12:44:17 +03:00 |
|
Nir Sonnenschein
|
1c2a7ea4e2
|
Allow psa_asymmetric_verify and psa_asymmetric_encrypt to use public key only.
|
2018-09-05 12:44:17 +03:00 |
|
Nir Sonnenschein
|
d708260de4
|
add key policy enforcement implementation
add checks that keys have been set for the correct usage for asymmetric
functions.
|
2018-09-05 12:44:17 +03:00 |
|
Nir Sonnenschein
|
ca466c89b0
|
Set output length to safe value
|
2018-09-05 12:44:17 +03:00 |
|
Nir Sonnenschein
|
c460291714
|
Re-Add ECC verification code which was not properly merged in re-base.
|
2018-09-05 12:44:17 +03:00 |
|
Nir Sonnenschein
|
4db79eb36b
|
Extract common code
Make code easier to maintain.
|
2018-09-05 12:44:17 +03:00 |
|
Nir Sonnenschein
|
717a040df5
|
Remove duplicate / unneeded code
1. remove duplicate function introduced by re-base
2. remove unneeded code
|
2018-09-05 12:44:17 +03:00 |
|
Gilles Peskine
|
5b051bc608
|
Remove trailing whitespace
Only horizontal whitespace changes in this commit.
|
2018-09-05 12:44:12 +03:00 |
|
Gilles Peskine
|
6afe789d4c
|
Finish renaming around PSA_ALG_IS_RSA_PKCS1V15
Now the code compiles. Some OAEP and PSS macros may still need to be fixed.
|
2018-09-05 12:41:53 +03:00 |
|
Gilles Peskine
|
d6125ca63b
|
Merge remote-tracking branch 'psa/pr/24' into feature-psa
|
2018-09-05 12:41:53 +03:00 |
|
Nir Sonnenschein
|
4f594eca40
|
remove check for key pair (public key should be enough for verification)
|
2018-09-05 12:41:53 +03:00 |
|
Nir Sonnenschein
|
7f5a31915b
|
code fixes for internal code review:
1. change to correct error code
2. removed unneeded comment
|
2018-09-05 12:41:53 +03:00 |
|
Nir Sonnenschein
|
39e59144f6
|
added support for PKCSv1.5 signature verification and encryption/decryption and very basic tests.
|
2018-09-05 12:41:53 +03:00 |
|
Gilles Peskine
|
bb1072f642
|
Fix use of mbedtls_cipher_info_from_psa
One branch added an extra argument, the other branch added a call of
this function. Pass the extra argument on the code from the other
branch.
|
2018-09-05 12:41:52 +03:00 |
|
Gilles Peskine
|
84861a95ca
|
Merge remote-tracking branch 'psa/psa-wrapper-apis-aead' into feature-psa
|
2018-09-05 12:41:52 +03:00 |
|
Gilles Peskine
|
154bd95131
|
psa_destroy_key: return SUCCESS on an empty slot
Do wipe the slot even if it doesn't contain a key, to erase any metadata.
|
2018-09-05 12:41:52 +03:00 |
|
Gilles Peskine
|
71bb7b77f0
|
Switch PSA_HASH_FINAL_SIZE to PSA_HASH_SIZE
Make this macro work on derived algorithms as well (HMAC,
hash-and-sign, etc.).
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
fc614b1e0e
|
fix parentheses
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
e109f21638
|
remove unnecessary check for block size
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
a1d9801683
|
add slot validation
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
e3cb8a8d8b
|
return PSA_ERROR_BUFFER_TOO_SMALL intead of PSA_ERROR_INVALID_ARGUMENT
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
6b4d98cf78
|
remove trailing spaces
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
5ed0621dd4
|
aligned with coding standards - line length
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
f14394b25f
|
add policy checks
|
2018-09-05 12:41:52 +03:00 |
|
mohammad1603
|
96910d807e
|
fix block size depending on algorithm
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
60a64d079a
|
remove unnecessary argument to the psa_aead_unpadded_locate_tag function
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
15223a8b89
|
write the tag directly on the ciphertext buffer.
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
4fc744f8af
|
change the check of block size for all supported algorithms
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
0f21465175
|
use mbedtls_cipher_info_from_psa to get cipher ID
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
f58aa6ade6
|
use memset instead of mbedtils_zeroize
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
554faad260
|
return NOT_SUPPORTED instead of INVLID_ARGUMENT
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
95893f834d
|
remove usless cast
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
f08a550e68
|
set output length to zero to cover output length in error case
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
f4f0d612ba
|
change mbedtls_cipher_info_from_psa to provide cipher_id also
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
9375f8403a
|
fix code offsets after rebase
|
2018-09-05 12:41:51 +03:00 |
|
Gilles Peskine
|
ee652a344c
|
Fix psa_aead_decrypt to read the tag at the end of the ciphertext
|
2018-09-05 12:41:51 +03:00 |
|
Gilles Peskine
|
a40d77477d
|
Whitespace fixes
Changed indentation to match Mbed TLS style. Wrapped some lines to 80 columns.
|
2018-09-05 12:41:51 +03:00 |
|
mohammad1603
|
39574652ae
|
add else for not supported algorithm
|
2018-09-05 12:38:18 +03:00 |
|
mohammad1603
|
5c8845f563
|
return invalid argument for unsupported algorithms
|
2018-09-05 12:38:18 +03:00 |
|
mohammad1603
|
e58e68458e
|
fix condition over key type
|
2018-09-05 12:38:18 +03:00 |
|
mohammad1603
|
17638efc46
|
remove unused variable
|
2018-09-05 12:38:18 +03:00 |
|
mohammad1603
|
dad36fa855
|
add Key and Algorithm validation
|
2018-09-05 12:38:18 +03:00 |
|
mohammad1603
|
a7e6df76ea
|
Validation fixes for key_type
|
2018-09-05 12:38:18 +03:00 |
|