itayzafrir
3992b83a52
crypto service: Assemble bit crypto key ids
2019-02-26 12:30:20 +02:00
itayzafrir
2b9b29455f
crypto service: Remove unused IPC argument and unneeded casts
2019-02-26 12:27:55 +02:00
Cruz Monrreal
ed350dc533
Merge pull request #9758 from NirSonnenschein/large_buffer_support_for_hash_and_mac
...
allow hash or mac on large buffers with less memory use
2019-02-25 10:34:14 -06:00
Netanel Gonen
b5b0e981f8
reopening #9754 after the changes where overrun
...
changing the SPM error codes from invalid argument to bad state aligned to PSA spec
2019-02-25 11:55:47 +02:00
Nir Sonnenschein
1d4c280d2a
a-style fix for unrelated code
2019-02-25 00:46:06 +02:00
itayzafrir
37cc25726c
Add internal documentation to access control header file
...
This file is for internal use only.
2019-02-24 15:07:54 +02:00
itayzafrir
0c231b0ac9
Move include psa_crypto_core.h to C file
2019-02-24 15:07:54 +02:00
itayzafrir
672712ca8a
Add SPM_PANIC macro for TARGET_TFM
2019-02-24 15:07:54 +02:00
itayzafrir
99032f6967
Change PSA_CRYPTO_ACCESS_CONTROL_RESET into static inline function
2019-02-24 15:07:54 +02:00
itayzafrir
0ecd2c5da1
crypto service: Crypto access control
...
Implement crypto keys access control in crypto service:
- Only the key owner (the partition which created the key)
is allowed to manage (import/export/open/close/destroy/etc.)
the key.
- Only the key owner (the partition which created the key)
is allowed to use the key handle for crypto operations which
require a key handle.
2019-02-24 15:07:54 +02:00
Nir Sonnenschein
84b618704b
fix comment issues
2019-02-24 14:32:36 +02:00
Nir Sonnenschein
ffaf083b75
a-style fixes for code
2019-02-24 14:25:25 +02:00
Netanel Gonen
165719d11f
return the new values for key type & size even if function fails
2019-02-24 11:24:12 +02:00
Oren Cohen
922cdeab82
Update crypto IPC handling of negative errors
2019-02-21 20:59:18 +02:00
David Saada
41eb5cbfd9
Implement PSA protected storage & restructure PSA storage implementation
...
- Move all PSA storage code under psa/storage directory
- Create a global PSA error codes header, eliminating ITS specific ones
- Create a common header file for PSA storage type definitions,
eliminating ITS specific ones
- Create a common implementation for PS & ITS
- Implement protected storage feature
- Change ITS test to be common to PS as well
2019-02-21 20:58:59 +02:00
Cruz Monrreal
9f6ee7db66
Merge pull request #9754 from netanelgonen/SPM_return_value
...
Fix SPM returning the wrong value
2019-02-19 15:29:48 -06:00
Cruz Monrreal
4c04771c5d
Merge pull request #9653 from kfnta/tfm_src_integ
...
TF-M sources integration to Mbed-OS
2019-02-19 15:28:44 -06:00
Nir Sonnenschein
4a4af57c22
allow calling hash or mac on large buffers without large memory allocation
...
use a fixed size buffer for large inputs to process the input
in multiple smaller pieces.
2019-02-19 15:49:52 +02:00
Michael Schwarcz
cf3fd858ad
Align existing partitions to work with TF-M
...
- ITS
- Crypto
- Platform
2019-02-19 15:19:01 +02:00
Netanel Gonen
1a87f24955
support in more types then just RSA_KEYPAIR
...
if the type is not supported the psa_crypto will return the error code
for unsupported
2019-02-19 14:47:11 +02:00
Netanel Gonen
d0dae03d01
Fix SPM returning the wrong value
2019-02-19 12:56:41 +02:00
itayzafrir
b7b85516cb
crypto service: Add documentation
2019-01-31 17:17:58 +02:00
Oren Cohen
ea9f104463
Fix Licenses
2019-01-31 17:17:58 +02:00
Oren Cohen
5d448d758c
Astyle
2019-01-31 17:17:57 +02:00
Oren Cohen
34895a05ad
CR fixes
2019-01-31 17:17:54 +02:00
Oren Cohen
8841ba69f8
Align to new spec changes and prep for TFM SPM
...
# Conflicts:
# components/TARGET_PSA/services/crypto/COMPONENT_PSA_SRV_IPC/psa_crypto_spm.c
# components/TARGET_PSA/services/crypto/COMPONENT_SPE/psa_crypto_partition.c
2019-01-31 17:17:53 +02:00
Oren Cohen
99b8eafc35
Align with PSA spec
...
* psa_error_t -> psa_status_t
* psa_invec_t -> psa_invec
* psa_outvec_t -> psa_outvec
* Use new PSA headers
2019-01-31 17:16:41 +02:00
itayzafrir
861fb0cbf0
crypto service: Implement function psa_hash_clone over IPC
2019-01-29 11:43:27 +02:00
itayzafrir
81a4ff6425
crypto service: Implement IPC according to Mbed Crypto 1.0.0d1 API
...
1. Removed obsolete crypto APIs from IPC implementation.
2. Updated existing crypto APIs in IPC implementation.
3. Added new crypto APIs to IPC implemntation (except for psa_hash_clone).
2019-01-29 11:43:27 +02:00
Oren Cohen
fa5c96c857
Fix includes
2018-12-04 18:37:47 +02:00
Oren Cohen
c3bd6f12d2
Fix PSA crypto partiotion and tests
...
* Styling
* Correct error codes on failing connection
* Add panics where needed
* correct skip defines
* Fix psa_spm_init_refence_counter bug
2018-12-04 17:07:28 +02:00
Oren Cohen
01301387f8
Run SPM code generator
2018-11-28 14:40:01 +02:00
mohammad1603
6e862cf112
Fix psa_crypto_generator_init implementation to use the init define macro
2018-11-27 11:56:59 +02:00
mohammad1603
88f4f48fac
Astyle fixes for the source
...
Used running: astyle -n --options=.astylerc
2018-11-27 11:56:57 +02:00
Mohammad AboMokh
5c2cf07780
Revert file permission change
2018-11-27 11:56:56 +02:00
Mohammad AboMokh
1d4b6a4e89
Return invalid argument error in case of zero or negative handle for generators
2018-11-27 11:56:55 +02:00
Mohammad AboMokh
79d957ac7b
Change PSA_MAX_NONCE_SIZE to PSA_AEAD_MAX_NONCE_SIZE
2018-11-27 11:56:54 +02:00
Mohammad AboMokh
ba47b450aa
Remove unnecessary define
2018-11-27 11:56:54 +02:00
Mohammad AboMokh
7776fea903
Remove unneeded includes
2018-11-27 11:56:53 +02:00
Netanel Gonen
352bac3b26
Crypto SPM - fix - PART1
...
Fail fast on invalid handles before calling to SPM
2018-11-27 11:56:52 +02:00
Netanel Gonen
bab6116f31
compilation fix
2018-11-27 11:56:51 +02:00
Mohammad AboMokh
a4c498e02a
Integrate psa_key_agreement() with SPM code
2018-11-27 11:56:50 +02:00
Netanel Gonen
59c3c9fff7
crypto init with multiple client guard & tests
2018-11-27 11:56:48 +02:00
Netanel Gonen
7f49fd2b09
Fix memory leak if user does not calls abort. call abort when connection is closed
2018-11-27 11:56:46 +02:00
Netanel Gonen
58f92c3266
remove execute permissions from file
2018-11-27 11:56:45 +02:00
Mohammad AboMokh
54cd8bf51f
Change behavior realted to MBEDTLS_ENTROPY_NV_SEED and MBEDTLS_PSA_HAS_ITS_IO flags
...
* mbedtls_psa_inject_entropy() MUST be always available for client side.
* Partition will return PSA_ERROR_NOT_SUPPPORTED in case where MBEDTLS_ENTROPY_NV_SEED or MBEDTLS_PSA_HAS_ITS_IO flags are not defined
2018-11-27 11:56:40 +02:00
Mohammad AboMokh
fb88cb4cb5
Add missing guards
2018-11-27 11:56:38 +02:00
Mohammad AboMokh
587fdbb447
Remove crypto init that was not called by the user
2018-11-27 11:56:32 +02:00
Mohammad AboMokh
bd47a8c2b8
Add entropy inject to spm
2018-11-27 11:56:30 +02:00
Oren Cohen
f4581faab0
Create a new partition for the crypto service
...
The following files initially were taken
from https://github.com/ARMmbed/psa-crypto-spm/releases/tag/spm-crypto-5.11
* crypto_platform_spe.h
* crypto_struct.h
* crypto_struct_ipc.h
* psa_crypto_spm.c
* crypto_spe.h
* crypto_partition_psa.json
The rest of the files were autimatically generated
by tools/spm/generate_psa_partition.py
2018-11-27 11:56:29 +02:00