Skip to content

Commit 66d0b16

Browse files
committed
Add hook for verification using secure element
1 parent 745e9cb commit 66d0b16

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

library/psa_crypto.c

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3091,11 +3091,28 @@ psa_status_t psa_asymmetric_verify( psa_key_handle_t handle,
30913091
{
30923092
psa_key_slot_t *slot;
30933093
psa_status_t status;
3094+
const psa_se_drv_table_entry_t *driver = NULL;
30943095

30953096
status = psa_get_key_from_slot( handle, &slot, PSA_KEY_USAGE_VERIFY, alg );
30963097
if( status != PSA_SUCCESS )
30973098
return( status );
30983099

3100+
#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
3101+
driver = psa_get_se_driver_entry( slot->lifetime );
3102+
if( driver != NULL )
3103+
{
3104+
const psa_drv_se_t *drv = psa_get_se_driver_methods( driver );
3105+
if( drv->asymmetric == NULL ||
3106+
drv->asymmetric->p_verify == NULL )
3107+
{
3108+
return PSA_ERROR_NOT_SUPPORTED;
3109+
}
3110+
return( drv->asymmetric->p_verify(
3111+
slot->data.se.slot_number, alg, hash, hash_length, signature,
3112+
signature_length ) );
3113+
}
3114+
else
3115+
#endif /* MBEDTLS_PSA_CRYPTO_SE_C */
30993116
#if defined(MBEDTLS_RSA_C)
31003117
if( PSA_KEY_TYPE_IS_RSA( slot->type ) )
31013118
{

0 commit comments

Comments
 (0)