Page MenuHomePhabricator

OP-TEE SPMC V4.0.0 Test Results
Updated 401 Days AgoPublic

Overview

This page is to capture the test results for OP-TEE SPMC v4.0.0

The tests were ran using the following set of components:

<?xml version="1.0" encoding="UTF-8"?>
	<manifest>
	  <remote fetch="https://git.gitlab.arm.com" name="arm-gitlab"/>
	  <remote fetch="https://github.com" name="github"/>
	  <remote fetch="https://git.kernel.org" name="kernel-org"/>
	  <remote fetch="https://git.savannah.gnu.org/git" name="savannah"/>
	  <remote fetch="https://git.trustedfirmware.org" name="tfo"/>

	  
	  <default remote="github" revision="refs/tags/4.0.0-rc1"/>
	  
	  <project name="Mbed-TLS/mbedtls.git" path="mbedtls" revision="refs/tags/mbedtls-3.4.0"/>
	  <project groups="local::v323" name="OP-TEE/build.git" path="build">
	    <linkfile dest="build/Makefile" src="fvp-psa-sp.mk"/>
	  </project>
	  <project name="OP-TEE/optee_client.git" path="optee_client"/>
	  <project name="OP-TEE/optee_os.git" path="optee_os"/>
	  <project name="OP-TEE/optee_test.git" path="optee_test"/>
	  <project clone-depth="1" name="TF-A/trusted-firmware-a.git" path="trusted-firmware-a" remote="tfo" revision="refs/tags/v2.9"/>
	  <project name="TS/trusted-services.git" path="trusted-services" remote="tfo" revision="refs/tags/v1.0.0"/>
	  <project clone-depth="1" name="buildroot/buildroot.git" path="buildroot" revision="refs/tags/2022.11.1"/>
	  <project clone-depth="1" name="grub.git" path="grub" remote="savannah" revision="refs/tags/grub-2.02"/>
	  <project name="linaro-swg/optee_examples.git" path="optee_examples"/>
	  <project clone-depth="1" name="linux-arm/linux-trusted-services.git" path="linux-arm-ffa-user" remote="arm-gitlab" revision="refs/tags/debugfs-v5.0.1"/>
	  <project clone-depth="1" name="linux-arm/linux-trusted-services.git" path="linux-arm-ffa-tee" remote="arm-gitlab" revision="refs/tags/tee-v2.0.0"/>
	  <project clone-depth="1" name="pub/scm/linux/kernel/git/stable/linux.git" path="linux" remote="kernel-org" revision="refs/tags/v6.1.34"/>
	  <project name="tianocore/edk2-platforms.git" path="edk2-platforms" revision="02daa58c21f89628b4d8c76f95f3a554289149bc"/>
	  <project name="tianocore/edk2.git" path="edk2" revision="dd4cae4d82c7477273f3da455084844db5cca0c0"/>
	</manifest>

Details

Config 1: optee-spmc-test

Build command
MEASURED_BOOT=n SPMC_TESTS=y TS_SMM_GATEWAY=n TS_UEFI_TESTS=n SP_PACKAGING_METHOD=embedded DEFAULT_SP_CONFIG=default-opteesp
Setup steps after boot

/mnt/host/out/linux-arm-ffa-user/load_module.sh

Test results
xtest -t ffa_spmc
Run test suite with level=0

TEE test application started over default TEE instance
######################################################
#
# ffa_spmc
#
######################################################
 
* ffa_spmc_1001 Test FF-A communication
o ffa_spmc_1001.1 SP1 comms check
  ffa_spmc_1001.1 OK
o ffa_spmc_1001.2 Sp2 comms check
  ffa_spmc_1001.2 OK
o ffa_spmc_1001.3 SP to SP messaging check
  ffa_spmc_1001.3 OK
  ffa_spmc_1001 OK
 
* ffa_spmc_1002 Test FF-A memory: share memory from Normal World to SP
o ffa_spmc_1002.1 Test memory set-up
  ffa_spmc_1002.1 OK
o ffa_spmc_1002.2 Test retrieve memory second time
  ffa_spmc_1002.2 OK
o ffa_spmc_1002.3 Test accessing memory
  ffa_spmc_1002.3 OK
o ffa_spmc_1002.4 Test relinquish memory
  ffa_spmc_1002.4 OK
o ffa_spmc_1002.5 Test incorrect reclaim
  ffa_spmc_1002.5 OK
o ffa_spmc_1002.6 Test relinquish memory second time
  ffa_spmc_1002.6 OK
o ffa_spmc_1002.7 Test correct reclaim
  ffa_spmc_1002.7 OK
o ffa_spmc_1002.8 Test retrieve invalid memory region
  ffa_spmc_1002.8 OK
  ffa_spmc_1002 OK
 
* ffa_spmc_1003 Test FF-A memory: SP to SP
  ffa_spmc_1003 OK
 
* ffa_spmc_1004 Test FF-A memory: Access and flags
o ffa_spmc_1004.1 Test sharing with exc access
  ffa_spmc_1004.1 OK
o ffa_spmc_1004.2 Test sharing with incorrect access
  ffa_spmc_1004.2 OK
  ffa_spmc_1004 OK
+-----------------------------------------------------
Result of testsuite ffa_spmc:
ffa_spmc_1001 OK
ffa_spmc_1002 OK
ffa_spmc_1003 OK
ffa_spmc_1004 OK
+-----------------------------------------------------
39 subtests of which 0 failed
4 test cases of which 0 failed
0 test cases were skipped
TEE test application done!

Config 2: psa-ts-embedded

Build command

`MEASURED_BOOT=y SPMC_TESTS=n
@@ TS_SMM_GATEWAY=n TS_UEFI_TESTS=n SP_PACKAGING_METHOD=embedded DEFAULT_SP_CONFIG=default-sp SP_BLOCK_STORAGE_CONFIG=default-opteesp SP_PSA_ITS_CONFIG=shared-flash-opteesp SP_PSA_PS_CONFIG=shared-flash-opteesp`

Setup steps after boot

/mnt/host/out/linux-arm-ffa-tee/load_module.sh

Test results
ts-service-test
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/ts-service-test -v -xg Fwu
TEST(PsServiceTests, createAndSetExtended) - 65630 ms
TEST(PsServiceTests, createAndSet) - 101939 ms
TEST(PsServiceTests, storeNewItem) - 68400 ms
TEST(ItsServiceTests, storeNewItem) - 68110 ms
TEST(AttestationProvisioningTests, provisionedIak) - 29420 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 50957 ms
TEST(AttestationServiceTests, repeatedOperation) - 6071342 ms
TEST(AttestationServiceTests, invalidChallengeLen)[   32.239341] Arm TSTEE: invoke_func rpc status: -6
call():229 failed to invoke command: 22
 - 10200 ms
TEST(AttestationServiceTests, checkTokenSize) - 68715 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 10811 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 8848 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 8900 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 7300 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 34448 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 7300 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 24001 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 8712 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 11600 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 6900 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 10282 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 564479 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 192409 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 252073 ms
TEST(CryptoServicePackedcTests, signAndVerifyMessage)[   33.474041] random: crng init done
 - 312659 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 312756 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 157528 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 108954 ms
TEST(CryptoServicePackedcTests, purgeKey) - 96531 ms
TEST(CryptoServicePackedcTests, copyKey) - 109554 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 178433 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 47022 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 11299 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 2237211 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 183044 ms
TEST(CryptoServiceProtobufTests, signAndVerifyMessage) - 316175 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 316497 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 157498 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 109063 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 175661 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 43851 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 10415672 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 2027856 ms

OK (44 tests, 42 ran, 759 checks, 0 ignored, 2 filtered out, 25013836 ms)
psa-crypto-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-crypto-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Crypto Suite
******************************************

TEST: 201 | DESCRIPTION: Testing crypto key management APIs | UT:  psa_crypto_init
[Info] Executing tests from non-secure
[Check 1] Test calling crypto functions before psa_crypto_init
[Check 2] Test psa_crypto_init
[Check 3] Test multiple psa_crypto_init 

TEST RESULT: PASSED

******************************************

TEST: 202 | DESCRIPTION: Testing crypto key management APIs | UT: psa_import_key
[Info] Executing tests from non-secure
[Check 1] Test psa_import_key 16 bytes AES
[Check 2] Test psa_import_key 24 bytes AES
[Check 3] Test psa_import_key 32 bytes AES
[Check 4] Test psa_import_key 2048 RSA public key
[Check 5] Test psa_import_key with RSA 2048 keypair
[Check 6] Test psa_import_key with DES 8 bytes key
[Check 7] Test psa_import_key with Triple DES 2-Key
[Check 8] Test psa_import_key with Triple DES 3-Key
[Check 9] Test psa_import_key with EC Public key
[Check 10] Test psa_import_key with EC keypair
[Check 11] Test psa_import_key 16 bytes AES with invalid bits
[Check 12] Test psa_import_key with key data greater than the algorithm size
[Check 13] Test psa_import_key with incorrect key data size
[Check 14] Test psa_import_key with invalid key type value

TEST RESULT: PASSED

******************************************

TEST: 203 | DESCRIPTION: Testing crypto key management APIs | UT: psa_export_key
[Info] Executing tests from non-secure
[Check 1] Test psa_export_key 16 Byte AES
[Check 2] Test psa_export_key 24 Byte AES
[Check 3] Test psa_export_key 32 Byte AES
[Check 4] Test psa_export_key 2048 RSA public key
[Check 5] Test psa_export_key with RSA 2048 keypair
[Check 6] Test psa_export_key with DES 64 bit key
[Check 7] Test psa_export_key with Triple DES 2-Key
[Check 8] Test psa_export_key with Triple DES 3-Key
[Check 9] Test psa_export_key with EC Public key
[Check 10] Test psa_export_key with EC keypair
[Check 11] Test psa_export_key with key policy verify
[Check 12] Test psa_export_key with less buffer size

TEST RESULT: PASSED

******************************************

TEST: 204 | DESCRIPTION: Testing crypto key management APIs | UT: psa_export_public_key
[Info] Executing tests from non-secure
[Check 1] Test psa_export_public_key 16 Byte AES
[Check 2] Test psa_export_public_key 24 Byte AES
[Check 3] Test psa_export_public_key 32 Byte AES
[Check 4] Test psa_export_public_key 2048 RSA public key
[Check 5] Test psa_export_public_key with RSA 2048 keypair
[Check 6] Test psa_export_public_key with DES 64 bit key
[Check 7] Test psa_export_public_key with Triple DES 2-Key
[Check 8] Test psa_export_public_key with Triple DES 3-Key
[Check 9] Test psa_export_public_key with EC Public key
[Check 10] Test psa_export_public_key with EC keypair
[Check 11] Test psa_export_public_key with less buffer size

TEST RESULT: PASSED

******************************************

TEST: 205 | DESCRIPTION: Testing crypto key management APIs | UT: psa_destroy_key
[Info] Executing tests from non-secure
[Check 1] Test psa_destroy_key 16 Byte AES
[Check 2] Test psa_destroy_key 24 Byte AES
[Check 3] Test psa_destroy_key 32 Byte AES
[Check 4] Test psa_destroy_key 2048 RSA public key
[Check 5] Test psa_destroy_key with RSA 2048 keypair
[Check 6] Test psa_destroy_key with DES 64 bit key
[Check 7] Test psa_destroy_key with Triple DES 2-Key
[Check 8] Test psa_destroy_key with Triple DES 3-Key
[Check 9] Test psa_destroy_key with EC Public key
[Check 10] Test psa_destroy_key with EC keypair

TEST RESULT: PASSED

******************************************

TEST: 206 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_compute
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_compute with MD5 algorithm
[Check 2] Test psa_hash_compute with RIPEMD160 algorithm
[Check 3] Test psa_hash_compute with SHA1 algorithm
[Check 4] Test psa_hash_compute with SHA224 algorithm
[Check 5] Test psa_hash_compute with SHA256 algorithm
[Check 6] Test psa_hash_compute with SHA384 algorithm
[Check 7] Test psa_hash_compute with SHA512 algorithm
[Check 8] Test psa_hash_compute with small buffer size
[Check 9] Test psa_hash_compute with invalid algorithm

TEST RESULT: PASSED

******************************************

TEST: 207 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_compare
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_compare with MD5 algorithm
[Check 2] Test psa_hash_compare with RIPEMD160 algorithm
[Check 3] Test psa_hash_compare with SHA1 algorithm
[Check 4] Test psa_hash_compare with SHA224 algorithm
[Check 5] Test psa_hash_compare with SHA256 algorithm
[Check 6] Test psa_hash_compare with SHA384 algorithm
[Check 7] Test psa_hash_compare with SHA512 algorithm
[Check 8] Test psa_hash_compare with incorrect hash
[Check 9] Test psa_hash_compare with incorrect hash length
[Check 10] Test psa_hash_compare with invalid algorithm

TEST RESULT: PASSED

******************************************

TEST: 208 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_setup - ECDH + HKDF-SHA-256
[Check 2] Test psa_key_derivation_setup - ECDH, unknown KDF
[Check 3] Test psa_key_derivation_setup - bad key derivation algorithm
[Check 4] Test psa_key_derivation_setup - Invalid Algorithm

TEST RESULT: PASSED

******************************************

TEST: 209 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_input_bytes
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_input_bytes - Step as Info
[Check 2] Test psa_key_derivation_input_bytes - Step as secret
[Check 3] Test psa_key_derivation_input_bytes - Step as salt
[Check 4] Test psa_key_derivation_input_bytes - Step as label
[Check 5] Test psa_key_derivation_input_bytes - Step as seed
[Check 6] Test psa_key_derivation_input_bytes - Invalid step

TEST RESULT: PASSED

******************************************

TEST: 210 | DESCRIPTION: Testing crypto key attributes APIs | UT: psa_key_attributes_set_get
[Info] Executing tests from non-secure
[Check 1] Test psa_key_attributes_set_get key attributes

TEST RESULT: PASSED

******************************************

TEST: 211 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_setup with MD5 algorithm
[Check 2] Test psa_hash_setup with RIPEMD160 algorithm
[Check 3] Test psa_hash_setup with SHA1 algorithm
[Check 4] Test psa_hash_setup with SHA224 algorithm
[Check 5] Test psa_hash_setup with SHA256 algorithm
[Check 6] Test psa_hash_setup with SHA384 algorithm
[Check 7] Test psa_hash_setup with SHA512 algorithm
[Check 8] Test psa_hash_setup with Invalid hash algorithm
[Check 9] Test psa_hash_setup with Invalid algorithm
[Check 10] Test psa_hash_setup with CTR algorithm

TEST RESULT: PASSED

******************************************

TEST: 212 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_update
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_update with MD5 algorithm
[Check 2] Test psa_hash_update with RIPEMD160 algorithm
[Check 3] Test psa_hash_update with SHA1 algorithm
[Check 4] Test psa_hash_update with SHA224 algorithm
[Check 5] Test psa_hash_update with SHA256 algorithm
[Check 6] Test psa_hash_update with SHA384 algorithm
[Check 7] Test psa_hash_update with SHA512 algorithm
[Check 8] Test psa_hash_update without hash setup
[Check 9] Test psa_hash_update with completed opertaion handle 

TEST RESULT: PASSED

******************************************

TEST: 213 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_verify
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_verify with MD5 algorithm
[Check 2] Test psa_hash_verify with RIPEMD160 algorithm
[Check 3] Test psa_hash_verify with SHA1 algorithm
[Check 4] Test psa_hash_verify with SHA224 algorithm
[Check 5] Test psa_hash_verify with SHA256 algorithm
[Check 6] Test psa_hash_verify with SHA384 algorithm
[Check 7] Test psa_hash_verify with SHA512 algorithm
[Check 8] Test psa_hash_verify with incorrect expected hash
[Check 9] Test psa_hash_verify with incorrect hash length
[Check 10] test psa_hash_verify with inactive & invalid operation handle

TEST RESULT: PASSED

******************************************

TEST: 214 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_finish with MD5 algorithm
[Check 2] Test psa_hash_finish with RIPEMD160 algorithm
[Check 3] Test psa_hash_finish with SHA1 algorithm
[Check 4] Test psa_hash_finish with SHA224 algorithm
[Check 5] Test psa_hash_finish with SHA256 algorithm
[Check 6] Test psa_hash_finish with SHA384 algorithm
[Check 7] Test psa_hash_finish with SHA512 algorithm
[Check 8] Test psa_hash_finish with invalid hash buffer size
[Check 9] test psa_hash_finish with inactive operation handle

TEST RESULT: PASSED

******************************************

TEST: 215 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_abort with MD5 algorithm
[Check 2] Test psa_hash_abort with RIPEMD160 algorithm
[Check 3] Test psa_hash_abort with SHA1 algorithm
[Check 4] Test psa_hash_abort with SHA224 algorithm
[Check 5] Test psa_hash_abort with SHA256 algorithm
[Check 6] Test psa_hash_abort with SHA384 algorithm
[Check 7] Test psa_hash_abort with SHA512 algorithm
[Check 8] Test psa_hash_finish after calling psa_hash_abort

TEST RESULT: PASSED

******************************************

TEST: 216 | DESCRIPTION: Testing crypto generator functions APIs | UT: psa_generate_key
[Info] Executing tests from non-secure
[Check 1] Test psa_generate_key 16 Byte AES
[Check 2] Test psa_generate_key 24 Byte AES
[Check 3] Test psa_generate_key 32 Byte AES
[Check 4] Test psa_generate_key with DES 64 bit key
[Check 5] Test psa_generate_key with Triple DES 2-Key
[Check 6] Test psa_generate_key with Triple DES 3-Key
[Check 7] Test psa_generate_key with RSA 2048 Keypair
[Check 8] Test psa_generate_key with ECC KeyPair
[Check 9] Test psa_generate_key with RSA 2048 Public key
[Check 10] Test psa_generate_key with invalid key type
[Check 11] Test psa_generate_key with invalid usage flags

TEST RESULT: PASSED

******************************************

TEST: 217 | DESCRIPTION: Testing crypto generation APIs | UT: psa_generate_random
[Info] Executing tests from non-secure
[Check 1] Test psa_generate_random to get 0 Byte data
[Check 2] Test psa_generate_random to get 16 Byte data
[Check 3] Test psa_generate_random to get 24 Byte data
[Check 4] Test psa_generate_random to get 32 Byte data
[Check 5] Test psa_generate_random to get 64 Byte data
[Check 6] Test psa_generate_random to get 128 Byte data
[Check 7] Test psa_generate_random to get 256 Byte data
[Check 8] Test psa_generate_random to get 512 Byte data
[Check 9] Test psa_generate_random to get 1000 Byte data

TEST RESULT: PASSED

******************************************

TEST: 218 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_input_key
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_input_key 16 Byte Key
[Check 2] Test psa_key_derivation_input_key with invalid usage
[Check 3] Test psa_key_derivation_input_key with step as label
[Check 4] Test psa_key_derivation_input_key with step as info
[Check 5] Test psa_key_derivation_input_key with step as seed
[Check 6] Test psa_key_derivation_input_key with step as salt
[Check 7] Test psa_key_derivation_input_key with key type as AES(not derive)
[Check 8] Test psa_key_derivation_input_key incorrect key algorithm
[Check 9] Test psa_key_derivation_input_key with key type as 2048 RSA public key
[Check 10] Test psa_key_derivation_input_key with key type as RSA 2048 keypair
[Check 11] Test psa_key_derivation_input_key with zero as step
[Check 12] Test psa_cipher_decrypt_setup - Invalid key handle
[Check 13] Test psa_cipher_decrypt_setup - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 219 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_key_agreement
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_key_agreement - ECDH SECP256R1
[Check 2] Test psa_key_derivation_key_agreement - Invalid step
[Check 3] Test psa_key_derivation_key_agreement - ECDH SECP384R1
[Check 4] Test psa_key_derivation_key_agreement - Invalid usage
[Check 5] Test psa_key_derivation_key_agreement - KDF not a key agreement alg
[Check 6] Test psa_key_derivation_key_agreement - Public key of different curve
[Check 7] Test psa_key_derivation_key_agreement - Pub key instead of Prv key
[Check 8] Test psa_key_derivation_key_agreement - Invalid handle
[Check 9] Test psa_key_derivation_key_agreement - Zero as handle

TEST RESULT: PASSED

******************************************

TEST: 220 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_output_bytes
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_output_bytes - HKDF
[Check 2] Test psa_key_derivation_output_bytes - optional salt
[Check 3] Test psa_key_derivation_output_bytes - capacity < output_length
[Check 4] Test psa_key_derivation_output_bytes - missing info
[Check 5] Test psa_key_derivation_output_bytes - missing salt/secret/info
[Check 6] Test psa_key_derivation_output_bytes - TLS12_PRF
[Check 7] Test psa_key_derivation_output_bytes - capacity < output_length
[Check 8] Test psa_key_derivation_output_bytes - missing seed/secret/label

TEST RESULT: PASSED

******************************************

TEST: 221 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_output_key
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_output_key - Key
[Check 2] Test psa_key_derivation_output_key - Info
[Check 3] Test psa_key_derivation_output_key - Salt
[Check 4] Test psa_key_derivation_output_key - Greater Capacity than available
[Check 5] Test psa_key_derivation_output_key - ECC Public key
[Check 6] Test psa_key_derivation_output_key -  ECC keypair (wrong key length)
[Check 7] Test psa_key_derivation_output_key -  RSA Public Key[Check 8] Test psa_key_derivation_output_key -  RSA keypair
[Check 9] Test psa_key_derivation_output_key - Invalid key size

TEST RESULT: PASSED

******************************************

TEST: 222 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_abort

TEST RESULT: PASSED

******************************************

TEST: 223 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_set_get_capacity
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_set_get_capacity - < operation's capacity
[Check 2] Test psa_key_derivation_set_get_capacity - = operation's capacity
[Check 3] Test psa_key_derivation_set_get_capacity - > operation's capacity
[Check 4] Test psa_key_derivation_set_get_capacity - unchanged capacity

TEST RESULT: PASSED

******************************************

TEST: 224 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_encrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_encrypt - CCM - AES - 13B nonce & 8B add data
[Check 2] Test psa_aead_encrypt - CCM - AES - 13B nonce & 32B add data
[Check 3] Test psa_aead_encrypt - CCM - AES - 24 bytes Tag length = 4
[Check 4] Test psa_aead_encrypt - CCM - AES - Zero additional data
[Check 5] Test psa_aead_encrypt - CCM - AES - Zero plaintext
[Check 6] Test psa_aead_encrypt - GCM - AES - 12B nonce & 12B add data
[Check 7] Test psa_aead_encrypt - Unsupported algorithm
[Check 8] Test psa_aead_encrypt - Invalid usage flag
[Check 9] Test psa_aead_encrypt - Invalid ciphertext_size
[Check 10] Test psa_aead_encrypt - Invalid nonce
[Check 11] Test psa_aead_encrypt - Invalid tag length 0

TEST RESULT: PASSED

******************************************

TEST: 225 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_decrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_decrypt - CCM - AES - 13B nonce & 8B add data
[Check 2] Test psa_aead_decrypt - CCM - AES - 13B nonce & 32B add data
[Check 3] Test psa_aead_decrypt - CCM - AES - 24 bytes Tag length = 4
[Check 4] Test psa_aead_decrypt - CCM - AES - Zero additional data
[Check 5] Test psa_aead_decrypt - CCM - AES - Zero plaintext
[Check 6] Test psa_aead_decrypt - GCM - AES - 12B nonce & 12B add data
[Check 7] Test psa_aead_decrypt - Unsupported algorithm
[Check 8] Test psa_aead_decrypt - Invalid usage flag
[Check 9] Test psa_aead_decrypt - Invalid plaintext_size
[Check 10] Test psa_aead_decrypt - Invalid nonce
[Check 11] Test psa_aead_decrypt - Invalid cihpertext
[Check 12] Test psa_aead_decrypt - Invalid cihpertext_size
[Check 13] Test psa_aead_decrypt - Invalid tag length 0

TEST RESULT: PASSED

******************************************

TEST: 226 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_sign_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_sign_setup - HMAC - SHA256
[Check 2] Test psa_mac_sign_setup - CMAC - AES
[Check 3] Test psa_mac_sign_setup - Incompatible HMAC for CMAC
[Check 4] Test psa_mac_sign_setup - Invalid usage flag
[Check 5] Test psa_mac_sign_setup - Invalid key type
[Check 6] Test psa_mac_sign_setup - Truncated MAC too large
[Check 7] Test psa_mac_sign_setup - Truncated MAC too small
[Check 8] Test psa_mac_sign_setup - Unknown MAC algorithm
[Check 9] Test psa_mac_sign_setup - Bad algorithm (not a MAC algorithm)
[Check 10] Test psa_mac_sign_setup invalid key handle
[Check 11] Test psa_mac_sign_setup zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 227 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_update
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_update - HMAC - SHA256 - 64 Byte
[Check 2] Test psa_mac_update - CMAC - AES - 16 Byte
[Check 3] Test psa_mac_update - HMAC - SHA512 - 32 Byte
[Check 4] Test psa_mac_update - HMAC - SHA512 - Invalid operation state

TEST RESULT: PASSED

******************************************

TEST: 228 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_sign_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_sign_finish  - HMAC - SHA224
[Check 2] Test psa_mac_sign_finish  - HMAC - SHA256
[Check 3] Test psa_mac_sign_finish  - HMAC - SHA512
[Check 4] Test psa_mac_sign_finish  - HMAC - SHA224 - Truncated 8 Byte
[Check 5] Test psa_mac_sign_finish  - HMAC - SHA224 - Small output buffer
[Check 6] Test psa_mac_sign_finish  - HMAC - SHA224 - Invalid operation state
[Check 7] Test psa_mac_sign_finish  - CMAC - AES

TEST RESULT: PASSED

******************************************

TEST: 229 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_verify_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_verify_setup - HMAC - SHA256
[Check 2] Test psa_mac_verify_setup - CMAC - AES
[Check 3] Test psa_mac_verify_setup - Incompatible HMAC for CMAC
[Check 4] Test psa_mac_verify_setup - Invalid usage flag
[Check 5] Test psa_mac_verify_setup - Invalid key type
[Check 6] Test psa_mac_verify_setup - Truncated MAC too large
[Check 7] Test psa_mac_verify_setup - Truncated MAC too small
[Check 8] Test psa_mac_verify_setup - Unknown MAC algorithm
[Check 9] Test psa_mac_verify_setup - Bad algorithm (not a MAC algorithm)
[Check 10] Test psa_mac_verify_setup invalid key handle
[Check 11] Test psa_mac_verify_setup zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 230 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_verify_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_verify_finish - HMAC - SHA224
[Check 2] Test psa_mac_verify_finish - HMAC - SHA256
[Check 3] Test psa_mac_verify_finish - HMAC - SHA512
[Check 4] Test psa_mac_verify_finish - HMAC - SHA224 - Truncated 8 Byte
[Check 5] Test psa_mac_verify_finish - HMAC - SHA224 - Invalid mac length
[Check 6] Test psa_mac_verify_finish - HMAC - SHA224 - Invalid expected mac
[Check 7] Test psa_mac_verify_finish - HMAC - SHA224 - Invalid operation state
[Check 8] Test psa_mac_verify_finish - CMAC - AES

TEST RESULT: PASSED

******************************************

TEST: 231 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_abort - HMAC - SHA224
[Check 2] Test psa_mac_abort - HMAC - SHA224 - Truncated 8 Byte
[Check 3] Test psa_mac_abort - HMAC - SHA256
[Check 4] Test psa_mac_abort - HMAC - SHA512
[Check 5] Test psa_mac_abort - CMAC - AES
[Check 6] Test psa_mac_sign_finish after calling psa_mac_abort

TEST RESULT: PASSED

******************************************

TEST: 232 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_encrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_encrypt_setup 16 Byte AES
[Check 2] Test psa_cipher_encrypt_setup 24 Byte AES
[Check 3] Test psa_cipher_encrypt_setup 32 Byte AES
[Check 4] Test psa_cipher_encrypt_setup DES 64 bit key
[Check 5] Test psa_cipher_encrypt_setup Triple DES 2-Key
[Check 6] Test psa_cipher_encrypt_setup Triple DES 3-Key
[Check 7] Test psa_cipher_encrypt_setup 16 Byte raw data
[Check 8] Test psa_cipher_encrypt_setup - not a cipher algorithm
[Check 9] Test psa_cipher_encrypt_setup - unknown cipher algorithm
[Check 10] Test psa_cipher_encrypt_setup - incompatible key ARC4
[Check 11] Test psa_cipher_encrypt_setup - incorrect usage
[Check 12] Test psa_cipher_encrypt_setup - RSA public key
[Check 13] Test psa_cipher_encrypt_setup - RSA keypair
[Check 14] Test psa_cipher_encrypt_setup - EC Public key
[Check 15] Test psa_cipher_encrypt_setup - EC keypair
[Check 16] Test psa_cipher_encrypt_setup - Invalid key handle
[Check 17] Test psa_cipher_encrypt_setup - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 233 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_decrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_decrypt_setup 16 Byte AES
[Check 2] Test psa_cipher_decrypt_setup 24 Byte AES
[Check 3] Test psa_cipher_decrypt_setup 32 Byte AES
[Check 4] Test psa_cipher_decrypt_setup DES 64 bit key
[Check 5] Test psa_cipher_decrypt_setup Triple DES 2-Key
[Check 6] Test psa_cipher_decrypt_setup Triple DES 3-Key
[Check 7] Test psa_cipher_decrypt_setup 16 Byte raw data
[Check 8] Test psa_cipher_decrypt_setup - not a cipher algorithm
[Check 9] Test psa_cipher_decrypt_setup - unknown cipher algorithm
[Check 10] Test psa_cipher_decrypt_setup - incompatible key ARC4
[Check 11] Test psa_cipher_decrypt_setup - incorrect usage
[Check 12] Test psa_cipher_decrypt_setup - RSA public key
[Check 13] Test psa_cipher_decrypt_setup - RSA keypair
[Check 14] Test psa_cipher_decrypt_setup - EC Public key
[Check 15] Test psa_cipher_decrypt_setup - EC keypair
[Check 16] Test psa_cipher_decrypt_setup - Invalid key handle
[Check 17] Test psa_cipher_decrypt_setup - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 234 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_generate_iv
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_generate_iv 16 Byte AES
[Check 2] Test psa_cipher_generate_iv 24 Byte AES
[Check 3] Test psa_cipher_generate_iv 32 Byte AES
[Check 4] Test psa_cipher_generate_iv DES 64 bit key
[Check 5] Test psa_cipher_generate_iv DES 2-Key
[Check 6] Test psa_cipher_generate_iv DES 3-Key
[Check 7] Test psa_cipher_generate_iv AES - small iv buffer
[Check 8] Test psa_cipher_generate_iv DES - small iv buffer

TEST RESULT: PASSED

******************************************

TEST: 235 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_set_iv
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_set_iv 16 Byte AES
[Check 2] Test psa_cipher_set_iv 24 Byte AES
[Check 3] Test psa_cipher_set_iv 32 Byte AES
[Check 4] Test psa_cipher_set_iv DES 64 bit key
[Check 5] Test psa_cipher_set_iv DES 2-Key
[Check 6] Test psa_cipher_set_iv DES 3-Key
[Check 7] Test psa_cipher_set_iv AES - small iv buffer
[Check 8] Test psa_cipher_set_iv DES - small iv buffer
[Check 9] Test psa_cipher_set_iv AES - large iv buffer
[Check 10] Test psa_cipher_set_iv DES - large iv buffer

TEST RESULT: PASSED

******************************************

TEST: 236 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_update
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_update - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_update - Encrypt - AES CBC_NO_PADDING (Short in)
[Check 3] Test psa_cipher_update - Encrypt - AES CBC_PKCS7
[Check 4] Test psa_cipher_update - Encrypt - AES CBC_PKCS7 (Short input)
[Check 5] Test psa_cipher_update - Encrypt - AES CTR
[Check 6] Test psa_cipher_update - Encrypt - DES CBC (nopad)
[Check 7] Test psa_cipher_update - Encrypt - 2-key 3DE -CBC (nopad)
[Check 8] Test psa_cipher_update - Encrypt - 3-key 3DE -CBC (nopad)
[Check 9] Test psa_cipher_update - Encrypt - small output buffer size
[Check 10] Test psa_cipher_update - Decrypt - AES CBC_NO_PADDING
[Check 11] Test psa_cipher_update - Decrypt - AES CBC_NO_PADDING (Short in)
[Check 12] Test psa_cipher_update - Decrypt - AES CBC_PKCS7
[Check 13] Test psa_cipher_update - Decrypt - AES CBC_PKCS7 (Short input)
[Check 14] Test psa_cipher_update - Decrypt - AES CTR
[Check 15] Test psa_cipher_update - Decrypt - DES CBC (nopad)
[Check 16] Test psa_cipher_update - Decrypt - 2-key 3DE -CBC (nopad)
[Check 17] Test psa_cipher_update - Decrypt - 3-key 3DE -CBC (nopad)
[Check 18] Test psa_cipher_update - Decrypt - small output buffer size
[Check 19] Test psa_cipher_update without cipher setup

TEST RESULT: PASSED

******************************************

TEST: 237 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_finish - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_finish - Encrypt - AES CBC_NO_PADDING (Short in)
[Check 3] Test psa_cipher_finish - Encrypt - AES CBC_PKCS7
[Check 4] Test psa_cipher_finish - Encrypt - AES CBC_PKCS7 (Short input)
[Check 5] Test psa_cipher_finish - Encrypt - AES CTR
[Check 6] Test psa_cipher_finish - Encrypt - AES CTR (short input)
[Check 7] Test psa_cipher_finish - Encrypt - DES CBC (nopad)
[Check 8] Test psa_cipher_finish - Encrypt - 2-key 3DE -CBC (nopad)
[Check 9] Test psa_cipher_finish - Encrypt - 3-key 3DE -CBC (nopad)
[Check 10] Test psa_cipher_finish - Encrypt - small output buffer size
[Check 11] Test psa_cipher_finish - Decrypt - AES CBC_NO_PADDING
[Check 12] Test psa_cipher_finish - Decrypt - AES CBC_NO_PADDING (Short in)
[Check 13] Test psa_cipher_update - Decrypt - AES CBC_PKCS7
[Check 14] Test psa_cipher_finish - Decrypt - AES CBC_PKCS7 (Short input)
[Check 15] Test psa_cipher_finish - Decrypt - AES CTR
[Check 16] Test psa_cipher_finish - Decrypt - AES CTR (short input)
[Check 17] Test psa_cipher_finish - Decrypt - DES CBC (nopad)
[Check 18] Test psa_cipher_finish - Decrypt - 2-key 3DE -CBC (nopad)
[Check 19] Test psa_cipher_finish - Decrypt - 3-key 3DE -CBC (nopad)

TEST RESULT: PASSED

******************************************

TEST: 238 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_abort - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_abort - Encrypt - AES CBC_PKCS7
[Check 3] Test psa_cipher_abort - Encrypt - AES CTR
[Check 4] Test psa_cipher_abort - Encrypt - DES CBC (nopad)
[Check 5] Test psa_cipher_abort - Encrypt - 2-key 3DE -CBC (nopad)
[Check 6] Test psa_cipher_abort - Encrypt - 3-key 3DE -CBC (nopad)
[Check 7] Test psa_cipher_abort - Decrypt - AES CBC_NO_PADDING
[Check 8] Test psa_cipher_abort - Decrypt - AES CBC_PKCS7
[Check 9] Test psa_cipher_abort - Decrypt - AES CTR
[Check 10] Test psa_cipher_abort - Decrypt - DES CBC (nopad)
[Check 11] Test psa_cipher_abort - Decrypt - 2-key 3DE -CBC (nopad)
[Check 12] Test psa_cipher_abort - Decrypt - 3-key 3DE -CBC (nopad)
[Check 13] Test psa_cipher_update after psa_cipher_abort should fail

TEST RESULT: PASSED

******************************************

TEST: 239 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_asymmetric_encrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_asymmetric_encrypt - RSA PKCS1V15
[Check 2] Test psa_asymmetric_encrypt - RSA KEY_PAIR PKCS1V15
[Check 3] Test psa_asymmetric_encrypt - RSA OAEP SHA256
[Check 4] Test psa_asymmetric_encrypt - RSA OAEP SHA256 with label
[Check 5] Test psa_asymmetric_encrypt - RSA KEY_PAIR OAEP SHA256
[Check 6] Test psa_asymmetric_encrypt - RSA KEY_PAIR OAEP SHA256 with label
[Check 7] Test psa_asymmetric_encrypt - Small output buffer
[Check 8] Test psa_asymmetric_encrypt - Invalid algorithm
[Check 9] Test psa_asymmetric_encrypt - Invalid key type
[Check 10] Test psa_asymmetric_encrypt - Invalid usage
[Check 11] Test psa_asymmetric_encrypt - RSA PKCS1V15 - Salt
[Check 12] Test psa_asymmetric_encrypt - ECC public key
[Check 13] Test psa_asymmetric_encrypt - Invalid key handle
[Check 14] Test psa_asymmetric_encrypt - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 240 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_asymmetric_decrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_asymmetric_decrypt - RSA KEY_PAIR PKCS1V15
[Check 2] Test psa_asymmetric_decrypt - RSA KEY_PAIR OAEP SHA256
[Check 3] Test psa_asymmetric_decrypt - RSA KEY_PAIR OAEP SHA256 with label
[Check 4] Test psa_asymmetric_decrypt - Invalid key type (RSA public key)
[Check 5] Test psa_asymmetric_decrypt - Small output buffer
[Check 6] Test psa_asymmetric_decrypt - Invalid algorithm
[Check 7] Test psa_asymmetric_decrypt - Invalid key type (AES Key)
[Check 8] Test psa_asymmetric_decrypt - Invalid usage
[Check 9] Test psa_asymmetric_decrypt - RSA PKCS1V15 - Salt
[Check 10] Test psa_asymmetric_decrypt - Invalid key handle
[Check 11] Test psa_asymmetric_decrypt - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 241 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_sign_hash
[Info] Executing tests from non-secure
[Check 1] Test psa_sign_hash - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_sign_hash - RSA KEY_PAIR PKCS1V15 SHA-256
[Check 3] Test psa_sign_hash - ECDSA SECP256R1 SHA-256
[Check 4] Test psa_sign_hash - Invalid key type (RSA public key)
[Check 5] Test psa_sign_hash - Small output buffer
[Check 6] Test psa_sign_hash - Invalid algorithm
[Check 7] Test psa_sign_hash - Invalid key type (AES Key)
[Check 8] Test psa_sign_hash - Invalid usage
[Check 9] Test psa_sign_hash - Wrong hash size
[Check 10] Test psa_sign_hash - Invalid key handle
[Check 11] Test psa_sign_hash - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 242 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_verify_hash
[Info] Executing tests from non-secure
[Check 1] Test psa_verify_hash - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_verify_hash - RSA KEY_PAIR PKCS1V15 SHA-256
[Check 3] Test psa_verify_hash - ECDSA KEY_PAIR SECP256R1 SHA-256
[Check 4] Test psa_verify_hash - EC public key
[Check 5] Test psa_verify_hash - RSA public key
[Check 6] Test psa_verify_hash - Small output buffer
[Check 7] Test psa_verify_hash - Invalid algorithm
[Check 8] Test psa_verify_hash - Invalid key type (AES Key)
[Check 9] Test psa_verify_hash - Invalid usage
[Check 10] Test psa_verify_hash - Wrong hash size
[Check 11] Test psa_verify_hash - Wrong signature
[Check 12] Test psa_verify_hash - Wrong signature size
[Check 13] Test psa_verify_hash - Invalid key handle
[Check 14] Test psa_verify_hash - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 243 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_raw_key_agreement
[Info] Executing tests from non-secure
[Check 1] Test psa_raw_key_agreement - ECDH SECP256R1
[Check 2] Test psa_raw_key_agreement - Small buffer size
[Check 3] Test psa_raw_key_agreement - ECDH SECP384R1
[Check 4] Test psa_raw_key_agreement - Invalid usage
[Check 5] Test psa_raw_key_agreement - Unknown KDF
[Check 6] Test psa_raw_key_agreement - Not a key agreement alg
[Check 7] Test psa_raw_key_agreement - Public key on different curve
[Check 8] Test psa_raw_key_agreement - Public key instead of private key
[Check 9] Test psa_raw_key_agreement - Invalid key handle
[Check 10] Test psa_raw_key_agreement - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 244 | DESCRIPTION: Testing crypto key management APIs | UT: psa_copy_key
[Info] Executing tests from non-secure
[Check 1] Test psa_copy_key - 2048 RSA public key
[Check 2] Test psa_copy_key - RSA 2048 keypair
[Check 3] Test psa_copy_key - Incompatible target policy(source and target)
[Check 4] Test psa_copy_key - source key with no export usage
[Check 5] Test psa_copy_key - DES 64 bit key
[Check 6] Test psa_copy_key - Triple DES 2-Key
[Check 7] Test psa_copy_key - Triple DES 3-Key
[Check 8] Test psa_copy_key - EC Public key
[Check 9] Test psa_copy_key - EC keypair

TEST RESULT: PASSED

******************************************

TEST: 245 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_clone
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_clone - MD5 algorithm
[Check 2] Test psa_hash_clone - RIPEMD160 algorithm
[Check 3] Test psa_hash_clone - SHA1 algorithm
[Check 4] Test psa_hash_clone - SHA224 algorithm
[Check 5] Test psa_hash_clone - SHA256 algorithm
[Check 6] Test psa_hash_clone - SHA384 algorithm
[Check 7] Test psa_hash_clone - SHA512 algorithm
[Check 8] Test psa_hash_clone - from an inactive source operation
[Check 9] Test psa_hash_clone - on an active target operation

TEST RESULT: PASSED

******************************************

TEST: 246 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_compute
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_compute HMAC SHA 224
[Check 2] Test psa_mac_compute - Incompactible HMAC for CMAC
[Check 3] Test psa_mac_compute - Invalid usage
[Check 4] Test psa_mac_compute - truncated MAC too small
[Check 5] Test psa_mac_compute - truncated MAC too large
[Check 6] Test psa_mac_compute - bad algorithm (unknown MAC algorithm)
[Check 7] Test psa_mac_compute HMAC SHA 256
[Check 8] Test psa_mac_compute HMAC SHA 512
[Check 9] Test psa_mac_compute HMAC SHA 224 (truncated to 8 Byte)
[Check 10] Test psa_mac_compute CMAC AES 128
[Check 11] Test psa_mac_compute small size buffer
[Check 12] Test psa_mac_compute - Invalid key type

TEST RESULT: PASSED

******************************************

TEST: 247 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_verify
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_verify HMAC SHA 224
[Check 2] Test psa_mac_verify HMAC SHA 256
[Check 3] Test psa_mac_verify - Incompactible HMAC for CMAC
[Check 4] Test psa_mac_verify - Invalid usage
[Check 5] Test psa_mac_verify - Truncated MAC too large
[Check 6] Test psa_mac_verify - Truncated MAC too small
[Check 7] Test psa_mac_verify - bad algorithm (unknown MAC algorithm)
[Check 8] Test psa_mac_verify HMAC SHA 512
[Check 9] Test psa_mac_verify HMAC SHA 224 (truncated to 8 Byte)
[Check 10] Test psa_mac_verify CMAC AES 128
[Check 11] Test psa_mac_verify - Invalid key type
[Check 12] Test psa_mac_verify small size buffer
[Check 13] Test psa_mac_verify incorrect expected MAC

TEST RESULT: PASSED

******************************************

TEST: 248 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_encrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_encrypt - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_encrypt - Encrypt - AES CBC_NO_PADDING (Short input)
[Check 3] Test psa_cipher_encrypt - Encrypt - AES CBC_PKCS7
[Check 4] Test psa_cipher_encrypt - Encrypt - AES CBC_PKCS7 (Short input)
[Check 5] Test psa_cipher_encrypt - Encrypt - AES CTR
[Check 6] Test psa_cipher_encrypt - Encrypt - AES CTR (short input)
[Check 7] Test psa_cipher_encrypt - Encrypt - DES CBC (nopad)
[Check 8] Test psa_cipher_encrypt - Encrypt - 2-key 3DE -CBC (nopad)
[Check 9] Test psa_cipher_encrypt - Encrypt - 3-key 3DE -CBC (nopad)
[Check 10] Test psa_cipher_encrypt - small output buffer size
[Check 11] Test psa_cipher_encrypt - Decrypt - AES CBC_NO_PADDING

TEST RESULT: PASSED

******************************************

TEST: 249 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_decrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_decrypt - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_decrypt - Decrypt - AES CBC_NO_PADDING
[Check 3] Test psa_cipher_decrypt - Decrypt - AES CBC_NO_PADDING (Short input)
[Check 4] Test psa_cipher_decrypt - Decrypt - AES CBC_NO_PADDING
[Check 5] Test psa_cipher_decrypt - Decrypt - AES CBC_PKCS7
[Check 6] Test psa_cipher_decrypt - Decrypt - AES CBC_PKCS7 (Short input)
[Check 7] Test psa_cipher_decrypt - Decrypt - AES CTR
[Check 8] Test psa_cipher_decrypt - Decrypt - DES CBC (nopad)
[Check 9] Test psa_cipher_decrypt - Decrypt - 2-key 3DE -CBC (nopad)
[Check 10] Test psa_cipher_decrypt - 3-key 3DE -CBC (nopad)

TEST RESULT: PASSED

******************************************

TEST: 250 | DESCRIPTION: Testing crypto key management APIs | UT: psa_sign_message
[Info] Executing tests from non-secure
[Check 1] Test psa_sign_message - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_sign_message - ECDSA SECP256R1 SHA-256
[Check 3] Test psa_sign_message - Invalid key type (RSA public key)
[Check 4] Test psa_sign_message - Small output buffer
[Check 5] Test psa_sign_message - Invalid algorithm
[Check 6] Test psa_sign_message - Invalid key type (AES Key)
[Check 7] Test psa_sign_message - Invalid usage
[Check 8] Test psa_sign_message - Mismatch key type and Algorithm
[Check 9] Test psa_sign_message - Alg mismatch in key and API call
[Check 10] Test psa_sign_message - Invalid key handle
[Check 11] Test psa_sign_message - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 251 | DESCRIPTION: Testing crypto key management APIs | UT: psa_verify_message
[Info] Executing tests from non-secure
[Check 1] Test psa_verify_message - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_verify_message - RSA Public Key PKCS1V15 RAW
[Check 3] Test psa_verify_message - RSA KEY_PAIR PKCS1V15 SHA-256
[Check 4] Test psa_verify_message - ECDSA KEY_PAIR SECP256R1 SHA-256
[Check 5] Test psa_verify_message - ECDSA Public Key SECP256R1 SHA-256
[Check 6] Test psa_verify_message - Small output buffer
[Check 7] Test psa_verify_message - Invalid algorithm
[Check 8] Test psa_verify_message - Invalid key type (AES Key)
[Check 9] Test psa_verify_message - Invalid usage
[Check 10] Test psa_verify_message - Wrong message size
[Check 11] Test psa_verify_message - Wrong signature
[Check 12] Test psa_verify_message - Wrong signature size
[Check 13] Test psa_verify_message - Invalid key handle
[Check 14] Test psa_verify_message - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 252 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_encrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_encrypt_setup - CCM - AES
[Check 2] Test psa_aead_encrypt_setup - CCM - AES - Tag length = 4
[Check 3] Test psa_aead_encrypt_setup - CCM - AES - Mismatched tag length
[Check 4] Test psa_aead_encrypt_setup - CCM - AES - Default Tag length
[Check 5] Test psa_aead_encrypt_setup - GCM - AES
[Check 6] Test psa_aead_encrypt_setup - CCM - DES Invalid key
[Check 7] Test psa_aead_encrypt_setup - Invalid usage flag

TEST RESULT: PASSED

******************************************

TEST: 253 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_decrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_decrypt_setup - CCM - AES
[Check 2] Test psa_aead_decrypt_setup - CCM - AES - Tag length = 4
[Check 3] Test psa_aead_decrypt_setup - CCM - AES - Mismatched tag length
[Check 4] Test psa_aead_decrypt_setup - CCM - AES - Default Tag length
[Check 5] Test psa_aead_decrypt_setup - GCM - AES
[Check 6] Test psa_aead_decrypt_setup - CCM - DES Invalid key
[Check 7] Test psa_aead_decrypt_setup - Invalid usage flag

TEST RESULT: PASSED

******************************************

TEST: 254 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_generate_nonce
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_generate_nonce - CCM
[Check 2] Test psa_aead_generate_nonce - CCM - Tag length = 4
[Check 3] Test psa_aead_generate_nonce - CCM - Small buffer size
[Check 4] Test psa_aead_generate_nonce - CCM - Uninitialized operation
[Check 5] Test psa_aead_generate_nonce - CCM - Decrypt operation
[Check 6] Test psa_aead_generate_nonce - GCM
[Check 7] Test psa_aead_generate_nonce - GCM - Decrypt operation

TEST RESULT: PASSED

******************************************

TEST: 255 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_set_nonce
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_set_nonce - Encrypt - CCM
[Check 2] Test psa_aead_set_nonce - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_set_nonce - Encrypt - CCM - Small nonce size
[Check 4] Test psa_aead_set_nonce - Encrypt - CCM - Large nonce size
[Check 5] Test psa_aead_set_nonce - Encrypt - CCM - Invalid operation state
[Check 6] Test psa_aead_set_nonce - Encrypt - GCM
[Check 7] Test psa_aead_set_nonce - Decrypt - CCM
[Check 8] Test psa_aead_set_nonce - Decrypt - CCM - Tag length = 4
[Check 9] Test psa_aead_set_nonce - Decrypt - CCM - Small nonce size
[Check 10] Test psa_aead_set_nonce - Decrypt - CCM - Large nonce size
[Check 11] Test psa_aead_set_nonce - Decrypt - CCM - Invalid operation state
[Check 12] Test psa_aead_set_nonce - Decrypt - GCM

TEST RESULT: PASSED

******************************************

TEST: 256 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_set_lengths
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_set_lengths - Encrypt - CCM
[Check 2] Test psa_aead_set_lengths - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_set_lengths - Encrypt - CCM - Zero ad_length
[Check 4] Test psa_aead_set_lengths - Encrypt - CCM - Zero plaintext_length
[Check 5] Test psa_aead_set_lengths - Encrypt - CCM - Invalid operation state
[Check 6] Test psa_aead_set_lengths - Encrypt - GCM
[Check 7] Test psa_aead_set_lengths - Decrypt - CCM
[Check 8] Test psa_aead_set_lengths - Decrypt - CCM - Tag length = 4
[Check 9] Test psa_aead_set_lengths - Decrypt - CCM - Zero ad_length
[Check 10] Test psa_aead_set_lengths - Decrypt - CCM - Zero plaintext_length
[Check 11] Test psa_aead_set_lengths - Decrypt - CCM - Invalid operation state
[Check 12] Test psa_aead_set_lengths - Decrypt - GCM

TEST RESULT: PASSED

******************************************

TEST: 257 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_update_ad
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_update_ad - Encrypt - CCM
[Check 2] Test psa_aead_update_ad - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_update_ad - Encrypt - CCM - Zero ad_length
[Check 4] Test psa_aead_update_ad - Encrypt - CCM - Zero plaintext_length
[Check 5] Test psa_aead_update_ad - Encrypt - CCM - Invalid operation state
[Check 6] Test psa_aead_update_ad - Encrypt - CCM - Overflow input length
[Check 7] Test psa_aead_update_ad - Decrypt - CCM
[Check 8] Test psa_aead_update_ad - Decrypt - CCM - Tag length = 4
[Check 9] Test psa_aead_update_ad - Decrypt - CCM - Zero ad_length
[Check 10] Test psa_aead_update_ad - Decrypt - CCM - Zero plaintext_length
[Check 11] Test psa_aead_update_ad - Decrypt - CCM - Invalid operation state
[Check 12] Test psa_aead_update_ad - Decrypt - CCM - Overflow input length

TEST RESULT: PASSED

******************************************

TEST: 258 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_update
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_update - Encrypt - CCM
[Check 2] Test psa_aead_update - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_update - Encrypt - CCM - Zero ad_length
[Check 4] Test psa_aead_update - Encrypt - CCM - Zero plaintext_length
[Check 5] Test psa_aead_update - Encrypt - CCM - Small buffer size
[Check 6] Test psa_aead_update - Encrypt - CCM - Less add data than specified
[Check 7] Test psa_aead_update - Encrypt - CCM - Overflow input length
[Check 8] Test psa_aead_update - Encrypt - CCM - Invalid operation state
[Check 9] Test psa_aead_update - Decrypt - CCM
[Check 10] Test psa_aead_update - Decrypt - CCM - Tag length = 4
[Check 11] Test psa_aead_update - Decrypt - CCM - Zero ad_length
[Check 12] Test psa_aead_update - Decrypt - CCM - Zero plaintext_length
[Check 13] Test psa_aead_update - Decrypt - CCM - Small buffer size
[Check 14] Test psa_aead_update - Decrypt - Less add data than specified
[Check 15] Test psa_aead_update - Decrypt - CCM - Overflow input length
[Check 16] Test psa_aead_update - Decrypt - CCM - Invalid operation state

TEST RESULT: PASSED

******************************************

TEST: 259 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_finish - AES-CCM
[Check 2] Test psa_aead_finish - AES-CCM 24 bytes Tag length = 4
[Check 3] Test psa_aead_finish - Small buffer size
[Check 4] Test psa_aead_finish - Input length is less than plaintext length
[Check 5] Test psa_aead_finish - GCM - 16B AES - 12B Nonce & 12B additional data

TEST RESULT: PASSED

******************************************

TEST: 260 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_abort - Encrypt - CCM - AES
[Check 2] Test psa_aead_abort - Encrypt - GCM - AES
[Check 3] Test psa_aead_abort - Decrypt - CCM - AES
[Check 4] Test psa_aead_abort - Decrypt - GCM - AES
[Check 5] Test psa_aead_abort with all initializations

TEST RESULT: PASSED

******************************************

TEST: 261 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_verify
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_verify - AES-CCM
[Check 2] Test psa_aead_verify - AES-CCM 24 bytes Tag length = 4
[Check 3] Test psa_aead_verify - Small buffer size
[Check 4] Test psa_aead_verify - Input length is less than plaintext length
[Check 5] Test psa_aead_verify - GCM - 16B AES - 12B Nounce & 12B addi data

TEST RESULT: PASSED

******************************************

************ Crypto Suite Report **********
TOTAL TESTS     : 61
TOTAL PASSED    : 61
TOTAL SIM ERROR : 0
TOTAL FAILED    : 0
TOTAL SKIPPED   : 0
******************************************

Entering standby.. 

#echo
psa-iat-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-iat-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Attestation Suite
******************************************

TEST: 601 | DESCRIPTION: Testing attestation initial attestation APIs | UT: psa_initial_attestation
[Info] Executing tests from non-secure
[Check 1] Test psa_initial_attestation_get_token with Challenge 32
[Check 2] Test psa_initial_attestation_get_token with Challenge 48
[Check 3] Test psa_initial_attestation_get_token with Challenge 64
[Check 4] Test psa_initial_attestation_get_token with zero challenge size
[Check 5] Test psa_initial_attestation_get_token with small challenge size
[Check 6] Test psa_initial_attestation_get_token with invalid challenge size
[Check 7] Test psa_initial_attestation_get_token with large challenge size
[   90.192514] Arm TSTEE: invoke_func rpc status: -6
call():229 failed to invoke command: 22
[Check 8] Test psa_initial_attestation_get_token with zero as token size
[Check 9] Test psa_initial_attestation_get_token with small token size
[Check 10] Test psa_initial_attestation_get_token_size with Challenge 32
[Check 11] Test psa_initial_attestation_get_token_size with Challenge 48
[Check 12] Test psa_initial_attestation_get_token_size with Challenge 64
[Check 13] Test psa_initial_attestation_get_token_size with zero challenge size
[Check 14] Test psa_initial_attestation_get_token_size with small challenge size
[Check 15] Test psa_initial_attestation_get_token_size with invalid challenge size
[Check 16] Test psa_initial_attestation_get_token_size with large challenge size

TEST RESULT: PASSED

******************************************

************ Attestation Suite Report **********
TOTAL TESTS     : 1
TOTAL PASSED    : 1
TOTAL SIM ERROR : 0
TOTAL FAILED    : 0
TOTAL SKIPPED   : 0
******************************************

Entering standby.. 

#echo
psa-its-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-its-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Storage Suite
******************************************

TEST: 401 | DESCRIPTION: UID not found check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call get API for UID 6 which is not set
[Check 2] Call get_info API for UID 6 which is not set
[Check 3] Call remove API for UID 6 which is not set
[Check 4] Call get API for UID 6 which is removed
[Check 5] Call get_info API for UID 6 which is removed
[Check 6] Call remove API for UID 6 which is removed
Set storage for UID 6
[Check 7] Call get API for different UID 5
[Check 8] Call get_info API for different UID 5
[Check 9] Call remove API for different UID 5

TEST RESULT: PASSED

******************************************

TEST: 402 | DESCRIPTION: Write once error check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Update the flag of UID 1 with WRITE_ONCE flag
[Check 2] Try to remove the UID 1 having WRITE_ONCE flag
[Check 3] Create a new UID 2 with WRITE_ONCE flag
[Check 4] Try to remove the UID 2 having WRITE_ONCE flag
[Check 5] Try to change the length of write_once UID 2
[Check 6] Check UID removal still fails
[Check 7] Try to change the WRITE_ONCE flag to None for UID 2
[Check 8] Check UID removal still fails

TEST RESULT: PASSED

******************************************

TEST: 403 | DESCRIPTION: Insufficient space check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Overload storage space
UID 13 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 13 set failed due to insufficient space
Remove all registered UIDs

TEST RESULT: PASSED

******************************************

TEST: 404 | DESCRIPTION: Data Consistency check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call set API with reduced length - TEST_BUFF_SIZE/2
[Check 2] Call get API with default length - TEST_BUFF_SIZE

TEST RESULT: PASSED

******************************************

TEST: 405 | DESCRIPTION: Success scenarios check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Set UID with data length zero and call storage APIs
[Check 2] Resetting the length check

TEST RESULT: PASSED

******************************************

TEST: 406 | DESCRIPTION: Check for storage create flags | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call set API with flag - PSA_STORAGE_FLAG_NONE
[Check 2] Call set API with flag - PSA_STORAGE_FLAG_NO_CONFIDENTIALITY
[Check 3] Call set API with flag - PSA_STORAGE_FLAG_NO_REPLAY_PROTECTION

TEST RESULT: PASSED

******************************************

TEST: 407 | DESCRIPTION: Incorrect Size check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
Create a valid Storage - TEST_BUFF_SIZE/2
Increase the length of storage - TEST_BUFF_SIZE
[Check 1] Call get API with old length - TEST_BUFF_SIZE/2
[Check 2] Call get API with old length - TEST_BUFF_SIZE/4
Decrease the length of storage - TEST_BUFF_SIZE/4
[Check 3] Call get API with old length - TEST_BUFF_SIZE/2
[Check 4] Call get API with old length - TEST_BUFF_SIZE
[Check 5] Call get API with valid length - TEST_BUFF_SIZE/4

TEST RESULT: PASSED

******************************************

TEST: 408 | DESCRIPTION: Invalid offset check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Try to access data with varying valid offset
[Check 2] Try to access data with varying invalid offset

TEST RESULT: PASSED

******************************************

TEST: 409 | DESCRIPTION: Invalid Arguments check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call set API with NULL pointer and data length 0
[Check 2] Call get API with NULL read buffer and data length 0
[Check 3] Remove the UID
[Check 4] Call get_info API to verify UID removed
[Check 5] Create UID with zero data_len and valid write buffer
[Check 8] Call get API with NULL read buffer and data length 0
[Check 9] Increase the length

TEST RESULT: PASSED

******************************************

TEST: 410 | DESCRIPTION: UID value zero check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Creating storage with UID 0 should fail
[Check 2] Get_info for UID 0 should fail
[Check 3] Removing storage with UID 0 should fail

TEST RESULT: PASSED

******************************************

************ Storage Suite Report **********
TOTAL TESTS     : 10
TOTAL PASSED    : 10
TOTAL SIM ERROR : 0
TOTAL FAILED    : 0
TOTAL SKIPPED   : 0
******************************************

Entering standby.. 

#echo
psa-ps-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-ps-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Storage Suite
******************************************

TEST: 401 | DESCRIPTION: UID not found check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call get API for UID 6 which is not set
[Check 2] Call get_info API for UID 6 which is not set
[Check 3] Call remove API for UID 6 which is not set
[Check 4] Call get API for UID 6 which is removed
[Check 5] Call get_info API for UID 6 which is removed
[Check 6] Call remove API for UID 6 which is removed
Set storage for UID 6
[Check 7] Call get API for different UID 5
[Check 8] Call get_info API for different UID 5
[Check 9] Call remove API for different UID 5

TEST RESULT: PASSED

******************************************

TEST: 402 | DESCRIPTION: Write once error check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Update the flag of UID 1 with WRITE_ONCE flag
[Check 2] Try to remove the UID 1 having WRITE_ONCE flag
[Check 3] Create a new UID 2 with WRITE_ONCE flag
[Check 4] Try to remove the UID 2 having WRITE_ONCE flag
[Check 5] Try to change the length of write_once UID 2
[Check 6] Check UID removal still fails
[Check 7] Try to change the WRITE_ONCE flag to None for UID 2
[Check 8] Check UID removal still fails

TEST RESULT: PASSED

******************************************

TEST: 403 | DESCRIPTION: Insufficient space check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Overload storage space
UID 13 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 13 set failed due to insufficient space
Remove all registered UIDs

TEST RESULT: PASSED

******************************************

TEST: 404 | DESCRIPTION: Data Consistency check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call set API with reduced length - TEST_BUFF_SIZE/2
[Check 2] Call get API with default length - TEST_BUFF_SIZE

TEST RESULT: PASSED

******************************************

TEST: 405 | DESCRIPTION: Success scenarios check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Set UID with data length zero and call storage APIs
[Check 2] Resetting the length check

TEST RESULT: PASSED

******************************************

TEST: 406 | DESCRIPTION: Check for storage create flags | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call set API with flag - PSA_STORAGE_FLAG_NONE
[Check 2] Call set API with flag - PSA_STORAGE_FLAG_NO_CONFIDENTIALITY
[Check 3] Call set API with flag - PSA_STORAGE_FLAG_NO_REPLAY_PROTECTION

TEST RESULT: PASSED

******************************************

TEST: 407 | DESCRIPTION: Incorrect Size check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Create a valid Storage - TEST_BUFF_SIZE/2
Increase the length of storage - TEST_BUFF_SIZE
[Check 1] Call get API with old length - TEST_BUFF_SIZE/2
[Check 2] Call get API with old length - TEST_BUFF_SIZE/4
Decrease the length of storage - TEST_BUFF_SIZE/4
[Check 3] Call get API with old length - TEST_BUFF_SIZE/2
[Check 4] Call get API with old length - TEST_BUFF_SIZE
[Check 5] Call get API with valid length - TEST_BUFF_SIZE/4

TEST RESULT: PASSED

******************************************

TEST: 408 | DESCRIPTION: Invalid offset check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Try to access data with varying valid offset
[Check 2] Try to access data with varying invalid offset

TEST RESULT: PASSED

******************************************

TEST: 409 | DESCRIPTION: Invalid Arguments check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call set API with NULL pointer and data length 0
[Check 2] Call get API with NULL read buffer and data length 0
[Check 3] Remove the UID
[Check 4] Call get_info API to verify UID removed
[Check 5] Create UID with zero data_len and valid write buffer
[Check 8] Call get API with NULL read buffer and data length 0
[Check 9] Increase the length

TEST RESULT: PASSED

******************************************

TEST: 410 | DESCRIPTION: UID value zero check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Creating storage with UID 0 should fail
[Check 2] Get_info for UID 0 should fail
[Check 3] Removing storage with UID 0 should fail

TEST RESULT: PASSED

******************************************

TEST: 411 | DESCRIPTION: Optional APIs: UID not found check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 412 | DESCRIPTION: Optional APIs: Invalid arguments and offset invalid | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 413 | DESCRIPTION: Set_Extended and Create api : Success | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 414 | DESCRIPTION: Optional APIs not supported check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Optional PS APIs are not supported.
[Check 1] Call to create API should fail as API not supported
	Failed at Checkpoint: 1
	Actual: 0
	Expected: -134

TEST RESULT: FAILED (Error Code=0x1)

******************************************

TEST: 415 | DESCRIPTION: Create API write_once flag value check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 416 | DESCRIPTION: Storage assest capacity modification check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs not are supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 417 | DESCRIPTION: Storage assest capacity modification check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs not are supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

************ Storage Suite Report **********
TOTAL TESTS     : 17
TOTAL PASSED    : 10
TOTAL SIM ERROR : 0
TOTAL FAILED    : 1
TOTAL SKIPPED   : 6
******************************************

Entering standby.. 

#echo
ts-demo
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/trusted-services/tools/b-test/install/arm-linux/bin/ts-demo

Demonstrates use of trusted services from an application
---------------------------------------------------------
A client requests a set of crypto operations performed by
the Crypto service.  Key storage for persistent keys is
provided by the Secure Storage service via the ITS client.

Generating random bytes length: 1
	Operation successful
	Random bytes: 
		BE
Generating random bytes length: 7
	Operation successful
	Random bytes: 
		82 E4 19 43 A0 73 C4
Generating random bytes length: 128
	Operation successful
	Random bytes: 
		E9 B9 F5 F5 05 31 9B 26
		82 91 2F A2 6F 03 B9 D3
		07 35 E6 2C D3 8C 1C 3B
		E3 CE B2 BD 9B 79 DE 8B
		90 8D 83 21 A1 44 E1 99
		50 6B A1 BA 6D 53 A1 D2
		1F EF EC D1 93 9B 9A AB
		AF 39 A5 2D 83 20 98 4E
		5F 73 6C 60 4C 8C B2 F3
		33 BC 55 43 F1 E9 C6 91
		7D 42 CC 4D 51 6E 5B 95
		28 34 A1 0B C8 70 AD CE
		AA D1 29 78 0D 76 7E C4
		85 72 CF 02 E7 F0 30 A0
		9D CA 8E 3B 40 D1 6C EF
		06 7B DE 0C 2E 25 D0 0E
Generating ECC signing key
	Operation successful
Signing message: "The quick brown fox" using key: 256
	Operation successful
	Signature bytes: 
		D2 5A C4 16 D7 80 C2 83
		75 BD D9 88 D9 C9 F7 38
		32 CC E4 A4 D2 4B 13 E6
		0B 5D C8 7C 76 78 F2 55
		F0 19 C6 6B D1 55 D5 E5
		45 AE 08 B0 2D 36 C8 F9
		39 3B EC 94 8A 04 15 6E
		AB 7C 82 BE 79 73 E4 F4
Verify signature using original message: "The quick brown fox"
	Operation successful
Verify signature using modified message: "!he quick brown fox"
	Successfully detected modified message
Signing message: "jumps over the lazy dog" using key: 256
	Operation successful
	Signature bytes: 
		F3 10 8A 36 8C 9C BD 95
		4F D2 BC D3 E6 9F 59 80
		C5 8D B5 2F 8F DD EF C9
		73 79 10 DD B3 D3 B0 5B
		F4 D8 5E B2 A3 CF 7F CC
		76 1A A8 2E CE 31 68 89
		0A F3 20 FE D4 6E 43 DD
		0C BD 3E 62 56 8B 7C D0
Verify signature using original message: "jumps over the lazy dog"
	Operation successful
Verify signature using modified message: "!umps over the lazy dog"
	Successfully detected modified message
Generating RSA encryption key
	Operation successful
Encrypting message: "Top secret" using RSA key: 257
	Operation successful
	Encrypted message: 
		5B 64 29 99 7E 66 FA 4B
		4D 02 05 2A A9 28 75 DC
		18 CB FC E6 69 E4 00 CC
		A0 27 F6 18 90 B6 6E 77
Decrypting message using RSA key: 257
	Operation successful
	Decrypted message: "Top secret"
Exporting public key: 256
	Operation successful
	Public key bytes: 
		04 6C C8 13 A1 94 DD 1C
		E9 F8 E0 CC 43 14 EE 3B
		10 29 A6 78 DB 41 D1 D3
		53 3F 35 77 FF 13 1B A6
		80 7E 8F E6 5D 5E BE 96
		C9 FB EA 89 B7 0D 15 59
		5D 0D D8 00 DF 16 F4 A3
		B0 79 9B 6D 40 5D 36 6B
		A9
Destroying signing key: 256
	Operation successful
Destroying encryption key: 257
	Operation successful

#echo

Config 3: psa-ts-fip

Build command
MEASURED_BOOT=y SPMC_TESTS=n TS_SMM_GATEWAY=n TS_UEFI_TESTS=n SP_PACKAGING_METHOD=fip DEFAULT_SP_CONFIG=default-opteesp SP_BLOCK_STORAGE_CONFIG=default-sp SP_PSA_CRYPTO_CONFIG=default-opteesp SP_PSA_ATTESTATION_CONFIG=default-opteesp
Setup steps after boot

/mnt/host/out/linux-arm-ffa-user/load_module.sh

Test results
ts-service-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/ts-service-test -v -xg Fwu
TEST(PsServiceTests, createAndSetExtended) - 9057 ms
TEST(PsServiceTests, createAndSet) - 8048 ms
TEST(PsServiceTests, storeNewItem) - 7500 ms
TEST(ItsServiceTests, storeNewItem) - 7212 ms
TEST(AttestationProvisioningTests, provisionedIak) - 29147 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 50390 ms
TEST(AttestationServiceTests, repeatedOperation) - 6118621 ms
TEST(AttestationServiceTests, invalidChallengeLen)[   31.707878] Arm TSTEE: invoke_func rpc status: -6
call():229 failed to invoke command: 22
 - 10300 ms
TEST(AttestationServiceTests, checkTokenSize) - 69199 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 10857 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 8734 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 9011 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 7527 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 34800 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 7400 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 24216 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 8800 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 11947 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 6840 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 10800 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 701900 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 127200 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 243763 ms
TEST(CryptoServicePackedcTests, signAndVerifyMessage)[   33.014380] random: crng init done
 - 257322 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 256381 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 34928 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 50474 ms
TEST(CryptoServicePackedcTests, purgeKey) - 32247 ms
TEST(CryptoServicePackedcTests, copyKey) - 146395 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 55544 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 47451 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 11462 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 1171840 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 254302 ms
TEST(CryptoServiceProtobufTests, signAndVerifyMessage) - 256405 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 257263 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 35681 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 51355 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 52845 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 47457 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 10546695 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 2040600 ms

OK (44 tests, 42 ran, 759 checks, 0 ignored, 2 filtered out, 23143243 ms)


#echo
psa-crypto-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-crypto-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Crypto Suite
******************************************

TEST: 201 | DESCRIPTION: Testing crypto key management APIs | UT:  psa_crypto_init
[Info] Executing tests from non-secure
[Check 1] Test calling crypto functions before psa_crypto_init
[Check 2] Test psa_crypto_init
[Check 3] Test multiple psa_crypto_init 

TEST RESULT: PASSED

******************************************

TEST: 202 | DESCRIPTION: Testing crypto key management APIs | UT: psa_import_key
[Info] Executing tests from non-secure
[Check 1] Test psa_import_key 16 bytes AES
[Check 2] Test psa_import_key 24 bytes AES
[Check 3] Test psa_import_key 32 bytes AES
[Check 4] Test psa_import_key 2048 RSA public key
[Check 5] Test psa_import_key with RSA 2048 keypair
[Check 6] Test psa_import_key with DES 8 bytes key
[Check 7] Test psa_import_key with Triple DES 2-Key
[Check 8] Test psa_import_key with Triple DES 3-Key
[Check 9] Test psa_import_key with EC Public key
[Check 10] Test psa_import_key with EC keypair
[Check 11] Test psa_import_key 16 bytes AES with invalid bits
[Check 12] Test psa_import_key with key data greater than the algorithm size
[Check 13] Test psa_import_key with incorrect key data size
[Check 14] Test psa_import_key with invalid key type value

TEST RESULT: PASSED

******************************************

TEST: 203 | DESCRIPTION: Testing crypto key management APIs | UT: psa_export_key
[Info] Executing tests from non-secure
[Check 1] Test psa_export_key 16 Byte AES
[Check 2] Test psa_export_key 24 Byte AES
[Check 3] Test psa_export_key 32 Byte AES
[Check 4] Test psa_export_key 2048 RSA public key
[Check 5] Test psa_export_key with RSA 2048 keypair
[Check 6] Test psa_export_key with DES 64 bit key
[Check 7] Test psa_export_key with Triple DES 2-Key
[Check 8] Test psa_export_key with Triple DES 3-Key
[Check 9] Test psa_export_key with EC Public key
[Check 10] Test psa_export_key with EC keypair
[Check 11] Test psa_export_key with key policy verify
[Check 12] Test psa_export_key with less buffer size

TEST RESULT: PASSED

******************************************

TEST: 204 | DESCRIPTION: Testing crypto key management APIs | UT: psa_export_public_key
[Info] Executing tests from non-secure
[Check 1] Test psa_export_public_key 16 Byte AES
[Check 2] Test psa_export_public_key 24 Byte AES
[Check 3] Test psa_export_public_key 32 Byte AES
[Check 4] Test psa_export_public_key 2048 RSA public key
[Check 5] Test psa_export_public_key with RSA 2048 keypair
[Check 6] Test psa_export_public_key with DES 64 bit key
[Check 7] Test psa_export_public_key with Triple DES 2-Key
[Check 8] Test psa_export_public_key with Triple DES 3-Key
[Check 9] Test psa_export_public_key with EC Public key
[Check 10] Test psa_export_public_key with EC keypair
[Check 11] Test psa_export_public_key with less buffer size

TEST RESULT: PASSED

******************************************

TEST: 205 | DESCRIPTION: Testing crypto key management APIs | UT: psa_destroy_key
[Info] Executing tests from non-secure
[Check 1] Test psa_destroy_key 16 Byte AES
[Check 2] Test psa_destroy_key 24 Byte AES
[Check 3] Test psa_destroy_key 32 Byte AES
[Check 4] Test psa_destroy_key 2048 RSA public key
[Check 5] Test psa_destroy_key with RSA 2048 keypair
[Check 6] Test psa_destroy_key with DES 64 bit key
[Check 7] Test psa_destroy_key with Triple DES 2-Key
[Check 8] Test psa_destroy_key with Triple DES 3-Key
[Check 9] Test psa_destroy_key with EC Public key
[Check 10] Test psa_destroy_key with EC keypair

TEST RESULT: PASSED

******************************************

TEST: 206 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_compute
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_compute with MD5 algorithm
[Check 2] Test psa_hash_compute with RIPEMD160 algorithm
[Check 3] Test psa_hash_compute with SHA1 algorithm
[Check 4] Test psa_hash_compute with SHA224 algorithm
[Check 5] Test psa_hash_compute with SHA256 algorithm
[Check 6] Test psa_hash_compute with SHA384 algorithm
[Check 7] Test psa_hash_compute with SHA512 algorithm
[Check 8] Test psa_hash_compute with small buffer size
[Check 9] Test psa_hash_compute with invalid algorithm

TEST RESULT: PASSED

******************************************

TEST: 207 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_compare
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_compare with MD5 algorithm
[Check 2] Test psa_hash_compare with RIPEMD160 algorithm
[Check 3] Test psa_hash_compare with SHA1 algorithm
[Check 4] Test psa_hash_compare with SHA224 algorithm
[Check 5] Test psa_hash_compare with SHA256 algorithm
[Check 6] Test psa_hash_compare with SHA384 algorithm
[Check 7] Test psa_hash_compare with SHA512 algorithm
[Check 8] Test psa_hash_compare with incorrect hash
[Check 9] Test psa_hash_compare with incorrect hash length
[Check 10] Test psa_hash_compare with invalid algorithm

TEST RESULT: PASSED

******************************************

TEST: 208 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_setup - ECDH + HKDF-SHA-256
[Check 2] Test psa_key_derivation_setup - ECDH, unknown KDF
[Check 3] Test psa_key_derivation_setup - bad key derivation algorithm
[Check 4] Test psa_key_derivation_setup - Invalid Algorithm

TEST RESULT: PASSED

******************************************

TEST: 209 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_input_bytes
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_input_bytes - Step as Info
[Check 2] Test psa_key_derivation_input_bytes - Step as secret
[Check 3] Test psa_key_derivation_input_bytes - Step as salt
[Check 4] Test psa_key_derivation_input_bytes - Step as label
[Check 5] Test psa_key_derivation_input_bytes - Step as seed
[Check 6] Test psa_key_derivation_input_bytes - Invalid step

TEST RESULT: PASSED

******************************************

TEST: 210 | DESCRIPTION: Testing crypto key attributes APIs | UT: psa_key_attributes_set_get
[Info] Executing tests from non-secure
[Check 1] Test psa_key_attributes_set_get key attributes

TEST RESULT: PASSED

******************************************

TEST: 211 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_setup with MD5 algorithm
[Check 2] Test psa_hash_setup with RIPEMD160 algorithm
[Check 3] Test psa_hash_setup with SHA1 algorithm
[Check 4] Test psa_hash_setup with SHA224 algorithm
[Check 5] Test psa_hash_setup with SHA256 algorithm
[Check 6] Test psa_hash_setup with SHA384 algorithm
[Check 7] Test psa_hash_setup with SHA512 algorithm
[Check 8] Test psa_hash_setup with Invalid hash algorithm
[Check 9] Test psa_hash_setup with Invalid algorithm
[Check 10] Test psa_hash_setup with CTR algorithm

TEST RESULT: PASSED

******************************************

TEST: 212 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_update
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_update with MD5 algorithm
[Check 2] Test psa_hash_update with RIPEMD160 algorithm
[Check 3] Test psa_hash_update with SHA1 algorithm
[Check 4] Test psa_hash_update with SHA224 algorithm
[Check 5] Test psa_hash_update with SHA256 algorithm
[Check 6] Test psa_hash_update with SHA384 algorithm
[Check 7] Test psa_hash_update with SHA512 algorithm
[Check 8] Test psa_hash_update without hash setup
[Check 9] Test psa_hash_update with completed opertaion handle 

TEST RESULT: PASSED

******************************************

TEST: 213 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_verify
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_verify with MD5 algorithm
[Check 2] Test psa_hash_verify with RIPEMD160 algorithm
[Check 3] Test psa_hash_verify with SHA1 algorithm
[Check 4] Test psa_hash_verify with SHA224 algorithm
[Check 5] Test psa_hash_verify with SHA256 algorithm
[Check 6] Test psa_hash_verify with SHA384 algorithm
[Check 7] Test psa_hash_verify with SHA512 algorithm
[Check 8] Test psa_hash_verify with incorrect expected hash
[Check 9] Test psa_hash_verify with incorrect hash length
[Check 10] test psa_hash_verify with inactive & invalid operation handle

TEST RESULT: PASSED

******************************************

TEST: 214 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_finish with MD5 algorithm
[Check 2] Test psa_hash_finish with RIPEMD160 algorithm
[Check 3] Test psa_hash_finish with SHA1 algorithm
[Check 4] Test psa_hash_finish with SHA224 algorithm
[Check 5] Test psa_hash_finish with SHA256 algorithm
[Check 6] Test psa_hash_finish with SHA384 algorithm
[Check 7] Test psa_hash_finish with SHA512 algorithm
[Check 8] Test psa_hash_finish with invalid hash buffer size
[Check 9] test psa_hash_finish with inactive operation handle

TEST RESULT: PASSED

******************************************

TEST: 215 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_abort with MD5 algorithm
[Check 2] Test psa_hash_abort with RIPEMD160 algorithm
[Check 3] Test psa_hash_abort with SHA1 algorithm
[Check 4] Test psa_hash_abort with SHA224 algorithm
[Check 5] Test psa_hash_abort with SHA256 algorithm
[Check 6] Test psa_hash_abort with SHA384 algorithm
[Check 7] Test psa_hash_abort with SHA512 algorithm
[Check 8] Test psa_hash_finish after calling psa_hash_abort

TEST RESULT: PASSED

******************************************

TEST: 216 | DESCRIPTION: Testing crypto generator functions APIs | UT: psa_generate_key
[Info] Executing tests from non-secure
[Check 1] Test psa_generate_key 16 Byte AES
[Check 2] Test psa_generate_key 24 Byte AES
[Check 3] Test psa_generate_key 32 Byte AES
[Check 4] Test psa_generate_key with DES 64 bit key
[Check 5] Test psa_generate_key with Triple DES 2-Key
[Check 6] Test psa_generate_key with Triple DES 3-Key
[Check 7] Test psa_generate_key with RSA 2048 Keypair
[  135.578310] rcu: INFO: rcu_sched self-detected stall on CPU
[  135.578378] rcu: 	6-....: (5249 ticks this GP) idle=bfc4/1/0x4000000000000000 softirq=776/776 fqs=2577
[  135.578720] 	(t=5250 jiffies g=-67 q=1 ncpus=8)
[  135.578884] CPU: 6 PID: 149 Comm: psa-crypto-api- Tainted: G           O       6.1.34 #1
[  135.579078] Hardware name: FVP Base RevC (DT)
[  135.579224] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  135.579398] pc : arm_smccc_1_2_smc+0x34/0x78
[  135.579578] lr : __arm_ffa_fn_smc+0x10/0x20
[  135.579785] sp : ffffffc008e3b970
[  135.579878] x29: ffffffc008e3b980 x28: ffffff88003f1680 x27: ffffff880097f980
[  135.580113] x26: 0000007feb0a9828 x25: 0000000000000000 x24: 0000000084000070
[  135.580378] x23: 0000000084000062 x22: 000000008400006d x21: ffffffc008e3bc80
[  135.580612] x20: ffffffc00876b600 x19: ffffffc008e3b9d0 x18: 0000000000000000
[  135.580878] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
[  135.581133] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[  135.581393] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
[  135.581587] x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000
[  135.581878] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
[  135.582078] x2 : 0000000000000000 x1 : 0000000080050000 x0 : 0000000084000062
[  135.582348] Call trace:
[  135.582378]  arm_smccc_1_2_smc+0x34/0x78
[  135.582608]  ffa_msg_send_direct_req+0x108/0x1b0
[  135.582816]  ffa_sync_send_receive+0x28/0x34
[  135.582980]  tstee_invoke_func+0xd8/0x1dc [arm_tstee]
[  135.583226]  tee_ioctl+0xdfc/0xf9c
[  135.583389]  __arm64_sys_ioctl+0x3bc/0xc30
[  135.583578]  invoke_syscall.constprop.0+0x5c/0x104
[  135.583778]  do_el0_svc+0x60/0x18c
[  135.583910]  el0_svc+0x38/0xf0
[  135.584083]  el0t_64_sync_handler+0xbc/0x140
[  135.584278]  el0t_64_sync+0x18c/0x190
[Check 8] Test psa_generate_key with ECC KeyPair
[Check 9] Test psa_generate_key with RSA 2048 Public key
[Check 10] Test psa_generate_key with invalid key type
[Check 11] Test psa_generate_key with invalid usage flags

TEST RESULT: PASSED

******************************************

TEST: 217 | DESCRIPTION: Testing crypto generation APIs | UT: psa_generate_random
[Info] Executing tests from non-secure
[Check 1] Test psa_generate_random to get 0 Byte data
[Check 2] Test psa_generate_random to get 16 Byte data
[Check 3] Test psa_generate_random to get 24 Byte data
[Check 4] Test psa_generate_random to get 32 Byte data
[Check 5] Test psa_generate_random to get 64 Byte data
[Check 6] Test psa_generate_random to get 128 Byte data
[Check 7] Test psa_generate_random to get 256 Byte data
[Check 8] Test psa_generate_random to get 512 Byte data
[Check 9] Test psa_generate_random to get 1000 Byte data

TEST RESULT: PASSED

******************************************

TEST: 218 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_input_key
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_input_key 16 Byte Key
[Check 2] Test psa_key_derivation_input_key with invalid usage
[Check 3] Test psa_key_derivation_input_key with step as label
[Check 4] Test psa_key_derivation_input_key with step as info
[Check 5] Test psa_key_derivation_input_key with step as seed
[Check 6] Test psa_key_derivation_input_key with step as salt
[Check 7] Test psa_key_derivation_input_key with key type as AES(not derive)
[Check 8] Test psa_key_derivation_input_key incorrect key algorithm
[Check 9] Test psa_key_derivation_input_key with key type as 2048 RSA public key
[Check 10] Test psa_key_derivation_input_key with key type as RSA 2048 keypair
[Check 11] Test psa_key_derivation_input_key with zero as step
[Check 12] Test psa_cipher_decrypt_setup - Invalid key handle
[Check 13] Test psa_cipher_decrypt_setup - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 219 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_key_agreement
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_key_agreement - ECDH SECP256R1
[Check 2] Test psa_key_derivation_key_agreement - Invalid step
[Check 3] Test psa_key_derivation_key_agreement - ECDH SECP384R1
[Check 4] Test psa_key_derivation_key_agreement - Invalid usage
[Check 5] Test psa_key_derivation_key_agreement - KDF not a key agreement alg
[Check 6] Test psa_key_derivation_key_agreement - Public key of different curve
[Check 7] Test psa_key_derivation_key_agreement - Pub key instead of Prv key
[Check 8] Test psa_key_derivation_key_agreement - Invalid handle
[Check 9] Test psa_key_derivation_key_agreement - Zero as handle

TEST RESULT: PASSED

******************************************

TEST: 220 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_output_bytes
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_output_bytes - HKDF
[Check 2] Test psa_key_derivation_output_bytes - optional salt
[Check 3] Test psa_key_derivation_output_bytes - capacity < output_length
[Check 4] Test psa_key_derivation_output_bytes - missing info
[Check 5] Test psa_key_derivation_output_bytes - missing salt/secret/info
[Check 6] Test psa_key_derivation_output_bytes - TLS12_PRF
[Check 7] Test psa_key_derivation_output_bytes - capacity < output_length
[Check 8] Test psa_key_derivation_output_bytes - missing seed/secret/label

TEST RESULT: PASSED

******************************************

TEST: 221 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_output_key
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_output_key - Key
[Check 2] Test psa_key_derivation_output_key - Info
[Check 3] Test psa_key_derivation_output_key - Salt
[Check 4] Test psa_key_derivation_output_key - Greater Capacity than available
[Check 5] Test psa_key_derivation_output_key - ECC Public key
[Check 6] Test psa_key_derivation_output_key -  ECC keypair (wrong key length)
[Check 7] Test psa_key_derivation_output_key -  RSA Public Key[Check 8] Test psa_key_derivation_output_key -  RSA keypair
[Check 9] Test psa_key_derivation_output_key - Invalid key size

TEST RESULT: PASSED

******************************************

TEST: 222 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_abort

TEST RESULT: PASSED

******************************************

TEST: 223 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_set_get_capacity
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_set_get_capacity - < operation's capacity
[Check 2] Test psa_key_derivation_set_get_capacity - = operation's capacity
[Check 3] Test psa_key_derivation_set_get_capacity - > operation's capacity
[Check 4] Test psa_key_derivation_set_get_capacity - unchanged capacity

TEST RESULT: PASSED

******************************************

TEST: 224 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_encrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_encrypt - CCM - AES - 13B nonce & 8B add data
[Check 2] Test psa_aead_encrypt - CCM - AES - 13B nonce & 32B add data
[Check 3] Test psa_aead_encrypt - CCM - AES - 24 bytes Tag length = 4
[Check 4] Test psa_aead_encrypt - CCM - AES - Zero additional data
[Check 5] Test psa_aead_encrypt - CCM - AES - Zero plaintext
[Check 6] Test psa_aead_encrypt - GCM - AES - 12B nonce & 12B add data
[Check 7] Test psa_aead_encrypt - Unsupported algorithm
[Check 8] Test psa_aead_encrypt - Invalid usage flag
[Check 9] Test psa_aead_encrypt - Invalid ciphertext_size
[Check 10] Test psa_aead_encrypt - Invalid nonce
[Check 11] Test psa_aead_encrypt - Invalid tag length 0

TEST RESULT: PASSED

******************************************

TEST: 225 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_decrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_decrypt - CCM - AES - 13B nonce & 8B add data
[Check 2] Test psa_aead_decrypt - CCM - AES - 13B nonce & 32B add data
[Check 3] Test psa_aead_decrypt - CCM - AES - 24 bytes Tag length = 4
[Check 4] Test psa_aead_decrypt - CCM - AES - Zero additional data
[Check 5] Test psa_aead_decrypt - CCM - AES - Zero plaintext
[Check 6] Test psa_aead_decrypt - GCM - AES - 12B nonce & 12B add data
[Check 7] Test psa_aead_decrypt - Unsupported algorithm
[Check 8] Test psa_aead_decrypt - Invalid usage flag
[Check 9] Test psa_aead_decrypt - Invalid plaintext_size
[Check 10] Test psa_aead_decrypt - Invalid nonce
[Check 11] Test psa_aead_decrypt - Invalid cihpertext
[Check 12] Test psa_aead_decrypt - Invalid cihpertext_size
[Check 13] Test psa_aead_decrypt - Invalid tag length 0

TEST RESULT: PASSED

******************************************

TEST: 226 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_sign_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_sign_setup - HMAC - SHA256
[Check 2] Test psa_mac_sign_setup - CMAC - AES
[Check 3] Test psa_mac_sign_setup - Incompatible HMAC for CMAC
[Check 4] Test psa_mac_sign_setup - Invalid usage flag
[Check 5] Test psa_mac_sign_setup - Invalid key type
[Check 6] Test psa_mac_sign_setup - Truncated MAC too large
[Check 7] Test psa_mac_sign_setup - Truncated MAC too small
[Check 8] Test psa_mac_sign_setup - Unknown MAC algorithm
[Check 9] Test psa_mac_sign_setup - Bad algorithm (not a MAC algorithm)
[Check 10] Test psa_mac_sign_setup invalid key handle
[Check 11] Test psa_mac_sign_setup zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 227 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_update
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_update - HMAC - SHA256 - 64 Byte
[Check 2] Test psa_mac_update - CMAC - AES - 16 Byte
[Check 3] Test psa_mac_update - HMAC - SHA512 - 32 Byte
[Check 4] Test psa_mac_update - HMAC - SHA512 - Invalid operation state

TEST RESULT: PASSED

******************************************

TEST: 228 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_sign_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_sign_finish  - HMAC - SHA224
[Check 2] Test psa_mac_sign_finish  - HMAC - SHA256
[Check 3] Test psa_mac_sign_finish  - HMAC - SHA512
[Check 4] Test psa_mac_sign_finish  - HMAC - SHA224 - Truncated 8 Byte
[Check 5] Test psa_mac_sign_finish  - HMAC - SHA224 - Small output buffer
[Check 6] Test psa_mac_sign_finish  - HMAC - SHA224 - Invalid operation state
[Check 7] Test psa_mac_sign_finish  - CMAC - AES

TEST RESULT: PASSED

******************************************

TEST: 229 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_verify_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_verify_setup - HMAC - SHA256
[Check 2] Test psa_mac_verify_setup - CMAC - AES
[Check 3] Test psa_mac_verify_setup - Incompatible HMAC for CMAC
[Check 4] Test psa_mac_verify_setup - Invalid usage flag
[Check 5] Test psa_mac_verify_setup - Invalid key type
[Check 6] Test psa_mac_verify_setup - Truncated MAC too large
[Check 7] Test psa_mac_verify_setup - Truncated MAC too small
[Check 8] Test psa_mac_verify_setup - Unknown MAC algorithm
[Check 9] Test psa_mac_verify_setup - Bad algorithm (not a MAC algorithm)
[Check 10] Test psa_mac_verify_setup invalid key handle
[Check 11] Test psa_mac_verify_setup zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 230 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_verify_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_verify_finish - HMAC - SHA224
[Check 2] Test psa_mac_verify_finish - HMAC - SHA256
[Check 3] Test psa_mac_verify_finish - HMAC - SHA512
[Check 4] Test psa_mac_verify_finish - HMAC - SHA224 - Truncated 8 Byte
[Check 5] Test psa_mac_verify_finish - HMAC - SHA224 - Invalid mac length
[Check 6] Test psa_mac_verify_finish - HMAC - SHA224 - Invalid expected mac
[Check 7] Test psa_mac_verify_finish - HMAC - SHA224 - Invalid operation state
[Check 8] Test psa_mac_verify_finish - CMAC - AES

TEST RESULT: PASSED

******************************************

TEST: 231 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_abort - HMAC - SHA224
[Check 2] Test psa_mac_abort - HMAC - SHA224 - Truncated 8 Byte
[Check 3] Test psa_mac_abort - HMAC - SHA256
[Check 4] Test psa_mac_abort - HMAC - SHA512
[Check 5] Test psa_mac_abort - CMAC - AES
[Check 6] Test psa_mac_sign_finish after calling psa_mac_abort

TEST RESULT: PASSED

******************************************

TEST: 232 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_encrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_encrypt_setup 16 Byte AES
[Check 2] Test psa_cipher_encrypt_setup 24 Byte AES
[Check 3] Test psa_cipher_encrypt_setup 32 Byte AES
[Check 4] Test psa_cipher_encrypt_setup DES 64 bit key
[Check 5] Test psa_cipher_encrypt_setup Triple DES 2-Key
[Check 6] Test psa_cipher_encrypt_setup Triple DES 3-Key
[Check 7] Test psa_cipher_encrypt_setup 16 Byte raw data
[Check 8] Test psa_cipher_encrypt_setup - not a cipher algorithm
[Check 9] Test psa_cipher_encrypt_setup - unknown cipher algorithm
[Check 10] Test psa_cipher_encrypt_setup - incompatible key ARC4
[Check 11] Test psa_cipher_encrypt_setup - incorrect usage
[Check 12] Test psa_cipher_encrypt_setup - RSA public key
[Check 13] Test psa_cipher_encrypt_setup - RSA keypair
[Check 14] Test psa_cipher_encrypt_setup - EC Public key
[Check 15] Test psa_cipher_encrypt_setup - EC keypair
[Check 16] Test psa_cipher_encrypt_setup - Invalid key handle
[Check 17] Test psa_cipher_encrypt_setup - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 233 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_decrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_decrypt_setup 16 Byte AES
[Check 2] Test psa_cipher_decrypt_setup 24 Byte AES
[Check 3] Test psa_cipher_decrypt_setup 32 Byte AES
[Check 4] Test psa_cipher_decrypt_setup DES 64 bit key
[Check 5] Test psa_cipher_decrypt_setup Triple DES 2-Key
[Check 6] Test psa_cipher_decrypt_setup Triple DES 3-Key
[Check 7] Test psa_cipher_decrypt_setup 16 Byte raw data
[Check 8] Test psa_cipher_decrypt_setup - not a cipher algorithm
[Check 9] Test psa_cipher_decrypt_setup - unknown cipher algorithm
[Check 10] Test psa_cipher_decrypt_setup - incompatible key ARC4
[Check 11] Test psa_cipher_decrypt_setup - incorrect usage
[Check 12] Test psa_cipher_decrypt_setup - RSA public key
[Check 13] Test psa_cipher_decrypt_setup - RSA keypair
[Check 14] Test psa_cipher_decrypt_setup - EC Public key
[Check 15] Test psa_cipher_decrypt_setup - EC keypair
[Check 16] Test psa_cipher_decrypt_setup - Invalid key handle
[Check 17] Test psa_cipher_decrypt_setup - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 234 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_generate_iv
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_generate_iv 16 Byte AES
[Check 2] Test psa_cipher_generate_iv 24 Byte AES
[Check 3] Test psa_cipher_generate_iv 32 Byte AES
[Check 4] Test psa_cipher_generate_iv DES 64 bit key
[Check 5] Test psa_cipher_generate_iv DES 2-Key
[Check 6] Test psa_cipher_generate_iv DES 3-Key
[Check 7] Test psa_cipher_generate_iv AES - small iv buffer
[Check 8] Test psa_cipher_generate_iv DES - small iv buffer

TEST RESULT: PASSED

******************************************

TEST: 235 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_set_iv
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_set_iv 16 Byte AES
[Check 2] Test psa_cipher_set_iv 24 Byte AES
[Check 3] Test psa_cipher_set_iv 32 Byte AES
[Check 4] Test psa_cipher_set_iv DES 64 bit key
[Check 5] Test psa_cipher_set_iv DES 2-Key
[Check 6] Test psa_cipher_set_iv DES 3-Key
[Check 7] Test psa_cipher_set_iv AES - small iv buffer
[Check 8] Test psa_cipher_set_iv DES - small iv buffer
[Check 9] Test psa_cipher_set_iv AES - large iv buffer
[Check 10] Test psa_cipher_set_iv DES - large iv buffer

TEST RESULT: PASSED

******************************************

TEST: 236 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_update
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_update - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_update - Encrypt - AES CBC_NO_PADDING (Short in)
[Check 3] Test psa_cipher_update - Encrypt - AES CBC_PKCS7
[Check 4] Test psa_cipher_update - Encrypt - AES CBC_PKCS7 (Short input)
[Check 5] Test psa_cipher_update - Encrypt - AES CTR
[Check 6] Test psa_cipher_update - Encrypt - DES CBC (nopad)
[Check 7] Test psa_cipher_update - Encrypt - 2-key 3DE -CBC (nopad)
[Check 8] Test psa_cipher_update - Encrypt - 3-key 3DE -CBC (nopad)
[Check 9] Test psa_cipher_update - Encrypt - small output buffer size
[Check 10] Test psa_cipher_update - Decrypt - AES CBC_NO_PADDING
[Check 11] Test psa_cipher_update - Decrypt - AES CBC_NO_PADDING (Short in)
[Check 12] Test psa_cipher_update - Decrypt - AES CBC_PKCS7
[Check 13] Test psa_cipher_update - Decrypt - AES CBC_PKCS7 (Short input)
[Check 14] Test psa_cipher_update - Decrypt - AES CTR
[Check 15] Test psa_cipher_update - Decrypt - DES CBC (nopad)
[Check 16] Test psa_cipher_update - Decrypt - 2-key 3DE -CBC (nopad)
[Check 17] Test psa_cipher_update - Decrypt - 3-key 3DE -CBC (nopad)
[Check 18] Test psa_cipher_update - Decrypt - small output buffer size
[Check 19] Test psa_cipher_update without cipher setup

TEST RESULT: PASSED

******************************************

TEST: 237 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_finish - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_finish - Encrypt - AES CBC_NO_PADDING (Short in)
[Check 3] Test psa_cipher_finish - Encrypt - AES CBC_PKCS7
[Check 4] Test psa_cipher_finish - Encrypt - AES CBC_PKCS7 (Short input)
[Check 5] Test psa_cipher_finish - Encrypt - AES CTR
[Check 6] Test psa_cipher_finish - Encrypt - AES CTR (short input)
[Check 7] Test psa_cipher_finish - Encrypt - DES CBC (nopad)
[Check 8] Test psa_cipher_finish - Encrypt - 2-key 3DE -CBC (nopad)
[Check 9] Test psa_cipher_finish - Encrypt - 3-key 3DE -CBC (nopad)
[Check 10] Test psa_cipher_finish - Encrypt - small output buffer size
[Check 11] Test psa_cipher_finish - Decrypt - AES CBC_NO_PADDING
[Check 12] Test psa_cipher_finish - Decrypt - AES CBC_NO_PADDING (Short in)
[Check 13] Test psa_cipher_update - Decrypt - AES CBC_PKCS7
[Check 14] Test psa_cipher_finish - Decrypt - AES CBC_PKCS7 (Short input)
[Check 15] Test psa_cipher_finish - Decrypt - AES CTR
[Check 16] Test psa_cipher_finish - Decrypt - AES CTR (short input)
[Check 17] Test psa_cipher_finish - Decrypt - DES CBC (nopad)
[Check 18] Test psa_cipher_finish - Decrypt - 2-key 3DE -CBC (nopad)
[Check 19] Test psa_cipher_finish - Decrypt - 3-key 3DE -CBC (nopad)

TEST RESULT: PASSED

******************************************

TEST: 238 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_abort - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_abort - Encrypt - AES CBC_PKCS7
[Check 3] Test psa_cipher_abort - Encrypt - AES CTR
[Check 4] Test psa_cipher_abort - Encrypt - DES CBC (nopad)
[Check 5] Test psa_cipher_abort - Encrypt - 2-key 3DE -CBC (nopad)
[Check 6] Test psa_cipher_abort - Encrypt - 3-key 3DE -CBC (nopad)
[Check 7] Test psa_cipher_abort - Decrypt - AES CBC_NO_PADDING
[Check 8] Test psa_cipher_abort - Decrypt - AES CBC_PKCS7
[Check 9] Test psa_cipher_abort - Decrypt - AES CTR
[Check 10] Test psa_cipher_abort - Decrypt - DES CBC (nopad)
[Check 11] Test psa_cipher_abort - Decrypt - 2-key 3DE -CBC (nopad)
[Check 12] Test psa_cipher_abort - Decrypt - 3-key 3DE -CBC (nopad)
[Check 13] Test psa_cipher_update after psa_cipher_abort should fail

TEST RESULT: PASSED

******************************************

TEST: 239 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_asymmetric_encrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_asymmetric_encrypt - RSA PKCS1V15
[Check 2] Test psa_asymmetric_encrypt - RSA KEY_PAIR PKCS1V15
[Check 3] Test psa_asymmetric_encrypt - RSA OAEP SHA256
[Check 4] Test psa_asymmetric_encrypt - RSA OAEP SHA256 with label
[Check 5] Test psa_asymmetric_encrypt - RSA KEY_PAIR OAEP SHA256
[Check 6] Test psa_asymmetric_encrypt - RSA KEY_PAIR OAEP SHA256 with label
[Check 7] Test psa_asymmetric_encrypt - Small output buffer
[Check 8] Test psa_asymmetric_encrypt - Invalid algorithm
[Check 9] Test psa_asymmetric_encrypt - Invalid key type
[Check 10] Test psa_asymmetric_encrypt - Invalid usage
[Check 11] Test psa_asymmetric_encrypt - RSA PKCS1V15 - Salt
[Check 12] Test psa_asymmetric_encrypt - ECC public key
[Check 13] Test psa_asymmetric_encrypt - Invalid key handle
[Check 14] Test psa_asymmetric_encrypt - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 240 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_asymmetric_decrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_asymmetric_decrypt - RSA KEY_PAIR PKCS1V15
[Check 2] Test psa_asymmetric_decrypt - RSA KEY_PAIR OAEP SHA256
[Check 3] Test psa_asymmetric_decrypt - RSA KEY_PAIR OAEP SHA256 with label
[Check 4] Test psa_asymmetric_decrypt - Invalid key type (RSA public key)
[Check 5] Test psa_asymmetric_decrypt - Small output buffer
[Check 6] Test psa_asymmetric_decrypt - Invalid algorithm
[Check 7] Test psa_asymmetric_decrypt - Invalid key type (AES Key)
[Check 8] Test psa_asymmetric_decrypt - Invalid usage
[Check 9] Test psa_asymmetric_decrypt - RSA PKCS1V15 - Salt
[Check 10] Test psa_asymmetric_decrypt - Invalid key handle
[Check 11] Test psa_asymmetric_decrypt - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 241 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_sign_hash
[Info] Executing tests from non-secure
[Check 1] Test psa_sign_hash - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_sign_hash - RSA KEY_PAIR PKCS1V15 SHA-256
[Check 3] Test psa_sign_hash - ECDSA SECP256R1 SHA-256
[Check 4] Test psa_sign_hash - Invalid key type (RSA public key)
[Check 5] Test psa_sign_hash - Small output buffer
[Check 6] Test psa_sign_hash - Invalid algorithm
[Check 7] Test psa_sign_hash - Invalid key type (AES Key)
[Check 8] Test psa_sign_hash - Invalid usage
[Check 9] Test psa_sign_hash - Wrong hash size
[Check 10] Test psa_sign_hash - Invalid key handle
[Check 11] Test psa_sign_hash - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 242 | DESCRIPTION: Testing crypto asymmetric APIs | UT: psa_verify_hash
[Info] Executing tests from non-secure
[Check 1] Test psa_verify_hash - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_verify_hash - RSA KEY_PAIR PKCS1V15 SHA-256
[Check 3] Test psa_verify_hash - ECDSA KEY_PAIR SECP256R1 SHA-256
[Check 4] Test psa_verify_hash - EC public key
[Check 5] Test psa_verify_hash - RSA public key
[Check 6] Test psa_verify_hash - Small output buffer
[Check 7] Test psa_verify_hash - Invalid algorithm
[Check 8] Test psa_verify_hash - Invalid key type (AES Key)
[Check 9] Test psa_verify_hash - Invalid usage
[Check 10] Test psa_verify_hash - Wrong hash size
[Check 11] Test psa_verify_hash - Wrong signature
[Check 12] Test psa_verify_hash - Wrong signature size
[Check 13] Test psa_verify_hash - Invalid key handle
[Check 14] Test psa_verify_hash - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 243 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_raw_key_agreement
[Info] Executing tests from non-secure
[Check 1] Test psa_raw_key_agreement - ECDH SECP256R1
[Check 2] Test psa_raw_key_agreement - Small buffer size
[Check 3] Test psa_raw_key_agreement - ECDH SECP384R1
[Check 4] Test psa_raw_key_agreement - Invalid usage
[Check 5] Test psa_raw_key_agreement - Unknown KDF
[Check 6] Test psa_raw_key_agreement - Not a key agreement alg
[Check 7] Test psa_raw_key_agreement - Public key on different curve
[Check 8] Test psa_raw_key_agreement - Public key instead of private key
[Check 9] Test psa_raw_key_agreement - Invalid key handle
[Check 10] Test psa_raw_key_agreement - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 244 | DESCRIPTION: Testing crypto key management APIs | UT: psa_copy_key
[Info] Executing tests from non-secure
[Check 1] Test psa_copy_key - 2048 RSA public key
[Check 2] Test psa_copy_key - RSA 2048 keypair
[Check 3] Test psa_copy_key - Incompatible target policy(source and target)
[Check 4] Test psa_copy_key - source key with no export usage
[Check 5] Test psa_copy_key - DES 64 bit key
[Check 6] Test psa_copy_key - Triple DES 2-Key
[Check 7] Test psa_copy_key - Triple DES 3-Key
[Check 8] Test psa_copy_key - EC Public key
[Check 9] Test psa_copy_key - EC keypair

TEST RESULT: PASSED

******************************************

TEST: 245 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_clone
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_clone - MD5 algorithm
[Check 2] Test psa_hash_clone - RIPEMD160 algorithm
[Check 3] Test psa_hash_clone - SHA1 algorithm
[Check 4] Test psa_hash_clone - SHA224 algorithm
[Check 5] Test psa_hash_clone - SHA256 algorithm
[Check 6] Test psa_hash_clone - SHA384 algorithm
[Check 7] Test psa_hash_clone - SHA512 algorithm
[Check 8] Test psa_hash_clone - from an inactive source operation
[Check 9] Test psa_hash_clone - on an active target operation

TEST RESULT: PASSED

******************************************

TEST: 246 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_compute
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_compute HMAC SHA 224
[Check 2] Test psa_mac_compute - Incompactible HMAC for CMAC
[Check 3] Test psa_mac_compute - Invalid usage
[Check 4] Test psa_mac_compute - truncated MAC too small
[Check 5] Test psa_mac_compute - truncated MAC too large
[Check 6] Test psa_mac_compute - bad algorithm (unknown MAC algorithm)
[Check 7] Test psa_mac_compute HMAC SHA 256
[Check 8] Test psa_mac_compute HMAC SHA 512
[Check 9] Test psa_mac_compute HMAC SHA 224 (truncated to 8 Byte)
[Check 10] Test psa_mac_compute CMAC AES 128
[Check 11] Test psa_mac_compute small size buffer
[Check 12] Test psa_mac_compute - Invalid key type

TEST RESULT: PASSED

******************************************

TEST: 247 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_verify
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_verify HMAC SHA 224
[Check 2] Test psa_mac_verify HMAC SHA 256
[Check 3] Test psa_mac_verify - Incompactible HMAC for CMAC
[Check 4] Test psa_mac_verify - Invalid usage
[Check 5] Test psa_mac_verify - Truncated MAC too large
[Check 6] Test psa_mac_verify - Truncated MAC too small
[Check 7] Test psa_mac_verify - bad algorithm (unknown MAC algorithm)
[Check 8] Test psa_mac_verify HMAC SHA 512
[Check 9] Test psa_mac_verify HMAC SHA 224 (truncated to 8 Byte)
[Check 10] Test psa_mac_verify CMAC AES 128
[Check 11] Test psa_mac_verify - Invalid key type
[Check 12] Test psa_mac_verify small size buffer
[Check 13] Test psa_mac_verify incorrect expected MAC

TEST RESULT: PASSED

******************************************

TEST: 248 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_encrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_encrypt - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_encrypt - Encrypt - AES CBC_NO_PADDING (Short input)
[Check 3] Test psa_cipher_encrypt - Encrypt - AES CBC_PKCS7
[Check 4] Test psa_cipher_encrypt - Encrypt - AES CBC_PKCS7 (Short input)
[Check 5] Test psa_cipher_encrypt - Encrypt - AES CTR
[Check 6] Test psa_cipher_encrypt - Encrypt - AES CTR (short input)
[Check 7] Test psa_cipher_encrypt - Encrypt - DES CBC (nopad)
[Check 8] Test psa_cipher_encrypt - Encrypt - 2-key 3DE -CBC (nopad)
[Check 9] Test psa_cipher_encrypt - Encrypt - 3-key 3DE -CBC (nopad)
[Check 10] Test psa_cipher_encrypt - small output buffer size
[Check 11] Test psa_cipher_encrypt - Decrypt - AES CBC_NO_PADDING

TEST RESULT: PASSED

******************************************

TEST: 249 | DESCRIPTION: Testing crypto symmetric cipher APIs | UT: psa_cipher_decrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_cipher_decrypt - Encrypt - AES CBC_NO_PADDING
[Check 2] Test psa_cipher_decrypt - Decrypt - AES CBC_NO_PADDING
[Check 3] Test psa_cipher_decrypt - Decrypt - AES CBC_NO_PADDING (Short input)
[Check 4] Test psa_cipher_decrypt - Decrypt - AES CBC_NO_PADDING
[Check 5] Test psa_cipher_decrypt - Decrypt - AES CBC_PKCS7
[Check 6] Test psa_cipher_decrypt - Decrypt - AES CBC_PKCS7 (Short input)
[Check 7] Test psa_cipher_decrypt - Decrypt - AES CTR
[Check 8] Test psa_cipher_decrypt - Decrypt - DES CBC (nopad)
[Check 9] Test psa_cipher_decrypt - Decrypt - 2-key 3DE -CBC (nopad)
[Check 10] Test psa_cipher_decrypt - 3-key 3DE -CBC (nopad)

TEST RESULT: PASSED

******************************************

TEST: 250 | DESCRIPTION: Testing crypto key management APIs | UT: psa_sign_message
[Info] Executing tests from non-secure
[Check 1] Test psa_sign_message - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_sign_message - ECDSA SECP256R1 SHA-256
[Check 3] Test psa_sign_message - Invalid key type (RSA public key)
[Check 4] Test psa_sign_message - Small output buffer
[Check 5] Test psa_sign_message - Invalid algorithm
[Check 6] Test psa_sign_message - Invalid key type (AES Key)
[Check 7] Test psa_sign_message - Invalid usage
[Check 8] Test psa_sign_message - Mismatch key type and Algorithm
[Check 9] Test psa_sign_message - Alg mismatch in key and API call
[Check 10] Test psa_sign_message - Invalid key handle
[Check 11] Test psa_sign_message - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 251 | DESCRIPTION: Testing crypto key management APIs | UT: psa_verify_message
[Info] Executing tests from non-secure
[Check 1] Test psa_verify_message - RSA KEY_PAIR PKCS1V15 RAW
[Check 2] Test psa_verify_message - RSA Public Key PKCS1V15 RAW
[Check 3] Test psa_verify_message - RSA KEY_PAIR PKCS1V15 SHA-256
[Check 4] Test psa_verify_message - ECDSA KEY_PAIR SECP256R1 SHA-256
[Check 5] Test psa_verify_message - ECDSA Public Key SECP256R1 SHA-256
[Check 6] Test psa_verify_message - Small output buffer
[Check 7] Test psa_verify_message - Invalid algorithm
[Check 8] Test psa_verify_message - Invalid key type (AES Key)
[Check 9] Test psa_verify_message - Invalid usage
[Check 10] Test psa_verify_message - Wrong message size
[Check 11] Test psa_verify_message - Wrong signature
[Check 12] Test psa_verify_message - Wrong signature size
[Check 13] Test psa_verify_message - Invalid key handle
[Check 14] Test psa_verify_message - Zero as key handle

TEST RESULT: PASSED

******************************************

TEST: 252 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_encrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_encrypt_setup - CCM - AES
[Check 2] Test psa_aead_encrypt_setup - CCM - AES - Tag length = 4
[Check 3] Test psa_aead_encrypt_setup - CCM - AES - Mismatched tag length
[Check 4] Test psa_aead_encrypt_setup - CCM - AES - Default Tag length
[Check 5] Test psa_aead_encrypt_setup - GCM - AES
[Check 6] Test psa_aead_encrypt_setup - CCM - DES Invalid key
[Check 7] Test psa_aead_encrypt_setup - Invalid usage flag

TEST RESULT: PASSED

******************************************

TEST: 253 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_decrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_decrypt_setup - CCM - AES
[Check 2] Test psa_aead_decrypt_setup - CCM - AES - Tag length = 4
[Check 3] Test psa_aead_decrypt_setup - CCM - AES - Mismatched tag length
[Check 4] Test psa_aead_decrypt_setup - CCM - AES - Default Tag length
[Check 5] Test psa_aead_decrypt_setup - GCM - AES
[Check 6] Test psa_aead_decrypt_setup - CCM - DES Invalid key
[Check 7] Test psa_aead_decrypt_setup - Invalid usage flag

TEST RESULT: PASSED

******************************************

TEST: 254 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_generate_nonce
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_generate_nonce - CCM
[Check 2] Test psa_aead_generate_nonce - CCM - Tag length = 4
[Check 3] Test psa_aead_generate_nonce - CCM - Small buffer size
[Check 4] Test psa_aead_generate_nonce - CCM - Uninitialized operation
[Check 5] Test psa_aead_generate_nonce - CCM - Decrypt operation
[Check 6] Test psa_aead_generate_nonce - GCM
[Check 7] Test psa_aead_generate_nonce - GCM - Decrypt operation

TEST RESULT: PASSED

******************************************

TEST: 255 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_set_nonce
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_set_nonce - Encrypt - CCM
[Check 2] Test psa_aead_set_nonce - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_set_nonce - Encrypt - CCM - Small nonce size
[Check 4] Test psa_aead_set_nonce - Encrypt - CCM - Large nonce size
[Check 5] Test psa_aead_set_nonce - Encrypt - CCM - Invalid operation state
[Check 6] Test psa_aead_set_nonce - Encrypt - GCM
[Check 7] Test psa_aead_set_nonce - Decrypt - CCM
[Check 8] Test psa_aead_set_nonce - Decrypt - CCM - Tag length = 4
[Check 9] Test psa_aead_set_nonce - Decrypt - CCM - Small nonce size
[Check 10] Test psa_aead_set_nonce - Decrypt - CCM - Large nonce size
[Check 11] Test psa_aead_set_nonce - Decrypt - CCM - Invalid operation state
[Check 12] Test psa_aead_set_nonce - Decrypt - GCM

TEST RESULT: PASSED

******************************************

TEST: 256 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_set_lengths
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_set_lengths - Encrypt - CCM
[Check 2] Test psa_aead_set_lengths - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_set_lengths - Encrypt - CCM - Zero ad_length
[Check 4] Test psa_aead_set_lengths - Encrypt - CCM - Zero plaintext_length
[Check 5] Test psa_aead_set_lengths - Encrypt - CCM - Invalid operation state
[Check 6] Test psa_aead_set_lengths - Encrypt - GCM
[Check 7] Test psa_aead_set_lengths - Decrypt - CCM
[Check 8] Test psa_aead_set_lengths - Decrypt - CCM - Tag length = 4
[Check 9] Test psa_aead_set_lengths - Decrypt - CCM - Zero ad_length
[Check 10] Test psa_aead_set_lengths - Decrypt - CCM - Zero plaintext_length
[Check 11] Test psa_aead_set_lengths - Decrypt - CCM - Invalid operation state
[Check 12] Test psa_aead_set_lengths - Decrypt - GCM

TEST RESULT: PASSED

******************************************

TEST: 257 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_update_ad
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_update_ad - Encrypt - CCM
[Check 2] Test psa_aead_update_ad - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_update_ad - Encrypt - CCM - Zero ad_length
[Check 4] Test psa_aead_update_ad - Encrypt - CCM - Zero plaintext_length
[Check 5] Test psa_aead_update_ad - Encrypt - CCM - Invalid operation state
[Check 6] Test psa_aead_update_ad - Encrypt - CCM - Overflow input length
[Check 7] Test psa_aead_update_ad - Decrypt - CCM
[Check 8] Test psa_aead_update_ad - Decrypt - CCM - Tag length = 4
[Check 9] Test psa_aead_update_ad - Decrypt - CCM - Zero ad_length
[Check 10] Test psa_aead_update_ad - Decrypt - CCM - Zero plaintext_length
[Check 11] Test psa_aead_update_ad - Decrypt - CCM - Invalid operation state
[Check 12] Test psa_aead_update_ad - Decrypt - CCM - Overflow input length

TEST RESULT: PASSED

******************************************

TEST: 258 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_update
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_update - Encrypt - CCM
[Check 2] Test psa_aead_update - Encrypt - CCM - Tag length = 4
[Check 3] Test psa_aead_update - Encrypt - CCM - Zero ad_length
[Check 4] Test psa_aead_update - Encrypt - CCM - Zero plaintext_length
[Check 5] Test psa_aead_update - Encrypt - CCM - Small buffer size
[Check 6] Test psa_aead_update - Encrypt - CCM - Less add data than specified
[Check 7] Test psa_aead_update - Encrypt - CCM - Overflow input length
[Check 8] Test psa_aead_update - Encrypt - CCM - Invalid operation state
[Check 9] Test psa_aead_update - Decrypt - CCM
[Check 10] Test psa_aead_update - Decrypt - CCM - Tag length = 4
[Check 11] Test psa_aead_update - Decrypt - CCM - Zero ad_length
[Check 12] Test psa_aead_update - Decrypt - CCM - Zero plaintext_length
[Check 13] Test psa_aead_update - Decrypt - CCM - Small buffer size
[Check 14] Test psa_aead_update - Decrypt - Less add data than specified
[Check 15] Test psa_aead_update - Decrypt - CCM - Overflow input length
[Check 16] Test psa_aead_update - Decrypt - CCM - Invalid operation state

TEST RESULT: PASSED

******************************************

TEST: 259 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_finish - AES-CCM
[Check 2] Test psa_aead_finish - AES-CCM 24 bytes Tag length = 4
[Check 3] Test psa_aead_finish - Small buffer size
[Check 4] Test psa_aead_finish - Input length is less than plaintext length
[Check 5] Test psa_aead_finish - GCM - 16B AES - 12B Nonce & 12B additional data

TEST RESULT: PASSED

******************************************

TEST: 260 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_abort - Encrypt - CCM - AES
[Check 2] Test psa_aead_abort - Encrypt - GCM - AES
[Check 3] Test psa_aead_abort - Decrypt - CCM - AES
[Check 4] Test psa_aead_abort - Decrypt - GCM - AES
[Check 5] Test psa_aead_abort with all initializations

TEST RESULT: PASSED

******************************************

TEST: 261 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_verify
[Info] Executing tests from non-secure
[Check 1] Test psa_aead_verify - AES-CCM
[Check 2] Test psa_aead_verify - AES-CCM 24 bytes Tag length = 4
[Check 3] Test psa_aead_verify - Small buffer size
[Check 4] Test psa_aead_verify - Input length is less than plaintext length
[Check 5] Test psa_aead_verify - GCM - 16B AES - 12B Nounce & 12B addi data

TEST RESULT: PASSED

******************************************

************ Crypto Suite Report **********
TOTAL TESTS     : 61
TOTAL PASSED    : 61
TOTAL SIM ERROR : 0
TOTAL FAILED    : 0
TOTAL SKIPPED   : 0
******************************************

Entering standby.. 

#echo
psa-iat-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-iat-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Attestation Suite
******************************************

TEST: 601 | DESCRIPTION: Testing attestation initial attestation APIs | UT: psa_initial_attestation
[Info] Executing tests from non-secure
[Check 1] Test psa_initial_attestation_get_token with Challenge 32
[Check 2] Test psa_initial_attestation_get_token with Challenge 48
[Check 3] Test psa_initial_attestation_get_token with Challenge 64
[Check 4] Test psa_initial_attestation_get_token with zero challenge size
[Check 5] Test psa_initial_attestation_get_token with small challenge size
[Check 6] Test psa_initial_attestation_get_token with invalid challenge size
[Check 7] Test psa_initial_attestation_get_token with large challenge size
[   87.817678] Arm TSTEE: invoke_func rpc status: -6
call():229 failed to invoke command: 22
[Check 8] Test psa_initial_attestation_get_token with zero as token size
[Check 9] Test psa_initial_attestation_get_token with small token size
[Check 10] Test psa_initial_attestation_get_token_size with Challenge 32
[Check 11] Test psa_initial_attestation_get_token_size with Challenge 48
[Check 12] Test psa_initial_attestation_get_token_size with Challenge 64
[Check 13] Test psa_initial_attestation_get_token_size with zero challenge size
[Check 14] Test psa_initial_attestation_get_token_size with small challenge size
[Check 15] Test psa_initial_attestation_get_token_size with invalid challenge size
[Check 16] Test psa_initial_attestation_get_token_size with large challenge size

TEST RESULT: PASSED

******************************************

************ Attestation Suite Report **********
TOTAL TESTS     : 1
TOTAL PASSED    : 1
TOTAL SIM ERROR : 0
TOTAL FAILED    : 0
TOTAL SKIPPED   : 0
******************************************

Entering standby.. 

#echo
psa-its-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-its-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Storage Suite
******************************************

TEST: 401 | DESCRIPTION: UID not found check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call get API for UID 6 which is not set
[Check 2] Call get_info API for UID 6 which is not set
[Check 3] Call remove API for UID 6 which is not set
[Check 4] Call get API for UID 6 which is removed
[Check 5] Call get_info API for UID 6 which is removed
[Check 6] Call remove API for UID 6 which is removed
Set storage for UID 6
[Check 7] Call get API for different UID 5
[Check 8] Call get_info API for different UID 5
[Check 9] Call remove API for different UID 5

TEST RESULT: PASSED

******************************************

TEST: 402 | DESCRIPTION: Write once error check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Update the flag of UID 1 with WRITE_ONCE flag
[Check 2] Try to remove the UID 1 having WRITE_ONCE flag
[Check 3] Create a new UID 2 with WRITE_ONCE flag
[Check 4] Try to remove the UID 2 having WRITE_ONCE flag
[Check 5] Try to change the length of write_once UID 2
[Check 6] Check UID removal still fails
[Check 7] Try to change the WRITE_ONCE flag to None for UID 2
[Check 8] Check UID removal still fails

TEST RESULT: PASSED

******************************************

TEST: 403 | DESCRIPTION: Insufficient space check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Overload storage space
UID 13 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 13 set failed due to insufficient space
Remove all registered UIDs

TEST RESULT: PASSED

******************************************

TEST: 404 | DESCRIPTION: Data Consistency check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call set API with reduced length - TEST_BUFF_SIZE/2
[Check 2] Call get API with default length - TEST_BUFF_SIZE

TEST RESULT: PASSED

******************************************

TEST: 405 | DESCRIPTION: Success scenarios check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Set UID with data length zero and call storage APIs
[Check 2] Resetting the length check

TEST RESULT: PASSED

******************************************

TEST: 406 | DESCRIPTION: Check for storage create flags | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call set API with flag - PSA_STORAGE_FLAG_NONE
[Check 2] Call set API with flag - PSA_STORAGE_FLAG_NO_CONFIDENTIALITY
[Check 3] Call set API with flag - PSA_STORAGE_FLAG_NO_REPLAY_PROTECTION

TEST RESULT: PASSED

******************************************

TEST: 407 | DESCRIPTION: Incorrect Size check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
Create a valid Storage - TEST_BUFF_SIZE/2
Increase the length of storage - TEST_BUFF_SIZE
[Check 1] Call get API with old length - TEST_BUFF_SIZE/2
[Check 2] Call get API with old length - TEST_BUFF_SIZE/4
Decrease the length of storage - TEST_BUFF_SIZE/4
[Check 3] Call get API with old length - TEST_BUFF_SIZE/2
[Check 4] Call get API with old length - TEST_BUFF_SIZE
[Check 5] Call get API with valid length - TEST_BUFF_SIZE/4

TEST RESULT: PASSED

******************************************

TEST: 408 | DESCRIPTION: Invalid offset check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Try to access data with varying valid offset
[Check 2] Try to access data with varying invalid offset

TEST RESULT: PASSED

******************************************

TEST: 409 | DESCRIPTION: Invalid Arguments check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call set API with NULL pointer and data length 0
[Check 2] Call get API with NULL read buffer and data length 0
[Check 3] Remove the UID
[Check 4] Call get_info API to verify UID removed
[Check 5] Create UID with zero data_len and valid write buffer
[Check 8] Call get API with NULL read buffer and data length 0
[Check 9] Increase the length

TEST RESULT: PASSED

******************************************

TEST: 410 | DESCRIPTION: UID value zero check | UT: ITS
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Creating storage with UID 0 should fail
[Check 2] Get_info for UID 0 should fail
[Check 3] Removing storage with UID 0 should fail

TEST RESULT: PASSED

******************************************

************ Storage Suite Report **********
TOTAL TESTS     : 10
TOTAL PASSED    : 10
TOTAL SIM ERROR : 0
TOTAL FAILED    : 0
TOTAL SKIPPED   : 0
******************************************

Entering standby.. 

#echo
psa-ps-api-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/psa-ps-api-test

***** PSA Architecture Test Suite - Version 1.4 *****

Running.. Storage Suite
******************************************

TEST: 401 | DESCRIPTION: UID not found check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call get API for UID 6 which is not set
[Check 2] Call get_info API for UID 6 which is not set
[Check 3] Call remove API for UID 6 which is not set
[Check 4] Call get API for UID 6 which is removed
[Check 5] Call get_info API for UID 6 which is removed
[Check 6] Call remove API for UID 6 which is removed
Set storage for UID 6
[Check 7] Call get API for different UID 5
[Check 8] Call get_info API for different UID 5
[Check 9] Call remove API for different UID 5

TEST RESULT: PASSED

******************************************

TEST: 402 | DESCRIPTION: Write once error check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Update the flag of UID 1 with WRITE_ONCE flag
[Check 2] Try to remove the UID 1 having WRITE_ONCE flag
[Check 3] Create a new UID 2 with WRITE_ONCE flag
[Check 4] Try to remove the UID 2 having WRITE_ONCE flag
[Check 5] Try to change the length of write_once UID 2
[Check 6] Check UID removal still fails
[Check 7] Try to change the WRITE_ONCE flag to None for UID 2
[Check 8] Check UID removal still fails

TEST RESULT: PASSED

******************************************

TEST: 403 | DESCRIPTION: Insufficient space check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Overload storage space
UID 13 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 13 set failed due to insufficient space
Remove all registered UIDs

TEST RESULT: PASSED

******************************************

TEST: 404 | DESCRIPTION: Data Consistency check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call set API with reduced length - TEST_BUFF_SIZE/2
[Check 2] Call get API with default length - TEST_BUFF_SIZE

TEST RESULT: PASSED

******************************************

TEST: 405 | DESCRIPTION: Success scenarios check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Set UID with data length zero and call storage APIs
[Check 2] Resetting the length check

TEST RESULT: PASSED

******************************************

TEST: 406 | DESCRIPTION: Check for storage create flags | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call set API with flag - PSA_STORAGE_FLAG_NONE
[Check 2] Call set API with flag - PSA_STORAGE_FLAG_NO_CONFIDENTIALITY
[Check 3] Call set API with flag - PSA_STORAGE_FLAG_NO_REPLAY_PROTECTION

TEST RESULT: PASSED

******************************************

TEST: 407 | DESCRIPTION: Incorrect Size check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Create a valid Storage - TEST_BUFF_SIZE/2
Increase the length of storage - TEST_BUFF_SIZE
[Check 1] Call get API with old length - TEST_BUFF_SIZE/2
[Check 2] Call get API with old length - TEST_BUFF_SIZE/4
Decrease the length of storage - TEST_BUFF_SIZE/4
[Check 3] Call get API with old length - TEST_BUFF_SIZE/2
[Check 4] Call get API with old length - TEST_BUFF_SIZE
[Check 5] Call get API with valid length - TEST_BUFF_SIZE/4

TEST RESULT: PASSED

******************************************

TEST: 408 | DESCRIPTION: Invalid offset check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Try to access data with varying valid offset
[Check 2] Try to access data with varying invalid offset

TEST RESULT: PASSED

******************************************

TEST: 409 | DESCRIPTION: Invalid Arguments check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Call set API with NULL pointer and data length 0
[Check 2] Call get API with NULL read buffer and data length 0
[Check 3] Remove the UID
[Check 4] Call get_info API to verify UID removed
[Check 5] Create UID with zero data_len and valid write buffer
[Check 8] Call get API with NULL read buffer and data length 0
[Check 9] Increase the length

TEST RESULT: PASSED

******************************************

TEST: 410 | DESCRIPTION: UID value zero check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
[Check 1] Creating storage with UID 0 should fail
[Check 2] Get_info for UID 0 should fail
[Check 3] Removing storage with UID 0 should fail

TEST RESULT: PASSED

******************************************

TEST: 411 | DESCRIPTION: Optional APIs: UID not found check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 412 | DESCRIPTION: Optional APIs: Invalid arguments and offset invalid | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 413 | DESCRIPTION: Set_Extended and Create api : Success | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 414 | DESCRIPTION: Optional APIs not supported check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Optional PS APIs are not supported.
[Check 1] Call to create API should fail as API not supported
	Failed at Checkpoint: 1
	Actual: 0
	Expected: -134

TEST RESULT: FAILED (Error Code=0x1)

******************************************

TEST: 415 | DESCRIPTION: Create API write_once flag value check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs are not supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 416 | DESCRIPTION: Storage assest capacity modification check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs not are supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

TEST: 417 | DESCRIPTION: Storage assest capacity modification check | UT: PS
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs not are supported.

TEST RESULT: SKIPPED (Skip Code=0x2b)

******************************************

************ Storage Suite Report **********
TOTAL TESTS     : 17
TOTAL PASSED    : 10
TOTAL SIM ERROR : 0
TOTAL FAILED    : 1
TOTAL SKIPPED   : 6
******************************************

Entering standby.. 

#echo
ts-demo
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/trusted-services/tools/b-test/install/arm-linux/bin/ts-demo

Demonstrates use of trusted services from an application
---------------------------------------------------------
A client requests a set of crypto operations performed by
the Crypto service.  Key storage for persistent keys is
provided by the Secure Storage service via the ITS client.

Generating random bytes length: 1
	Operation successful
	Random bytes: 
		B2
Generating random bytes length: 7
	Operation successful
	Random bytes: 
		68 65 A3 E0 ED 65 D9
Generating random bytes length: 128
	Operation successful
	Random bytes: 
		9E DB AD F2 8F 60 BB 22
		10 1E 5E A0 36 D1 F8 B3
		89 B5 CB DF EC C8 9B D1
		6B E6 04 70 3A B4 AE 92
		8F 86 DC F8 A1 6A 63 29
		71 31 C4 82 9C 30 FB 45
		62 B5 E1 8C 7E 15 6B F7
		52 9F 1E 1C 2C 8E FF A2
		DB A8 80 E3 EA 91 F5 81
		6E FC A9 CC 7E AB 3E 2A
		C7 39 B3 ED BD ED 2B D7
		DC 4C 4B AE 02 EA 08 F9
		F7 32 CC B0 3D 08 20 4A
		AA 5B FF 80 76 FE 5F BC
		DE A8 C2 41 BB AF 2C 8E
		54 C5 55 02 37 47 08 0D
Generating ECC signing key
	Operation successful
Signing message: "The quick brown fox" using key: 256
	Operation successful
	Signature bytes: 
		E4 6A 16 7E 4A 73 D2 9E
		D8 C2 BD 37 DB E7 E3 A6
		FF 26 88 9E D6 7F B0 A0
		48 65 99 34 42 CA 20 28
		6B E8 92 5D 70 2B 0A 96
		18 0D 31 16 80 7E DB CC
		C8 C1 4F D8 7F 17 8B 98
		01 EC 44 85 DE 15 35 49
Verify signature using original message: "The quick brown fox"
	Operation successful
Verify signature using modified message: "!he quick brown fox"
	Successfully detected modified message
Signing message: "jumps over the lazy dog" using key: 256
	Operation successful
	Signature bytes: 
		58 3B A7 8A 4F F9 4A FC
		B2 91 AB 5D 1F 82 78 07
		5A F9 BE AC 8A A7 43 CB
		FB 97 D2 57 BD CE 3A 17
		5B FA BB 35 4C 34 D2 D2
		DF AE 8E 42 C0 46 FF 58
		A3 0D B2 99 72 B9 9A 1D
		F1 CE 93 96 20 D5 AB 3B
Verify signature using original message: "jumps over the lazy dog"
	Operation successful
Verify signature using modified message: "!umps over the lazy dog"
	Successfully detected modified message
Generating RSA encryption key
	Operation successful
Encrypting message: "Top secret" using RSA key: 257
	Operation successful
	Encrypted message: 
		70 E8 7B DD B2 06 B0 4A
		FB 33 BD BE 2C 3A 0D 0A
		50 22 BF F9 37 A1 CA 22
		22 C1 46 12 24 27 2F BC
Decrypting message using RSA key: 257
	Operation successful
	Decrypted message: "Top secret"
Exporting public key: 256
	Operation successful
	Public key bytes: 
		04 E3 E7 9C FF B9 C2 39
		F8 F4 82 E2 91 DD CE B4
		4D 03 70 AB E2 E5 14 93
		E7 03 65 21 4E D2 CC B9
		92 BD 0E 57 7D BB 27 11
		06 E5 45 2E A4 FD 19 7D
		2D EA 9C BA 6D E8 B8 E4
		D8 46 16 23 92 7C 7C DA
		7A
Destroying signing key: 256
	Operation successful
Destroying encryption key: 257
	Operation successful

#echo

Config 4: SmmGW

Build command
MEASURED_BOOT=n SPMC_TESTS=n TS_SMM_GATEWAY=y TS_UEFI_TESTS=y DEFAULT_SP_CONFIG=default-sp SP_PACKAGING_METHOD=fip
Setup steps after boot

/mnt/host/out/linux-arm-ffa-user/load_module.sh

Test results
uefi-test
#
#LD_PRELOAD=/mnt/host/out/ts-install/arm-linux/lib/libts.so /mnt/host/out/ts-install/arm-linux/bin/uefi-test -v
TEST(SmmVariableAttackTests, getCheckPropertyWithMaxSizeName) - 3010 ms
TEST(SmmVariableAttackTests, getCheckPropertyWithOversizeName) - 1300 ms
TEST(SmmVariableAttackTests, setCheckPropertyWithMaxSizeName) - 1261 ms
TEST(SmmVariableAttackTests, setCheckPropertyWithOversizeName) - 1853 ms
TEST(SmmVariableAttackTests, enumerateWithSizeMaxNameSize) - 5600 ms
TEST(SmmVariableAttackTests, enumerateWithOversizeName) - 1200 ms
TEST(SmmVariableAttackTests, setAndGetWithSizeMaxNameSize) - 2649 ms
TEST(SmmVariableAttackTests, setAndGetWithOversizeName) - 2777 ms
TEST(SmmVariableAttackTests, setWithSizeMaxNameSize) - 1284 ms
TEST(SmmVariableAttackTests, setWithOversizeName) - 1300 ms
TEST(SmmVariableAttackTests, setWithSizeMaxDataSize) - 1281 ms
TEST(SmmVariableAttackTests, setWithOversizeData) - 1311 ms
TEST(SmmVariableServiceTests, checkMaxVariablePayload) - 1210 ms
TEST(SmmVariableServiceTests, setSizeConstraint) - 4905 ms
TEST(SmmVariableServiceTests, enumerateStoreContents) - 28700 ms
TEST(SmmVariableServiceTests, getVarSizeNv) - 5513 ms
TEST(SmmVariableServiceTests, getVarSize) - 2600 ms
TEST(SmmVariableServiceTests, setAndGetNv) - 10300 ms
TEST(SmmVariableServiceTests, setAndGet) - 3800 ms

OK (19 tests, 19 ran, 141 checks, 0 ignored, 0 filtered out, 87813 ms)


#echo
Last Author
gyuri-szing
Last Edited
Oct 17 2023, 9:15 AM

Event Timeline

These Arambol Beach Escorts make men talent heaven as well as deliver entertainment like they have got never had before So in case you are inclined to apply it slow with our hot Escorts to information newfound romance, will make fine that each one your deliver as well as fantasies are glad.

Do you choice unlimited fun or desire Vikaspuri Call Girls Service Whatsapp Number? Just pick out our super Vikaspuri Female Call Girls corporation and reserve high profile Call Girls in proper away

Feel confident that you will obtain 100% satisfaction in every experience. Aerocity Escorts Service That is just how our beautiful ladies are obtaining even more appeal in the home entertainment sector. The lovely call girls in Aerocity are here to supply superb memories of your stay in the funding city. Do not miss this possibility of spending quality time with our young as well as mature companions in Aerocity.

gyuri-szing changed the edit policy from "Custom Policy" to "Trusted Services (Project)".Jan 24 2024, 12:26 PM