/mbedtls-development/library/ |
A D | psa_crypto_se.c | 97 return( driver->methods ); in psa_get_se_driver_methods() 101 psa_se_drv_table_entry_t *driver ) in psa_get_se_driver_context() argument 103 return( &driver->u.context ); in psa_get_se_driver_context() 112 *p_methods = ( driver ? driver->methods : NULL ); in psa_get_se_driver() 114 *p_drv_context = ( driver ? &driver->u.context : NULL ); in psa_get_se_driver() 115 return( driver != NULL ); in psa_get_se_driver() 197 psa_se_drv_table_entry_t *driver, in psa_find_se_slot_for_key() argument 266 &driver->u.context, in psa_destroy_se_key() 279 if( driver->location == 0 ) in psa_init_all_se_drivers() 285 &driver->u.context, in psa_init_all_se_drivers() [all …]
|
A D | psa_crypto_se.h | 114 const psa_se_drv_table_entry_t *driver ); 124 psa_se_drv_table_entry_t *driver ); 139 psa_se_drv_table_entry_t *driver, 147 psa_status_t psa_destroy_se_key( psa_se_drv_table_entry_t *driver, 163 const psa_se_drv_table_entry_t *driver ); 179 const psa_se_drv_table_entry_t *driver );
|
A D | psa_crypto.c | 1023 psa_se_drv_table_entry_t *driver; in psa_destroy_key() local 1066 if( driver != NULL ) in psa_destroy_key() 1092 status = psa_destroy_se_key( driver, in psa_destroy_key() 1114 if( driver != NULL ) in psa_destroy_key() 1701 psa_se_drv_table_entry_t *driver, in psa_finish_key_creation() argument 1706 (void) driver; in psa_finish_key_creation() 1712 if( driver != NULL ) in psa_finish_key_creation() 1746 if( driver != NULL && in psa_finish_key_creation() 1785 (void) driver; in psa_fail_key_creation() 1892 psa_se_drv_table_entry_t *driver = NULL; in psa_import_key() local [all …]
|
A D | psa_crypto_slot_management.c | 434 psa_se_drv_table_entry_t *driver = psa_get_se_driver_entry( lifetime ); in psa_validate_key_location() local 435 if( driver != NULL ) in psa_validate_key_location() 438 *p_drv = driver; in psa_validate_key_location()
|
/mbedtls-development/docs/architecture/testing/ |
A D | driver-interface-test-strategy.md | 1 # Mbed Crypto driver interface test strategy 7 ## Secure element driver interface testing 9 ### Secure element driver interfaces 11 #### Opaque driver interface 23 ### SE driver interface unit tests 29 #### SE driver registration 37 #### Dispatch to SE driver 50 #### SE driver inputs 58 #### SE driver outputs 94 ### SE driver system tests [all …]
|
A D | psa-storage-format-testing.md | 48 * [Driver state files](#driver-state-files). 93 * For alternative locations: have tests conditional on the presence of a driver for that location.
|
A D | invasive-testing.md | 324 See the [secure element driver interface test strategy](driver-interface-test-strategy.html) for mo… 360 When we implement the PSA entropy driver interface, this should be reworked to use the entropy driv…
|
/mbedtls-development/docs/proposed/ |
A D | psa-driver-developer-guide.md | 1 PSA Cryptoprocessor driver developer's guide 16 The PSA cryptography driver interface provides a way to build Mbed TLS with additional code that im… 21 … smartcard, a secure enclave, etc. An opaque driver is invoked for the specific key location that … 23 ### Deliverables for a driver 25 …driver, you need to implement some functions with C linkage, and to declare these functions in a *… 27 …driver description file is JSON. The structure of this JSON file is specified in the section [“Dri… 29 A driver therefore consists of: 31 * A driver description file (in JSON format). 32 …es defining the types required by the driver description. The names of these header files is decla… 37 Mbed TLS calls driver entry points [as specified in the PSA Cryptography Driver Interface specifica… [all …]
|
A D | psa-driver-integration-guide.md | 6 …d TLS with additional cryptoprocessor drivers that follow the PSA cryptoprocessor driver interface. 8 …further notice, we do not guarantee backward compatibility with existing driver code when `MBEDTLS… 12 The PSA cryptography driver interface provides a way to build Mbed TLS with additional code that im… 16 …y speaking, a driver consists of one or more **driver description files** in JSON format and some … 29 2. Pass the driver description files through the Make variable `PSA_DRIVERS` when building the libr… 33 make PSA_DRIVERS="/path/to/acme/driver.json /path/to/nadir/driver.json" lib 36 3. Link your application with the implementation of the driver functions. 43 <!-- TODO: what if the driver is provided as C source code? -->
|
A D | psa-driver-interface.md | 10 ### Purpose of the driver interface 45 ### Deliverables for a driver 51 A driver therefore consists of: 53 * A driver description file (in JSON format). 88 …driver entry point](#driver-entry-points) or driver entry point family. An entry point is a functi… 173 #### Overview of driver entry points 424 ### Miscellaneous driver entry points 776 ### Opaque driver persistent state 780 …it calls the driver's [init entry point](#driver-initialization). It is adjusted to match the size… 904 #### Declaring driver entry points [all …]
|
A D | Makefile | 7 psa-driver-developer-guide.md \ 8 psa-driver-integration-guide.md \ 9 psa-driver-interface.md \
|
A D | psa-conditional-inclusion-c.md | 22 …nism (or, with **fallback**, the built-in implementation is tried if the driver only has partial s… 32 [Req.drivers] If a PSA driver is available in the build, a suitably configured Mbed TLS build must … 113 * **`MBEDTLS_PSA_ACCEL_xxx`** indicates whether a fully-featured, fallback-free transparent driver … 116 `MBEDTLS_PSA_ACCEL_xxx` is one of the outputs of the transpilation of a driver description, alongsi… 140 …s/crypto_drivers.h`, a header file generated by the transpilation of the driver descriptions. It d… 146 * (G) indicates a symbol that is generated from driver descriptions. 158 …LS_PSA_BUILTIN_xxx` symbols should not be visible to application code or driver code, since they a… 188 …The same JSON properties that are used to mean “this driver can perform that mechanism” in a drive… 222 …e versa? Is it always the right thing, for example if there is an opaque driver that manipulates t… 226 If a mechanism should only be supported in an opaque driver, what does the core need to know about … [all …]
|
/mbedtls-development/tests/suites/ |
A D | test_suite_psa_crypto_se_driver_hal_mocks.function | 330 psa_drv_se_t driver; 342 memset( &driver, 0, sizeof( driver ) ); 399 psa_drv_se_t driver; 411 memset( &driver, 0, sizeof( driver ) ); 453 psa_drv_se_t driver; 463 memset( &driver, 0, sizeof( driver ) ); 520 psa_drv_se_t driver; 532 memset( &driver, 0, sizeof( driver ) ); 569 psa_drv_se_t driver; 584 memset( &driver, 0, sizeof( driver ) ); [all …]
|
A D | test_suite_psa_crypto_driver_wrappers.data | 1 sign_hash through transparent driver: calculate in driver 4 sign_hash through transparent driver: fallback 8 sign_hash through transparent driver: error 11 sign_hash through transparent driver: fake 14 verify_hash using private key through transparent driver: calculate in driver 24 verify_hash using public key through transparent driver: calculate in driver 34 sign_message through transparent driver: calculate in driver 47 verify_message using private key through transparent driver: calculate in driver 57 verify_message using public key through transparent driver: calculate in driver 70 generate_key through transparent driver: in-driver [all …]
|
A D | test_suite_psa_crypto_se_driver_hal.function | 18 /* Test driver helpers */ 796 memset( &driver, 0, sizeof( driver ) ); 816 memset( &driver, 0, sizeof( driver ) ); 839 memset( &driver, 0, sizeof( driver ) ); 872 memset( &driver, 0, sizeof( driver ) ); 1006 memset( &driver, 0, sizeof( driver ) ); 1093 memset( &driver, 0, sizeof( driver ) ); 1164 memset( &driver, 0, sizeof( driver ) ); 1206 memset( &driver, 0, sizeof( driver ) ); 1289 memset( &driver, 0, sizeof( driver ) ); [all …]
|
A D | test_suite_psa_crypto_se_driver_hal.data | 1 Register SE driver: good 5 # unregistered the first driver. 6 Register SE driver: good, again 9 Register SE driver: invalid location (0) 12 Register SE driver: invalid location (local) 15 Register SE driver: invalid version (ancient) 18 Register SE driver: invalid version (future) 21 Register SE driver: already registered 24 Register SE driver: maximum number of drivers 180 Import-sign-verify: sign in driver, ECDSA [all …]
|
A D | test_suite_psa_crypto_driver_wrappers.function | 171 /* In the builtin algorithm the driver is called twice. */ 229 /* In the builtin algorithm the driver is called twice. */ 492 // driver function should've been called as part of the finish() core routine 908 /* Failure should prevent further operations from executing on the driver */ 930 /* Failure should prevent further operations from executing on the driver */ 960 /* Failure should prevent further operations from executing on the driver */ 1590 * Update inactive operation, the driver shouldn't be called. 1614 /* Two calls to the driver interface: update + abort */ 1646 * Finish inactive operation, the driver shouldn't be called. 1666 /* Two more calls to the driver interface: finish + abort */ [all …]
|
A D | test_suite_psa_crypto_entropy.data | 9 # the RNG driver.
|
/mbedtls-development/docs/architecture/ |
A D | psa-crypto-implementation-structure.md | 1 PSA Cryptograpy API implementation and PSA driver interface 17 …raphic functionalities can be described by a JSON driver description file as defined in the PSA dr… 18 * Along with JSON driver description files, the PSA driver specification defines the deliverables f… 26 …ents and translating them into valid arguments for the necessary calls to the PSA driver interface. 35 /* Pre driver interface call processing: validation of arguments, building 36 * of arguments for the call to the driver interface, ... */ 40 /* Call to the driver interface */ 45 /* Post driver interface call processing: validation of the values returned 46 * by the driver, finalization of the values to return to the caller, 71 …driver of the Mbed TLS PSA Cryptography API implementation (Mbed TLS PSA driver in the following) … [all …]
|
A D | alternative-implementations.md | 24 If your platform has a cryptographic accelerator, you can use it via a [PSA driver](#psa-cryptograp… 28 …driver for this engine in the PSA interface. Drivers are supported for cryptographic operations wi…
|
A D | Makefile | 7 testing/driver-interface-test-strategy.md \
|
A D | mbed-crypto-storage-specification.md | 233 …ITS_UID_BASE + lifetime`): secure element driver storage. The content of the file is the secure el… 254 * For an opaque key (unified driver interface): driver-specific opaque key blob. 271 …_key_slot_number_t` value. This is the unique designation of the key for the secure element driver. 279 * The driver persistent data. 283 * The driver persistent data. 314 * For an opaque key (unified driver interface): driver-specific opaque key blob.
|
/mbedtls-development/programs/fuzz/ |
A D | README.md | 6 They are used with a so-called fuzz driver, which will generate inputs, try to process them with th…
|
/mbedtls-development/ |
A D | README.md | 288 * A driver programming interface, which makes it possible to use hardware accelerators instead of t…
|
A D | ChangeLog | 278 * Added support for built-in driver keys through the PSA opaque crypto 279 driver interface. Refer to the documentation of 504 * Partial implementation of the PSA crypto driver interface: Mbed TLS can 562 both the old SE interface and the new PSA driver interface, external keys were 864 psa_register_se_driver() must be modified to pass the driver's location
|