blob: 449668a4e7fae8cd9cb5cb77a3939fcbe2c840a1 [file] [log] [blame]
#-------------------------------------------------------------------------------
# Copyright (c) 2018-2021, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
#-------------------------------------------------------------------------------
{
"psa_framework_version": 1.1,
"name": "TFM_SP_CRYPTO",
"type": "PSA-ROT",
"priority": "NORMAL",
"model": "IPC",
"entry_point": "tfm_crypto_init",
"stack_size": "0x2000",
"secure_functions": [
{
"name": "TFM_CRYPTO_GET_KEY_ATTRIBUTES",
"signal": "TFM_CRYPTO_GET_KEY_ATTRIBUTES",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_OPEN_KEY",
"signal": "TFM_CRYPTO_OPEN_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CLOSE_KEY",
"signal": "TFM_CRYPTO_CLOSE_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_RESET_KEY_ATTRIBUTES",
"signal": "TFM_CRYPTO_RESET_KEY_ATTRIBUTES",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_IMPORT_KEY",
"signal": "TFM_CRYPTO_IMPORT_KEY",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_DESTROY_KEY",
"signal": "TFM_CRYPTO_DESTROY_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_EXPORT_KEY",
"signal": "TFM_CRYPTO_EXPORT_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_EXPORT_PUBLIC_KEY",
"signal": "TFM_CRYPTO_EXPORT_PUBLIC_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_PURGE_KEY",
"signal": "TFM_CRYPTO_PURGE_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_COPY_KEY",
"signal": "TFM_CRYPTO_COPY_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_COMPUTE",
"signal": "TFM_CRYPTO_HASH_COMPUTE",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_COMPARE",
"signal": "TFM_CRYPTO_HASH_COMPARE",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_SETUP",
"signal": "TFM_CRYPTO_HASH_SETUP",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_UPDATE",
"signal": "TFM_CRYPTO_HASH_UPDATE",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_FINISH",
"signal": "TFM_CRYPTO_HASH_FINISH",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_VERIFY",
"signal": "TFM_CRYPTO_HASH_VERIFY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_ABORT",
"signal": "TFM_CRYPTO_HASH_ABORT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_HASH_CLONE",
"signal": "TFM_CRYPTO_HASH_CLONE",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_COMPUTE",
"signal": "TFM_CRYPTO_MAC_COMPUTE",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_VERIFY",
"signal": "TFM_CRYPTO_MAC_VERIFY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_SIGN_SETUP",
"signal": "TFM_CRYPTO_MAC_SIGN_SETUP",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_VERIFY_SETUP",
"signal": "TFM_CRYPTO_MAC_VERIFY_SETUP",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_UPDATE",
"signal": "TFM_CRYPTO_MAC_UPDATE",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_SIGN_FINISH",
"signal": "TFM_CRYPTO_MAC_SIGN_FINISH",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_VERIFY_FINISH",
"signal": "TFM_CRYPTO_MAC_VERIFY_FINISH",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_MAC_ABORT",
"signal": "TFM_CRYPTO_MAC_ABORT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_ENCRYPT",
"signal": "TFM_CRYPTO_CIPHER_ENCRYPT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_DECRYPT",
"signal": "TFM_CRYPTO_CIPHER_DECRYPT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_ENCRYPT_SETUP",
"signal": "TFM_CRYPTO_CIPHER_ENCRYPT_SETUP",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_DECRYPT_SETUP",
"signal": "TFM_CRYPTO_CIPHER_DECRYPT_SETUP",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_GENERATE_IV",
"signal": "TFM_CRYPTO_CIPHER_GENERATE_IV",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_SET_IV",
"signal": "TFM_CRYPTO_CIPHER_SET_IV",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_UPDATE",
"signal": "TFM_CRYPTO_CIPHER_UPDATE",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_FINISH",
"signal": "TFM_CRYPTO_CIPHER_FINISH",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_CIPHER_ABORT",
"signal": "TFM_CRYPTO_CIPHER_ABORT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_ENCRYPT",
"signal": "TFM_CRYPTO_AEAD_ENCRYPT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_DECRYPT",
"signal": "TFM_CRYPTO_AEAD_DECRYPT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_ENCRYPT_SETUP",
"signal": "TFM_CRYPTO_AEAD_ENCRYPT_SETUP",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_DECRYPT_SETUP",
"signal": "TFM_CRYPTO_AEAD_DECRYPT_SETUP",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_GENERATE_NONCE",
"signal": "TFM_CRYPTO_AEAD_GENERATE_NONCE",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_SET_NONCE",
"signal": "TFM_CRYPTO_AEAD_SET_NONCE",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_SET_LENGTHS",
"signal": "TFM_CRYPTO_AEAD_SET_LENGTHS",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_UPDATE_AD",
"signal": "TFM_CRYPTO_AEAD_UPDATE_AD",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_UPDATE",
"signal": "TFM_CRYPTO_AEAD_UPDATE",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_FINISH",
"signal": "TFM_CRYPTO_AEAD_FINISH",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_VERIFY",
"signal": "TFM_CRYPTO_AEAD_VERIFY",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_AEAD_ABORT",
"signal": "TFM_CRYPTO_AEAD_ABORT",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_SIGN_HASH",
"signal": "TFM_CRYPTO_SIGN_HASH",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_VERIFY_HASH",
"signal": "TFM_CRYPTO_VERIFY_HASH",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_ASYMMETRIC_ENCRYPT",
"signal": "TFM_CRYPTO_ASYMMETRIC_ENCRYPT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_ASYMMETRIC_DECRYPT",
"signal": "TFM_CRYPTO_ASYMMETRIC_DECRYPT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_SETUP",
"signal": "TFM_CRYPTO_KEY_DERIVATION_SETUP",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_GET_CAPACITY",
"signal": "TFM_CRYPTO_KEY_DERIVATION_GET_CAPACITY",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_SET_CAPACITY",
"signal": "TFM_CRYPTO_KEY_DERIVATION_SET_CAPACITY",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_INPUT_BYTES",
"signal": "TFM_CRYPTO_KEY_DERIVATION_INPUT_BYTES",
"non_secure_clients": true,
"minor_version": 1,
"minor_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_INPUT_KEY",
"signal": "TFM_CRYPTO_KEY_DERIVATION_INPUT_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_KEY_AGREEMENT",
"signal": "TFM_CRYPTO_KEY_DERIVATION_KEY_AGREEMENT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_OUTPUT_BYTES",
"signal": "TFM_CRYPTO_KEY_DERIVATION_OUTPUT_BYTES",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_OUTPUT_KEY",
"signal": "TFM_CRYPTO_KEY_DERIVATION_OUTPUT_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_KEY_DERIVATION_ABORT",
"signal": "TFM_CRYPTO_KEY_DERIVATION_ABORT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_RAW_KEY_AGREEMENT",
"signal": "TFM_CRYPTO_RAW_KEY_AGREEMENT",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_GENERATE_RANDOM",
"signal": "TFM_CRYPTO_GENERATE_RANDOM",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
{
"name": "TFM_CRYPTO_GENERATE_KEY",
"signal": "TFM_CRYPTO_GENERATE_KEY",
"non_secure_clients": true,
"version": 1,
"version_policy": "STRICT"
},
],
"services" : [
{
"name": "TFM_CRYPTO",
"sid": "0x00000080",
"non_secure_clients": true,
"connection_based": false,
"stateless_handle": 1,
"version": 1,
"version_policy": "STRICT"
},
],
"dependencies": [
"TFM_ITS_SET",
"TFM_ITS_GET",
"TFM_ITS_GET_INFO",
"TFM_ITS_REMOVE",
]
}