Version 39 vs 40
Version 39 vs 40
Edits
Edits
- Edit by balintdobszay, Version 40
- Jul 4 2022 12:08 PM
- Edit by balintdobszay, Version 39
- Apr 22 2022 2:11 PM
« Previous Change | Next Change » |
Edit Older Version 39... | Edit Older Version 40... |
Content Changes
Content Changes
= OP-TEE SPMC implementation
== Introduction
==== OP-TEE SPMC implementation
This document describes the OP-TEE SPMC (Secure Partition Manager Core) implementation. This implementation is used to support the Trusted Services PSA Secure Partitions (SPs). The PSA SPs are implemented based on the Arm FF-A specification. The OP-TEE SPMC can be used as a reference S-EL1 implementation and the Trusted Service can be used a reference S-EL0 SP implementations.
==== FF-A
Arm Firmware Framework for Arm A-profile (FF-A) is a framework designed to standardize the communication between the various software images.
Including the communication between the various software images in the Secure world and Normal world. The current release of the OP-TEE SPMC is based around the [FF-A v1.0 spec](https://developer.arm.com/documentation/den0077/latest).
==== OP-TEE
OP-TEE is an open source Trusted Execution Environment (TEE) implementing the Arm TrustZone technology. More information can be found at [readthedocs](https://optee.readthedocs.io/en/latest/). OP-TEE can run both as a S-EL1 SP or as the S-EL1 SPMC.
This document describes OP-TEE as a S-EL1 SPMC. The current mainline OP-TEE version can be found [here](https://github.com/OP-TEE/optee_os).
==== Trusted Services
The Trusted Services project provides a framework for developing and deploying device Root of Trust (RoT) services across a range of secure processing environments such as those provided by OP-TEE and Hafnium.
More information about Trusted Services can be found at [Trusted-Services](https://trusted-services.readthedocs.io/en/latest/).
== Current Status
Limited support for OP-TEE SPMC aligning with FF-A 1.0 is available in mainline and OP-TEE v3.17.
Complete support for FF-A 1.0 and TS is planned for upcoming releases. See below for status.
==== SPMC status
OP-TEE mainline SPMC FF-A status:
| Description | Status |
|-------------------|--------------------------|
| SP loading | Supported |
| SP messaging | Supported |
| SP manifest files | Partially supported [^1] |
| Memory management | Supported |
| Interrupts | Not supported |
[^1]: Only mapping device memory regions is supported.
OP-TEE mainline SPMC FF-A messages status:
| Name | Status |
|--------------------------|--------------------------|
| FFA_ERROR | Supported |
| FFA_SUCCESS | Supported |
| FFA_INTERRUPT | Not supported |
| FFA_VERSION | Supported |
| FFA_FEATURES | Supported |
| FFA_RX_RELEASE | Supported |
| FFA_RXTX_MAP | Supported |
| FFA_RXTX_UNMAP | Supported |
| FFA_PARTITION_INFO_GET | Supported |
| FFA_ID_GET | Supported |
| FFA_MSG_WAIT | Supported |
| FFA_YIELD | Not supported |
| FFA_RUN | Not supported |
| FFA_NORMAL_WORLD_RESUME | Not supported |
| FFA_MSG_SEND | Not supported |
| FFA_MSG_SEND_DIRECT_REQ | Supported |
| FFA_MSG_SEND_DIRECT_RESP | Supported |
| FFA_MSG_POLL | Not supported |
| FFA_MEM_DONATE | Not supported |
| FFA_MEM_LEND | Not supported |
| FFA_MEM_SHARE | Partially supported [^2] |
| FFA_MEM_RETRIEVE_REQ | Supported |
| FFA_MEM_RETRIEVE_RESP | Supported |
| FFA_MEM_RELINQUISH | Supported |
| FFA_MEM_RECLAIM | Supported |
[^2]: Sharing device memory is not yet supported.
==== Trusted Services status
Currently not all Trusted Services functionality is supported when using the OP-TEE SPMC v3.17. We are planning to support all functionality over time.
Trusted Services SP support status:
| Name | Status |
|--------------------------|------------------------|
| internal-trusted-storage | Supported |
| protected-storage | Supported |
| crypto | Supported |
| attestation | Supported |
| smm-gateway | Not yet supported [^3] |
[^3]: Memory regions in the SP manifest are not mapped.
== Build
The build process is based on the [OP-TEE build process](https://optee.readthedocs.io/en/latest/building/gits/build.html) with some extra steps.
==== Requirements
- The Trusted Services project has some extra [requirements](https://trusted-services.readthedocs.io/en/latest/developer/software-requirements.html) from OP-TEE. It mainly depends on CMake v3.18.
- The current system uses the Arm AEMv-A Base Platform FVP to run the test environment. The latest version can be found at [developer.arm.com](https://developer.arm.com/-/media/Files/downloads/ecosystem-models/FVP_Base_RevC-2xAEMvA_11.17_21.tgz). The default path for the FVP in the build scripts is set to `/opt/fvp/latest`.
==== Build steps
Obtain sources using the `repo` tool:
mkdir optee-ts-workspace
cd optee-ts-workspace
repo init -u https://git.trustedfirmware.org/OP-TEE/manifest.git -m psa-sp-fvp.xml -b topics/spmc_mainline
repo sync -j4 --no-clone-bundle
Download toolchains, build OP-TEE and all other components:
cd build
make toolchains
make
cd ..
Build Trusted Services client apps:
make -C trusted-services/tools/b-test \
r-component-test-arm-linux \
r-libts-arm-linux \
r-psa-api-test-crypto-arm-linux \
r-psa-api-test-initial_attestation-arm-linux \
r-psa-api-test-internal_trusted_storage-arm-linux \
r-psa-api-test-protected_storage-arm-linux \
r-ts-demo-arm-linux \
r-ts-service-test-arm-linux
Copy the TS apps to the FVP's shared directory:
cp -r trusted-services/tools/b-test/install/arm-linux shared/
More info about building Trusted Services apps can be found at the [Trusted Services build instructions](https://trusted-services.readthedocs.io/en/latest/developer/build-instructions.html).
Boot the system on the FVP:
make -C build run-only
Two console windows should appear, one for the Secure World and one for the Normal World. When the boot is complete, login as root.
== Test
==== Setup
Set up the [FVP environment](https://trusted-services.readthedocs.io/en/latest/environments/deployment-guides/fvp-deployment-guide.html?highlight=ts-service-test#deploying-service-level-tests):
/mnt/load_module.sh
cp /mnt/arm-linux/lib/libts.so* /lib/
==== Running tests
======Run the TS demo
/mnt/arm-linux/bin/ts-demo
Output:
lines=8
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:
59
Generating random bytes length: 7
Operation successful
Random bytes:
4B 40 4B 1B B8 84 B6
Generating random bytes length: 128
Operation successful
Random bytes:
E2 A9 04 C5 F3 BD A3 43
05 C3 F0 B3 06 B7 22 44
D0 FF 3C 50 FC 63 3C 99
46 2B 48 F1 DB 09 88 87
E2 25 2B 62 94 C8 FE DE
6B 67 2C AC 95 C1 9A 20
73 A8 0D 97 AC 5A 4D 75
75 C1 BB 3B 6F 0A B1 32
4A 92 F5 A9 59 34 78 B2
E6 67 CE 0D E1 3E 64 01
A1 41 D2 99 F7 84 08 1E
66 45 63 9A 15 D0 DC EF
F9 08 74 60 5E 85 AB 53
0E 2D BB 37 55 EF 75 7F
8F 32 20 BB 2F C4 E8 3E
33 2E 15 CA CD 0F 20 58
Generating ECC signing key
Operation successful
Signing message: "The quick brown fox" using key: 256
Operation successful
Signature bytes:
47 0B 7A E4 E3 5B 95 58
50 8A 57 06 5D 05 41 E9
33 88 AA 8E 47 17 26 7D
46 E9 47 C3 AC 2A 65 17
7C 7C 7E A4 9E DF 8D F6
6D AE 52 27 B4 7C 00 74
AF 25 BE 50 11 36 8E 54
4D E9 0B ED 5B B5 C7 2A
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:
91 CA 55 03 2D FC A1 6E
5D 28 8C 78 2D A8 32 F0
3A 55 50 A0 8A C0 A9 1C
B6 7C D1 C5 72 1F DC 27
A2 4E CD F3 05 64 35 05
1A 7B 39 67 2D A8 F0 65
A0 C5 25 91 B1 FB 17 9A
20 13 52 C4 BB 3B 3E AF
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:
38 73 88 06 90 C3 63 09
07 A0 F0 7D 3E 3E 15 66
F7 0D E4 9B 95 A8 4F 42
55 E7 BD 53 67 D9 AA E1
Decrypting message using RSA key: 257
Operation successful
Decrypted message: "Top secret"
Exporting public key: 256
Operation successful
Public key bytes:
04 9E 75 5A BE 04 E0 EE
F0 93 F3 CF B9 03 19 B9
FB C3 F6 80 37 14 73 61
6A 4D C7 66 03 D2 DA A2
75 1B 7A 78 DB 59 CF DA
35 BD 6A 0B 8A 07 D0 E2
83 E7 09 27 76 17 75 15
89 DE 05 98 FD 5A 69 55
4F
Destroying signing key: 256
Operation successful
Destroying encryption key: 257
Operation successful
======Run ts-service-test
/mnt/arm-linux/bin/ts-service-test -v
Output:
lines=8
TEST(PsServiceTests, createAndSetExtended) - 17853 ms
TEST(PsServiceTests, createAndSet) - 20396 ms
TEST(PsServiceTests, storeNewItem) - 18289 ms
TEST(ItsServiceTests, storeNewItem) - 11008 ms
TEST(AttestationProvisioningTests, provisionedIak) - 98333 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 184226 ms
TEST(AttestationServiceTests, repeatedOperation) - 22908192 ms
TEST(AttestationServiceTests, invalidChallengeLen) - 10365 ms
TEST(AttestationServiceTests, checkTokenSize) - 233939 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 21824 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 23731 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 25119 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 19607 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 102272 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 19815 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 67018 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 23439 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 34506 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 17466 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 30063 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 2014249 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 438315 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 1066351 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 1073917 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 127557 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 199140 ms
TEST(CryptoServicePackedcTests, purgeKey) - 119132 ms
TEST(CryptoServicePackedcTests, copyKey) - 225074 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 213158 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 189627 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 31655 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 3092427 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 279857 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 1074455 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 128549 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 201531 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 214115 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 189163 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 20743593 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 5251590 ms
TEST(DiscoveryServiceTests, checkServiceInfo) - 12895 ms
OK (41 tests, 41 ran, 747 checks, 0 ignored, 0 filtered out, 60788071 ms)
======Run components test
/mnt/arm-linux/bin/component-test -v
Output:
lines=8
TEST(UefiVariableStoreTests, noRemoveCheck) - 2866 ms
TEST(UefiVariableStoreTests, readOnlycheck) - 700 ms
TEST(UefiVariableStoreTests, unsupportedAttribute) - 311 ms
TEST(UefiVariableStoreTests, failedNvSet) - 781 ms
TEST(UefiVariableStoreTests, enumerateStoreContents) - 1035 ms
TEST(UefiVariableStoreTests, runtimeAccess) - 674 ms
TEST(UefiVariableStoreTests, bootServiceAccess) - 526 ms
TEST(UefiVariableStoreTests, removePersistent) - 694 ms
TEST(UefiVariableStoreTests, removeVolatile) - 954 ms
TEST(UefiVariableStoreTests, persistentSetGet) - 767 ms
TEST(UefiVariableStoreTests, setGetRoundtrip) - 655 ms
TEST(UefiVariableIndexTests, setCheckConstraintsNonExistingVar) - 486 ms
TEST(UefiVariableIndexTests, setCheckConstraintsExistingVar) - 593 ms
TEST(UefiVariableIndexTests, checkIterator) - 347 ms
TEST(UefiVariableIndexTests, removeVariable) - 481 ms
TEST(UefiVariableIndexTests, dumpBufferTooSmall) - 265 ms
TEST(UefiVariableIndexTests, dumpLoadRoadtrip) - 347 ms
TEST(UefiVariableIndexTests, enumerateStore) - 354 ms
TEST(UefiVariableIndexTests, variableIndexFull) - 347 ms
TEST(UefiVariableIndexTests, addWithOversizedName) - 578 ms
TEST(UefiVariableIndexTests, emptyIndexOperations) - 269 ms
TEST(SfsTests, psCreateAndSetExtended) - 1386 ms
TEST(SfsTests, psCreateAndSet) - 282 ms
TEST(SfsTests, itsStorageLimitTest) - 299 ms
TEST(SfsTests, itsStoreNewItem) - 245 ms
TEST(MockStoreTests, psCreateAndSetExtended) - 186 ms
TEST(MockStoreTests, psCreateAndSet) - 175 ms
TEST(MockStoreTests, itsStorageLimitTest) - 115 ms
TEST(MockStoreTests, itsStoreNewItem) - 174 ms
TEST(SecureStorageProxyTests, psCreateAndSetExtended) - 1011 ms
TEST(SecureStorageProxyTests, psCreateAndSet) - 316 ms
TEST(SecureStorageProxyTests, itsStorageLimitTest) - 261 ms
TEST(SecureStorageProxyTests, itsStoreNewItem) - 349 ms
TEST(SecureStorageClientTests, psCreateAndSetExtended) - 377 ms
TEST(SecureStorageClientTests, psCreateAndSet) - 251 ms
TEST(SecureStorageClientTests, itsStorageLimitTest) - 198 ms
TEST(SecureStorageClientTests, itsStoreNewItem) - 250 ms
TEST(CryptoProtocolPackedcChecks, checkKeyUsage) - 34 ms
TEST(CryptoProtocolPackedcChecks, checkKeyLifetime) - 71 ms
TEST(CryptoProtocolPackedcChecks, checkAlg) - 51 ms
TEST(CryptoProtocolPackedcChecks, checkDhGroup) - 14 ms
TEST(CryptoProtocolPackedcChecks, checkEccCurve) - 72 ms
TEST(CryptoProtocolPackedcChecks, checkKeyType) - 38 ms
TEST(CryptoProtocolProtobufChecks, checkKeyUsage) - 72 ms
TEST(CryptoProtocolProtobufChecks, checkKeyLifetime) - 0 ms
TEST(CryptoProtocolProtobufChecks, checkAlg) - 82 ms
TEST(CryptoProtocolProtobufChecks, checkDhGroup) - 48 ms
TEST(CryptoProtocolProtobufChecks, checkEccCurve) - 48 ms
TEST(CryptoProtocolProtobufChecks, checkKeyType) - 48 ms
TEST(CryptoProtocolOpcodeChecks, checkPackedcToProtobuf) - 36 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 11024 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 2534 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 1268 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 1390 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 69797 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 1102 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 36978 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 5746 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 13235 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 1110 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 2590 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 4135314 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 247677 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 1047035 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 1044391 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 86605 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 172286 ms
TEST(CryptoServicePackedcTests, purgeKey) - 86783 ms
TEST(CryptoServicePackedcTests, copyKey) - 197341 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 173570 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 173408 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 3875 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 1283202 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 299963 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 1048599 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 86889 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 173709 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 173080 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 172469 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 20181432 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 5270201 ms
TEST(CryptoFaultTests, randomNumbersWithBrokenStorage) - 347 ms
TEST(CryptoFaultTests, persistentKeysWithBrokenStorage) - 86284 ms
TEST(CryptoFaultTests, volatileKeyWithBrokenStorage) - 87197 ms
TEST(PocCryptoOpTests, checkOpSequence) - 271709 ms
TEST(CryptoMsgTests, SignHashOutMsgTest) - 266 ms
TEST(CryptoMsgTests, SignHashInMsgTest) - 230 ms
TEST(CryptoMsgTests, ExportPublicKeyOutMsgTest) - 0 ms
TEST(CryptoMsgTests, ExportPublicKeyInMsgTest) - 364 ms
TEST(CryptoMsgTests, GenerateKeyInMsgTest) - 386 ms
TEST(CryptoContextPoolTests, multipleContexts) - 39721 ms
TEST(CryptoContextPoolTests, singleContext) - 47 ms
TEST(CryptoContextPoolTests, checkEmptyPool) - 67 ms
TEST(AttestationProvisioningTests, provisionedIak) - 87586 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 258655 ms
TEST(AttestationServiceTests, repeatedOperation) - 19761141 ms
TEST(AttestationServiceTests, invalidChallengeLen) - 156 ms
TEST(AttestationServiceTests, checkTokenSize) - 369737 ms
TEST(AttestationReporterTests, createReport) - 703234 ms
TEST(TcgEventLogTests, interateBootMeasurements) - 140 ms
TEST(DiscoveryServiceTests, checkServiceInfo) - 341 ms
TEST(ServiceNameTests, readService) - 300 ms
TEST(ServiceNameTests, checkFields) - 391 ms
TEST(ServiceNameTests, checkInvalidServiceNames) - 48 ms
TEST(ServiceNameTests, checkValidServiceNames) - 145 ms
TEST(ServiceFrameworkTests, serviceProviderChain) - 100 ms
TEST(ServiceFrameworkTests, serviceWithOps) - 86 ms
TEST(ServiceFrameworkTests, serviceWithNoOps) - 87 ms
TEST(RpcStatusProtocolChecks, checkProtobufRpcStatusCodes) - 73 ms
TEST(ConfigRamstoreTests, checkMultipleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkSingleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkEmptyConfig) - 39 ms
TEST(EndianTests, le64) - 38 ms
TEST(EndianTests, le32) - 38 ms
TEST(EndianTests, le16) - 42 ms
TEST(EndianTests, le8) - 97 ms
TEST(TlvTests, encodeWrongOrder) - 53 ms
TEST(TlvTests, encodeInsufficientSpace) - 81 ms
TEST(TlvTests, encodeRecords) - 50 ms
TEST(TlvTests, decodeBadRecords) - 39 ms
TEST(TlvTests, findAndDecodeMissingOptional) - 19 ms
TEST(TlvTests, findAndDecode) - 33 ms
TEST(TlvTests, decodeGoodRecords) - 72 ms
TEST(UuidTests, parseValidUuidToReversed) - 81 ms
TEST(UuidTests, parseError) - 73 ms
TEST(UuidTests, parseUuidInUrn) - 82 ms
TEST(UuidTests, parseValidUuidMixedCase) - 86 ms
TEST(UuidTests, parseValidUuidLowerCase) - 19 ms
TEST(TsDemoTests, runTsDemo) - 2497184 ms
OK (129 tests, 129 ran, 18207 checks, 0 ignored, 0 filtered out, 60431682 ms)
======Run psa-its-api-test
/mnt/arm-linux/bin/psa-its-api-test
Output:
lines=8
***** 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..
======Run psa-ps-api-test
/mnt/arm-linux/bin/psa-ps-api-test
Output:
lines=8
***** 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 11 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 11 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..
======Run psa-crypto-api-test:
/mnt/arm-linux/bin/psa-crypto-api-test
Output:
lines=8
***** 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
Failed at Checkpoint: 4
Actual: 0
Expected: -137
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 3
Actual: -134
Expected: -135
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
[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
Failed at Checkpoint: 4
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 3
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 3
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 5
Actual: 0
Expected: -137
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -137
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -137
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: -149
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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 - Encrypt - CCM
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 262 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_suspend
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_suspend - MD5
Failed at Checkpoint: 5
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 263 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_resume
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_resume - MD5
Failed at Checkpoint: 5
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
************ Crypto Suite Report **********
TOTAL TESTS : 63
TOTAL PASSED : 34
TOTAL SIM ERROR : 0
TOTAL FAILED : 29
TOTAL SKIPPED : 0
******************************************
Entering standby..
======Run psa-iat-api-test
/mnt/arm-linux/bin/psa-iat-api-test
Output:
lines=8
***** 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
[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..
======xtest
OP-TEE's built-in test solution (`xtest`) can be used to sanity check the system. This does invoke some parts of the SPMC, but none of the Trusted Services components. Expected result is 100% success:
lines=8
TEE test application started over default TEE instance
######################################################
#
# regression
#
######################################################
* regression_1001 Core self tests
o regression_1001.1 Core self tests
regression_1001.1 OK
o regression_1001.2 Core dt_driver self tests
regression_1001.2 OK
regression_1001 OK
* regression_1002 PTA parameters
regression_1002 OK
* regression_1003 Core internal read/write mutex
Number of parallel threads: 6 (2 writers and 4 readers)
Max read concurrency: 2
Max read waiters: 2
Mean read concurrency: 1.4
Mean read waiting: 1.0125
regression_1003 OK
<...>
<...>
regression_8001 OK
regression_8002 OK
regression_8101 OK
regression_8102 OK
regression_8103 OK
+-----------------------------------------------------
26258 subtests of which 0 failed
95 test cases of which 0 failed
0 test cases were skipped
TEE test application done!
= OP-TEE SPMC implementation
== Introduction
==== OP-TEE SPMC implementation
This document describes the OP-TEE SPMC (Secure Partition Manager Core) implementation. This implementation is used to support the Trusted Services PSA Secure Partitions (SPs). The PSA SPs are implemented based on the Arm FF-A specification. The OP-TEE SPMC can be used as a reference S-EL1 implementation and the Trusted Service can be used a reference S-EL0 SP implementations.
==== FF-A
Arm Firmware Framework for Arm A-profile (FF-A) is a framework designed to standardize the communication between the various software images.
Including the communication between the various software images in the Secure world and Normal world. The current release of the OP-TEE SPMC is based around the [FF-A v1.0 spec](https://developer.arm.com/documentation/den0077/latest).
==== OP-TEE
OP-TEE is an open source Trusted Execution Environment (TEE) implementing the Arm TrustZone technology. More information can be found at [readthedocs](https://optee.readthedocs.io/en/latest/). OP-TEE can run both as a S-EL1 SP or as the S-EL1 SPMC.
This document describes OP-TEE as a S-EL1 SPMC. The current mainline OP-TEE version can be found [here](https://github.com/OP-TEE/optee_os).
==== Trusted Services
The Trusted Services project provides a framework for developing and deploying device Root of Trust (RoT) services across a range of secure processing environments such as those provided by OP-TEE and Hafnium.
More information about Trusted Services can be found at [Trusted-Services](https://trusted-services.readthedocs.io/en/latest/).
== Current Status
Limited support for OP-TEE SPMC aligning with FF-A 1.0 is available in OP-TEE v3.18.
Complete support for FF-A 1.0 and TS is planned for upcoming releases. See below for status.
==== SPMC status
OP-TEE SPMC FF-A status:
| Description | Status |
|-------------------|---------------|
| SP loading | Supported |
| SP messaging | Supported |
| SP manifest files | Supported |
| Memory management | Supported |
| Interrupts | Not supported |
OP-TEE SPMC FF-A messages status:
| Name | Status |
|--------------------------|--------------------------|
| FFA_ERROR | Supported |
| FFA_SUCCESS | Supported |
| FFA_INTERRUPT | Not supported |
| FFA_VERSION | Supported |
| FFA_FEATURES | Supported |
| FFA_RX_RELEASE | Supported |
| FFA_RXTX_MAP | Supported |
| FFA_RXTX_UNMAP | Supported |
| FFA_PARTITION_INFO_GET | Supported |
| FFA_ID_GET | Supported |
| FFA_MSG_WAIT | Supported |
| FFA_YIELD | Not supported |
| FFA_RUN | Not supported |
| FFA_NORMAL_WORLD_RESUME | Not supported |
| FFA_MSG_SEND | Not supported |
| FFA_MSG_SEND_DIRECT_REQ | Supported |
| FFA_MSG_SEND_DIRECT_RESP | Supported |
| FFA_MSG_POLL | Not supported |
| FFA_MEM_DONATE | Not supported |
| FFA_MEM_LEND | Not supported |
| FFA_MEM_SHARE | Partially supported [^1] |
| FFA_MEM_RETRIEVE_REQ | Supported |
| FFA_MEM_RETRIEVE_RESP | Supported |
| FFA_MEM_RELINQUISH | Supported |
| FFA_MEM_RECLAIM | Supported |
[^1]: Sharing device memory is not yet supported.
==== Trusted Services status
All Trusted Services Secure Partitions are supported with OP-TEE SPMC v3.18.
Trusted Services SP support status:
| Name | Status |
|--------------------------|-----------|
| internal-trusted-storage | Supported |
| protected-storage | Supported |
| crypto | Supported |
| attestation | Supported |
| smm-gateway | Supported |
== Build
The build process is based on the [OP-TEE build process](https://optee.readthedocs.io/en/latest/building/gits/build.html) with some extra steps.
==== Requirements
- The Trusted Services project has some extra [requirements](https://trusted-services.readthedocs.io/en/latest/developer/software-requirements.html) from OP-TEE. It mainly depends on CMake v3.18.
- The current system uses the Arm AEMv-A Base Platform FVP to run the test environment. The latest version can be found at [developer.arm.com](https://developer.arm.com/downloads/-/arm-ecosystem-models). The downloaded FVP should be extracted at the project root (`<project root>/Base_RevC_AEMvA_pkg`).
==== Build steps
Obtain sources using the `repo` tool:
mkdir optee-ts-workspace
cd optee-ts-workspace
repo init -u https://git.trustedfirmware.org/OP-TEE/manifest.git -m fvp-ts.xml
repo sync -j4 --no-clone-bundle
Download toolchains, build OP-TEE and all other components:
cd build
make toolchains
make
cd ..
Copy the TS apps to the FVP's shared directory:
cp -r trusted-services/tools/b-test/install/arm-linux shared/
More info about building Trusted Services apps can be found at the [Trusted Services build instructions](https://trusted-services.readthedocs.io/en/latest/developer/build-instructions.html).
Boot the system on the FVP:
make -C build run-only
Two console windows should appear, one for the Secure World and one for the Normal World. When the boot is complete, login as root.
== Test
==== Setup
Set up the [FVP environment](https://trusted-services.readthedocs.io/en/latest/environments/deployment-guides/fvp-deployment-guide.html?highlight=ts-service-test#deploying-service-level-tests):
/mnt/load_module.sh
cp /mnt/arm-linux/lib/libts.so* /lib/
==== Running tests
======Run ts-service-test
/mnt/arm-linux/bin/ts-service-test -v
Output:
lines=8
TEST(PsServiceTests, createAndSetExtended) - 17853 ms
TEST(PsServiceTests, createAndSet) - 20396 ms
TEST(PsServiceTests, storeNewItem) - 18289 ms
TEST(ItsServiceTests, storeNewItem) - 11008 ms
TEST(AttestationProvisioningTests, provisionedIak) - 98333 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 184226 ms
TEST(AttestationServiceTests, repeatedOperation) - 22908192 ms
TEST(AttestationServiceTests, invalidChallengeLen) - 10365 ms
TEST(AttestationServiceTests, checkTokenSize) - 233939 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 21824 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 23731 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 25119 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 19607 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 102272 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 19815 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 67018 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 23439 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 34506 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 17466 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 30063 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 2014249 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 438315 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 1066351 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 1073917 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 127557 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 199140 ms
TEST(CryptoServicePackedcTests, purgeKey) - 119132 ms
TEST(CryptoServicePackedcTests, copyKey) - 225074 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 213158 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 189627 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 31655 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 3092427 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 279857 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 1074455 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 128549 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 201531 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 214115 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 189163 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 20743593 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 5251590 ms
TEST(DiscoveryServiceTests, checkServiceInfo) - 12895 ms
OK (41 tests, 41 ran, 747 checks, 0 ignored, 0 filtered out, 60788071 ms)
======Run psa-its-api-test
/mnt/arm-linux/bin/psa-its-api-test
Output:
lines=8
***** 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..
======Run psa-ps-api-test
/mnt/arm-linux/bin/psa-ps-api-test
Output:
lines=8
***** 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 11 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 11 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..
======Run psa-crypto-api-test:
/mnt/arm-linux/bin/psa-crypto-api-test
Output:
lines=8
***** 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
Failed at Checkpoint: 4
Actual: 0
Expected: -137
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 3
Actual: -134
Expected: -135
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
[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
Failed at Checkpoint: 4
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 3
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 3
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 5
Actual: 0
Expected: -137
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -137
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -137
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: -149
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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 - Encrypt - CCM
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 262 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_suspend
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_suspend - MD5
Failed at Checkpoint: 5
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 263 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_resume
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_resume - MD5
Failed at Checkpoint: 5
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
************ Crypto Suite Report **********
TOTAL TESTS : 63
TOTAL PASSED : 34
TOTAL SIM ERROR : 0
TOTAL FAILED : 29
TOTAL SKIPPED : 0
******************************************
Entering standby..
======Run psa-iat-api-test
/mnt/arm-linux/bin/psa-iat-api-test
Output:
lines=8
***** 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
[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..
======Run components test
/mnt/arm-linux/bin/component-test -v
Output:
lines=8
TEST(UefiVariableStoreTests, noRemoveCheck) - 2866 ms
TEST(UefiVariableStoreTests, readOnlycheck) - 700 ms
TEST(UefiVariableStoreTests, unsupportedAttribute) - 311 ms
TEST(UefiVariableStoreTests, failedNvSet) - 781 ms
TEST(UefiVariableStoreTests, enumerateStoreContents) - 1035 ms
TEST(UefiVariableStoreTests, runtimeAccess) - 674 ms
TEST(UefiVariableStoreTests, bootServiceAccess) - 526 ms
TEST(UefiVariableStoreTests, removePersistent) - 694 ms
TEST(UefiVariableStoreTests, removeVolatile) - 954 ms
TEST(UefiVariableStoreTests, persistentSetGet) - 767 ms
TEST(UefiVariableStoreTests, setGetRoundtrip) - 655 ms
TEST(UefiVariableIndexTests, setCheckConstraintsNonExistingVar) - 486 ms
TEST(UefiVariableIndexTests, setCheckConstraintsExistingVar) - 593 ms
TEST(UefiVariableIndexTests, checkIterator) - 347 ms
TEST(UefiVariableIndexTests, removeVariable) - 481 ms
TEST(UefiVariableIndexTests, dumpBufferTooSmall) - 265 ms
TEST(UefiVariableIndexTests, dumpLoadRoadtrip) - 347 ms
TEST(UefiVariableIndexTests, enumerateStore) - 354 ms
TEST(UefiVariableIndexTests, variableIndexFull) - 347 ms
TEST(UefiVariableIndexTests, addWithOversizedName) - 578 ms
TEST(UefiVariableIndexTests, emptyIndexOperations) - 269 ms
TEST(SfsTests, psCreateAndSetExtended) - 1386 ms
TEST(SfsTests, psCreateAndSet) - 282 ms
TEST(SfsTests, itsStorageLimitTest) - 299 ms
TEST(SfsTests, itsStoreNewItem) - 245 ms
TEST(MockStoreTests, psCreateAndSetExtended) - 186 ms
TEST(MockStoreTests, psCreateAndSet) - 175 ms
TEST(MockStoreTests, itsStorageLimitTest) - 115 ms
TEST(MockStoreTests, itsStoreNewItem) - 174 ms
TEST(SecureStorageProxyTests, psCreateAndSetExtended) - 1011 ms
TEST(SecureStorageProxyTests, psCreateAndSet) - 316 ms
TEST(SecureStorageProxyTests, itsStorageLimitTest) - 261 ms
TEST(SecureStorageProxyTests, itsStoreNewItem) - 349 ms
TEST(SecureStorageClientTests, psCreateAndSetExtended) - 377 ms
TEST(SecureStorageClientTests, psCreateAndSet) - 251 ms
TEST(SecureStorageClientTests, itsStorageLimitTest) - 198 ms
TEST(SecureStorageClientTests, itsStoreNewItem) - 250 ms
TEST(CryptoProtocolPackedcChecks, checkKeyUsage) - 34 ms
TEST(CryptoProtocolPackedcChecks, checkKeyLifetime) - 71 ms
TEST(CryptoProtocolPackedcChecks, checkAlg) - 51 ms
TEST(CryptoProtocolPackedcChecks, checkDhGroup) - 14 ms
TEST(CryptoProtocolPackedcChecks, checkEccCurve) - 72 ms
TEST(CryptoProtocolPackedcChecks, checkKeyType) - 38 ms
TEST(CryptoProtocolProtobufChecks, checkKeyUsage) - 72 ms
TEST(CryptoProtocolProtobufChecks, checkKeyLifetime) - 0 ms
TEST(CryptoProtocolProtobufChecks, checkAlg) - 82 ms
TEST(CryptoProtocolProtobufChecks, checkDhGroup) - 48 ms
TEST(CryptoProtocolProtobufChecks, checkEccCurve) - 48 ms
TEST(CryptoProtocolProtobufChecks, checkKeyType) - 48 ms
TEST(CryptoProtocolOpcodeChecks, checkPackedcToProtobuf) - 36 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 11024 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 2534 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 1268 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 1390 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 69797 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 1102 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 36978 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 5746 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 13235 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 1110 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 2590 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 4135314 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 247677 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 1047035 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 1044391 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 86605 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 172286 ms
TEST(CryptoServicePackedcTests, purgeKey) - 86783 ms
TEST(CryptoServicePackedcTests, copyKey) - 197341 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 173570 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 173408 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 3875 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 1283202 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 299963 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 1048599 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 86889 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 173709 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 173080 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 172469 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 20181432 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 5270201 ms
TEST(CryptoFaultTests, randomNumbersWithBrokenStorage) - 347 ms
TEST(CryptoFaultTests, persistentKeysWithBrokenStorage) - 86284 ms
TEST(CryptoFaultTests, volatileKeyWithBrokenStorage) - 87197 ms
TEST(PocCryptoOpTests, checkOpSequence) - 271709 ms
TEST(CryptoMsgTests, SignHashOutMsgTest) - 266 ms
TEST(CryptoMsgTests, SignHashInMsgTest) - 230 ms
TEST(CryptoMsgTests, ExportPublicKeyOutMsgTest) - 0 ms
TEST(CryptoMsgTests, ExportPublicKeyInMsgTest) - 364 ms
TEST(CryptoMsgTests, GenerateKeyInMsgTest) - 386 ms
TEST(CryptoContextPoolTests, multipleContexts) - 39721 ms
TEST(CryptoContextPoolTests, singleContext) - 47 ms
TEST(CryptoContextPoolTests, checkEmptyPool) - 67 ms
TEST(AttestationProvisioningTests, provisionedIak) - 87586 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 258655 ms
TEST(AttestationServiceTests, repeatedOperation) - 19761141 ms
TEST(AttestationServiceTests, invalidChallengeLen) - 156 ms
TEST(AttestationServiceTests, checkTokenSize) - 369737 ms
TEST(AttestationReporterTests, createReport) - 703234 ms
TEST(TcgEventLogTests, interateBootMeasurements) - 140 ms
TEST(DiscoveryServiceTests, checkServiceInfo) - 341 ms
TEST(ServiceNameTests, readService) - 300 ms
TEST(ServiceNameTests, checkFields) - 391 ms
TEST(ServiceNameTests, checkInvalidServiceNames) - 48 ms
TEST(ServiceNameTests, checkValidServiceNames) - 145 ms
TEST(ServiceFrameworkTests, serviceProviderChain) - 100 ms
TEST(ServiceFrameworkTests, serviceWithOps) - 86 ms
TEST(ServiceFrameworkTests, serviceWithNoOps) - 87 ms
TEST(RpcStatusProtocolChecks, checkProtobufRpcStatusCodes) - 73 ms
TEST(ConfigRamstoreTests, checkMultipleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkSingleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkEmptyConfig) - 39 ms
TEST(EndianTests, le64) - 38 ms
TEST(EndianTests, le32) - 38 ms
TEST(EndianTests, le16) - 42 ms
TEST(EndianTests, le8) - 97 ms
TEST(TlvTests, encodeWrongOrder) - 53 ms
TEST(TlvTests, encodeInsufficientSpace) - 81 ms
TEST(TlvTests, encodeRecords) - 50 ms
TEST(TlvTests, decodeBadRecords) - 39 ms
TEST(TlvTests, findAndDecodeMissingOptional) - 19 ms
TEST(TlvTests, findAndDecode) - 33 ms
TEST(TlvTests, decodeGoodRecords) - 72 ms
TEST(UuidTests, parseValidUuidToReversed) - 81 ms
TEST(UuidTests, parseError) - 73 ms
TEST(UuidTests, parseUuidInUrn) - 82 ms
TEST(UuidTests, parseValidUuidMixedCase) - 86 ms
TEST(UuidTests, parseValidUuidLowerCase) - 19 ms
TEST(TsDemoTests, runTsDemo) - 2497184 ms
OK (129 tests, 129 ran, 18207 checks, 0 ignored, 0 filtered out, 60431682 ms)
======xtest
OP-TEE's built-in test solution (`xtest`) can be used to sanity check the system. This does invoke some parts of the SPMC, but none of the Trusted Services components. Expected result is 100% success:
lines=8
TEE test application started over default TEE instance
######################################################
#
# regression
#
######################################################
* regression_1001 Core self tests
o regression_1001.1 Core self tests
regression_1001.1 OK
o regression_1001.2 Core dt_driver self tests
regression_1001.2 OK
regression_1001 OK
* regression_1002 PTA parameters
regression_1002 OK
* regression_1003 Core internal read/write mutex
Number of parallel threads: 6 (2 writers and 4 readers)
Max read concurrency: 2
Max read waiters: 2
Mean read concurrency: 1.4
Mean read waiting: 1.0125
regression_1003 OK
<...>
<...>
regression_8001 OK
regression_8002 OK
regression_8101 OK
regression_8102 OK
regression_8103 OK
+-----------------------------------------------------
26258 subtests of which 0 failed
95 test cases of which 0 failed
0 test cases were skipped
TEE test application done!
= OP-TEE SPMC implementation
== Introduction
==== OP-TEE SPMC implementation
This document describes the OP-TEE SPMC (Secure Partition Manager Core) implementation. This implementation is used to support the Trusted Services PSA Secure Partitions (SPs). The PSA SPs are implemented based on the Arm FF-A specification. The OP-TEE SPMC can be used as a reference S-EL1 implementation and the Trusted Service can be used a reference S-EL0 SP implementations.
==== FF-A
Arm Firmware Framework for Arm A-profile (FF-A) is a framework designed to standardize the communication between the various software images.
Including the communication between the various software images in the Secure world and Normal world. The current release of the OP-TEE SPMC is based around the [FF-A v1.0 spec](https://developer.arm.com/documentation/den0077/latest).
==== OP-TEE
OP-TEE is an open source Trusted Execution Environment (TEE) implementing the Arm TrustZone technology. More information can be found at [readthedocs](https://optee.readthedocs.io/en/latest/). OP-TEE can run both as a S-EL1 SP or as the S-EL1 SPMC.
This document describes OP-TEE as a S-EL1 SPMC. The current mainline OP-TEE version can be found [here](https://github.com/OP-TEE/optee_os).
==== Trusted Services
The Trusted Services project provides a framework for developing and deploying device Root of Trust (RoT) services across a range of secure processing environments such as those provided by OP-TEE and Hafnium.
More information about Trusted Services can be found at [Trusted-Services](https://trusted-services.readthedocs.io/en/latest/).
== Current Status
Limited support for OP-TEE SPMC aligning with FF-A 1.0 is available in mainline and OP-TEE v3.178.
Complete support for FF-A 1.0 and TS is planned for upcoming releases. See below for status.
==== SPMC status
OP-TEE mainline SPMC FF-A status:
| Description | Status |
|-------------------|--------------------------|
| SP loading | Supported |
| SP messaging | Supported |
| SP manifest files | Partially sSupported [^1] | |
| Memory management | Supported |
| Interrupts | Not supported |
[^1]: Only mapping device memory regions is supported.
OP-TEE mainline SPMC FF-A messages status:
| Name | Status |
|--------------------------|--------------------------|
| FFA_ERROR | Supported |
| FFA_SUCCESS | Supported |
| FFA_INTERRUPT | Not supported |
| FFA_VERSION | Supported |
| FFA_FEATURES | Supported |
| FFA_RX_RELEASE | Supported |
| FFA_RXTX_MAP | Supported |
| FFA_RXTX_UNMAP | Supported |
| FFA_PARTITION_INFO_GET | Supported |
| FFA_ID_GET | Supported |
| FFA_MSG_WAIT | Supported |
| FFA_YIELD | Not supported |
| FFA_RUN | Not supported |
| FFA_NORMAL_WORLD_RESUME | Not supported |
| FFA_MSG_SEND | Not supported |
| FFA_MSG_SEND_DIRECT_REQ | Supported |
| FFA_MSG_SEND_DIRECT_RESP | Supported |
| FFA_MSG_POLL | Not supported |
| FFA_MEM_DONATE | Not supported |
| FFA_MEM_LEND | Not supported |
| FFA_MEM_SHARE | Partially supported [^2] |^1] |
| FFA_MEM_RETRIEVE_REQ | Supported |
| FFA_MEM_RETRIEVE_RESP | Supported |
| FFA_MEM_RELINQUISH | Supported |
| FFA_MEM_RECLAIM | Supported |
[^2]:^1]: Sharing device memory is not yet supported.
==== Trusted Services status
Currently not all Trusted Services functionality is supported when using the OP-TEE SPMC v3.17. We are planning to support all functionality over timeAll Trusted Services Secure Partitions are supported with OP-TEE SPMC v3.18.
Trusted Services SP support status:
| Name | Status |
|--------------------------|------------------------|
| internal-trusted-storage | Supported |
| protected-storage | Supported |
| crypto | Supported |
| attestation | Supported |
| smm-gateway | Not yet sSupported [^3] |
[^3]: Memory regions in the SP manifest are not mapped.|
== Build
The build process is based on the [OP-TEE build process](https://optee.readthedocs.io/en/latest/building/gits/build.html) with some extra steps.
==== Requirements
- The Trusted Services project has some extra [requirements](https://trusted-services.readthedocs.io/en/latest/developer/software-requirements.html) from OP-TEE. It mainly depends on CMake v3.18.
- The current system uses the Arm AEMv-A Base Platform FVP to run the test environment. The latest version can be found at [developer.arm.com](https://developer.arm.com/-/media/Files/downloads/downloads/-/arm-ecosystem-models/FVP_Base_RevC-2xAEMvA_11.17_21.tgzs). The default path for the FVP inownloaded FVP should be extracted at the build scripts is set to `/opt/fvp/latest`project root (`<project root>/Base_RevC_AEMvA_pkg`).
==== Build steps
Obtain sources using the `repo` tool:
mkdir optee-ts-workspace
cd optee-ts-workspace
repo init -u https://git.trustedfirmware.org/OP-TEE/manifest.git -m psa-sp-fvp.xml -b topics/spmc_mainlinefvp-ts.xml
repo sync -j4 --no-clone-bundle
Download toolchains, build OP-TEE and all other components:
cd build
make toolchains
make
cd ..
Build Trusted Services client apps:
make -C trusted-services/tools/b-test \
r-component-test-arm-linux \
r-libts-arm-linux \
r-psa-api-test-crypto-arm-linux \
r-psa-api-test-initial_attestation-arm-linux \
r-psa-api-test-internal_trusted_storage-arm-linux \
r-psa-api-test-protected_storage-arm-linux \
r-ts-demo-arm-linux \
r-ts-service-test-arm-linux
Copy the TS apps to the FVP's shared directory:
cp -r trusted-services/tools/b-test/install/arm-linux shared/
More info about building Trusted Services apps can be found at the [Trusted Services build instructions](https://trusted-services.readthedocs.io/en/latest/developer/build-instructions.html).
Boot the system on the FVP:
make -C build run-only
Two console windows should appear, one for the Secure World and one for the Normal World. When the boot is complete, login as root.
== Test
==== Setup
Set up the [FVP environment](https://trusted-services.readthedocs.io/en/latest/environments/deployment-guides/fvp-deployment-guide.html?highlight=ts-service-test#deploying-service-level-tests):
/mnt/load_module.sh
cp /mnt/arm-linux/lib/libts.so* /lib/
==== Running tests
======Run the TS demo
/mnt/arm-linux/bin/ts-demo
Output:
lines=8
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:
59
Generating random bytes length: 7
Operation successful
Random bytes:
4B 40 4B 1B B8 84 B6
Generating random bytes length: 128
Operation successful
Random bytes:
E2 A9 04 C5 F3 BD A3 43
05 C3 F0 B3 06 B7 22 44
D0 FF 3C 50 FC 63 3C 99
46 2B 48 F1 DB 09 88 87
E2 25 2B 62 94 C8 FE DE
6B 67 2C AC 95 C1 9A 20
73 A8 0D 97 AC 5A 4D 75
75 C1 BB 3B 6F 0A B1 32
4A 92 F5 A9 59 34 78 B2
E6 67 CE 0D E1 3E 64 01
A1 41 D2 99 F7 84 08 1E
66 45 63 9A 15 D0 DC EF
F9 08 74 60 5E 85 AB 53
0E 2D BB 37 55 EF 75 7F
8F 32 20 BB 2F C4 E8 3E
33 2E 15 CA CD 0F 20 58
Generating ECC signing key
Operation successful
Signing message: "The quick brown fox" using key: 256
Operation successful
Signature bytes:
47 0B 7A E4 E3 5B 95 58
50 8A 57 06 5D 05 41 E9
33 88 AA 8E 47 17 26 7D
46 E9 47 C3 AC 2A 65 17
7C 7C 7E A4 9E DF 8D F6
6D AE 52 27 B4 7C 00 74
AF 25 BE 50 11 36 8E 54
4D E9 0B ED 5B B5 C7 2A
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:
91 CA 55 03 2D FC A1 6E
5D 28 8C 78 2D A8 32 F0
3A 55 50 A0 8A C0 A9 1C
B6 7C D1 C5 72 1F DC 27
A2 4E CD F3 05 64 35 05
1A 7B 39 67 2D A8 F0 65
A0 C5 25 91 B1 FB 17 9A
20 13 52 C4 BB 3B 3E AF
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:
38 73 88 06 90 C3 63 09
07 A0 F0 7D 3E 3E 15 66
F7 0D E4 9B 95 A8 4F 42
55 E7 BD 53 67 D9 AA E1
Decrypting message using RSA key: 257
Operation successful
Decrypted message: "Top secret"
Exporting public key: 256
Operation successful
Public key bytes:
04 9E 75 5A BE 04 E0 EE
F0 93 F3 CF B9 03 19 B9
FB C3 F6 80 37 14 73 61
6A 4D C7 66 03 D2 DA A2
75 1B 7A 78 DB 59 CF DA
35 BD 6A 0B 8A 07 D0 E2
83 E7 09 27 76 17 75 15
89 DE 05 98 FD 5A 69 55
4F
Destroying signing key: 256
Operation successful
Destroying encryption key: 257
Operation successful
======Run ts-service-test
/mnt/arm-linux/bin/ts-service-test -v
Output:
lines=8
TEST(PsServiceTests, createAndSetExtended) - 17853 ms
TEST(PsServiceTests, createAndSet) - 20396 ms
TEST(PsServiceTests, storeNewItem) - 18289 ms
TEST(ItsServiceTests, storeNewItem) - 11008 ms
TEST(AttestationProvisioningTests, provisionedIak) - 98333 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 184226 ms
TEST(AttestationServiceTests, repeatedOperation) - 22908192 ms
TEST(AttestationServiceTests, invalidChallengeLen) - 10365 ms
TEST(AttestationServiceTests, checkTokenSize) - 233939 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 21824 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 23731 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 25119 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 19607 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 102272 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 19815 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 67018 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 23439 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 34506 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 17466 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 30063 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 2014249 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 438315 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 1066351 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 1073917 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 127557 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 199140 ms
TEST(CryptoServicePackedcTests, purgeKey) - 119132 ms
TEST(CryptoServicePackedcTests, copyKey) - 225074 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 213158 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 189627 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 31655 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 3092427 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 279857 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 1074455 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 128549 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 201531 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 214115 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 189163 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 20743593 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 5251590 ms
TEST(DiscoveryServiceTests, checkServiceInfo) - 12895 ms
OK (41 tests, 41 ran, 747 checks, 0 ignored, 0 filtered out, 60788071 ms)
======Run components psa-its-api-test
/mnt/arm-linux/bin/componentpsa-its-api-test -v
Output:
lines=8
TEST(UefiVariableStore***** PSA Architecture Tests, noRemoveCheck) - 2866 ms Suite - Version 1.4 *****
TEST(UefiVariableStoreTests, readOnlycheck) - 700 ms
TEST(UefiVariableStoreTests,Running.. unsupportedAttribute) - 311 msStorage Suite
TEST(UefiVariableStoreTests, failedNvSet) - 781 ms******************************************
TEST(UefiVariableStoreTests, enumerateStoreContents) - 1035 ms: 401 | DESCRIPTION: UID not found check | UT: ITS
TEST(UefiVariableStoreT[Info] Executing tests, runtimeAccess) - 674 ms from non-secure
TEST(UefiVariableStoreTests, bootServiceAccess) - 526 ms[Info] Executing ITS tests
TEST(UefiVariableStoreTests, removePersistent) - 694 ms[Check 1] Call get API for UID 6 which is not set
TEST(UefiVariableStoreTests, removeVolatile) - 954 ms[Check 2] Call get_info API for UID 6 which is not set
TEST(UefiVariableStoreTests, persistentSetGet) - 767 ms[Check 3] Call remove API for UID 6 which is not set
TEST(UefiVariableStoreTests, setGetRoundtrip) - 655 ms[Check 4] Call get API for UID 6 which is removed
TEST(UefiVariableIndexTests, setCheckConstraintsNonExistingVar) - 486 ms[Check 5] Call get_info API for UID 6 which is removed
TEST(UefiVariableIndexTests, setCheckConstraintsExistingVar) - 593 ms[Check 6] Call remove API for UID 6 which is removed
TEST(UefiVariableIndexTests, checkIterator) - 347 msSet storage for UID 6
TEST(UefiVariableIndexTests, removeVariable) - 481 ms[Check 7] Call get API for different UID 5
TEST(UefiVariableIndexTests, dumpBufferTooSmall) - 265 ms[Check 8] Call get_info API for different UID 5
TEST(UefiVariableIndexTests, dumpLoadRoadtrip) - 347 ms[Check 9] Call remove API for different UID 5
TEST(UefiVariableIndexTests, enumerateStore) - 354 ms RESULT: PASSED
TEST(UefiVariableIndexTests, variableIndexFull) - 347 ms******************************************
TEST(UefiVariableIndexTests, addWithOversizedName) - 578 ms: 402 | DESCRIPTION: Write once error check | UT: ITS
TEST(UefiVariableIndexT[Info] Executing tests, emptyIndexOperations) - 269 ms from non-secure
TEST(SfsTests, psCreateAndSetExtended) - 1386 ms[Info] Executing ITS tests
TEST(SfsTests, psCreateAndSet) - 282 ms[Check 1] Update the flag of UID 1 with WRITE_ONCE flag
TEST(SfsTests, itsStorageLimitTest) - 299 ms[Check 2] Try to remove the UID 1 having WRITE_ONCE flag
TEST(SfsTests, itsStoreNewItem) - 245 ms[Check 3] Create a new UID 2 with WRITE_ONCE flag
TEST(MockStoreTests, psCreateAndSetExtended) - 186 ms[Check 4] Try to remove the UID 2 having WRITE_ONCE flag
TEST(MockStoreTests, psCreateAndSet) - 175 ms[Check 5] Try to change the length of write_once UID 2
TEST(MockStoreTests, itsStorageLimitTest) - 115 ms[Check 6] Check UID removal still fails
TEST(MockStoreTests, itsStoreNewItem) - 174 ms[Check 7] Try to change the WRITE_ONCE flag to None for UID 2
TEST(SecureStorageProxyTests, psCreateAndSetExtended) - 1011 ms[Check 8] Check UID removal still fails
TEST(SecureStorageProxyTests, psCreateAndSet) - 316 ms RESULT: PASSED
TEST(SecureStorageProxyTests, itsStorageLimitTest) - 261 ms******************************************
TEST(SecureStorageProxyTests, itsStoreNewItem) - 349 ms: 403 | DESCRIPTION: Insufficient space check | UT: ITS
TEST(SecureStorageClientT[Info] Executing tests, psCreateAndSetExtended) - 377 ms from non-secure
TEST(SecureStorageClientTests, psCreateAndSet) - 251 ms[Info] Executing ITS tests
TEST(SecureStorageClientTests, itsS[Check 1] Overload storageLimitTest) - 198 mse space
TEST(SecureStorageClientTests, itsStoreNewItem) - 250 msUID 13 set failed due to insufficient space
TEST(CryptoProtocolPackedcChecks, checkKeyUsage) - 34 msRemove all registered UIDs
TEST(CryptoProtocolPackedcChecks, checkKeyLifetime) - 71 ms[Check 2] Overload storage again to verify all previous UID removed
TEST(CryptoProtocolPackedcChecks, checkAlg) - 51 msUID 13 set failed due to insufficient space
TEST(CryptoProtocolPackedcChecks, checkDhGroup) - 14 msRemove all registered UIDs
TEST(CryptoProtocolPackedcChecks, checkEccCurve) - 72 ms RESULT: PASSED
TEST(CryptoProtocolPackedcChecks, checkKeyType) - 38 ms******************************************
TEST(CryptoProtocolProtobufChecks,: 404 | DESCRIPTION: Data Consistency checkKeyUsage) - 72 ms | UT: ITS
TEST(CryptoProtocolProtobufChecks, checkKeyLifetime) - 0 ms[Info] Executing tests from non-secure
TEST(CryptoProtocolProtobufChecks, checkAlg) - 82 ms[Info] Executing ITS tests
TEST(CryptoProtocolProtobufChecks, checkDhGroup) - 48 ms[Check 1] Call set API with reduced length - TEST_BUFF_SIZE/2
TEST(CryptoProtocolProtobufChecks, checkEccCurve) - 48 ms[Check 2] Call get API with default length - TEST_BUFF_SIZE
TEST(CryptoProtocolProtobufChecks, checkKeyType) - 48 ms RESULT: PASSED
TEST(CryptoProtocolOpcodeChecks, checkPackedcToProtobuf) - 36 ms******************************************
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 11024 ms: 405 | DESCRIPTION: Success scenarios check | UT: ITS
TEST(CryptoKeyDerivationServicePackedcT[Info] Executing tests, hkdfDeriveBytes) - 2534 ms from non-secure
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 1268 ms[Info] Executing ITS tests
TEST(CryptoMacServicePackedcTests, macAbort) - 1390 ms[Check 1] Set UID with data length zero and call storage APIs
TEST(CryptoMacServicePackedcTests, signAndVerify) - 69797 ms[Check 2] Resetting the length check
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 1102 ms RESULT: PASSED
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 36978 ms******************************************
TEST(CryptoHashServicePackedcTests, hashAbort) - 5746 ms: 406 | DESCRIPTION: Check for storage create flags | UT: ITS
TEST(CryptoHashServicePackedcT[Info] Executing tests, hashAndVerify) - 13235 ms from non-secure
TEST(CryptoHashServicePackedcTests, calculateHash) - 1110 ms[Info] Executing ITS tests
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 2590 ms[Check 1] Call set API with flag - PSA_STORAGE_FLAG_NONE
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 4135314 ms[Check 2] Call set API with flag - PSA_STORAGE_FLAG_NO_CONFIDENTIALITY
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 247677 ms[Check 3] Call set API with flag - PSA_STORAGE_FLAG_NO_REPLAY_PROTECTION
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 1047035 ms RESULT: PASSED
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 1044391 ms******************************************
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 86605 ms: 407 | DESCRIPTION: Incorrect Size check | UT: ITS
TEST(CryptoServicePackedcT[Info] Executing tests, exportPublicKey) - 172286 ms from non-secure
TEST(CryptoServicePackedcTests, purgeKey) - 86783 ms[Info] Executing ITS tests
TEST(CryptoServicePackedcTests, copyKey) - 197341 msCreate a valid Storage - TEST_BUFF_SIZE/2
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 173570 msIncrease the length of storage - TEST_BUFF_SIZE
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 173408 ms[Check 1] Call get API with old length - TEST_BUFF_SIZE/2
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 3875 ms[Check 2] Call get API with old length - TEST_BUFF_SIZE/4
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 1283202 msDecrease the length of storage - TEST_BUFF_SIZE/4
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 299963 ms[Check 3] Call get API with old length - TEST_BUFF_SIZE/2
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 1048599 ms[Check 4] Call get API with old length - TEST_BUFF_SIZE
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 86889 ms[Check 5] Call get API with valid length - TEST_BUFF_SIZE/4
TEST(CryptoServiceProtobufTests, exportPublicKey) - 173709 ms RESULT: PASSED
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 173080 ms******************************************
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 172469 ms: 408 | DESCRIPTION: Invalid offset check | UT: ITS
TEST(CryptoServiceLimitT[Info] Executing tests, volatileRsaKeyPairLimit) - 20181432 ms from non-secure
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 5270201 ms[Info] Executing ITS tests
TEST(CryptoFaultTests, randomNumbersWithBrokenStorage) - 347 ms[Check 1] Try to access data with varying valid offset
TEST(CryptoFaultTests, persistentKeysWithBrokenStorage) - 86284 ms[Check 2] Try to access data with varying invalid offset
TEST(CryptoFaultTests, volatileKeyWithBrokenStorage) - 87197 ms RESULT: PASSED
TEST(PocCryptoOpTests, checkOpSequence) - 271709 ms******************************************
TEST(CryptoMsgTests, SignHashOutMsgTest) - 266 ms: 409 | DESCRIPTION: Invalid Arguments check | UT: ITS
TEST(CryptoMsgT[Info] Executing tests, SignHashInMsgTest) - 230 ms from non-secure
TEST(CryptoMsgTests, ExportPublicKeyOutMsgTest) - 0 ms[Info] Executing ITS tests
TEST(CryptoMsgTests, ExportPublicKeyInMsgTest) - 364 ms[Check 1] Call set API with NULL pointer and data length 0
TEST(CryptoMsgTests, GenerateKeyInMsgTest) - 386 ms[Check 2] Call get API with NULL read buffer and data length 0
TEST(CryptoContextPoolTests, multipleContexts) - 39721 ms[Check 3] Remove the UID
TEST(CryptoContextPoolTests, singleContext) - 47 ms[Check 4] Call get_info API to verify UID removed
TEST(CryptoContextPoolTests, checkEmptyPool) - 67 ms[Check 5] Create UID with zero data_len and valid write buffer
TEST(AttestationProvisioningTests, provisionedIak) - 87586 ms[Check 8] Call get API with NULL read buffer and data length 0
TEST(AttestationProvisioningTests, selfGeneratedIak) - 258655 ms[Check 9] Increase the length
TEST(AttestationServiceTests, repeatedOperation) - 19761141 ms RESULT: PASSED
TEST(AttestationServiceTests, invalidChallengeLen) - 156 ms******************************************
TEST(AttestationServiceTests, checkTokenSize) - 369737 ms: 410 | DESCRIPTION: UID value zero check | UT: ITS
TEST(AttestationReporterT[Info] Executing tests, createReport) - 703234 ms from non-secure
TEST(TcgEventLogTests, interateBootMeasurements) - 140 ms[Info] Executing ITS tests
TEST(DiscoveryServiceTests, checkServiceInfo) - 341 ms[Check 1] Creating storage with UID 0 should fail
TEST(ServiceNameTests, readService) - 300 ms[Check 2] Get_info for UID 0 should fail
TEST(ServiceNameTests, checkFields) - 391 ms[Check 3] Removing storage with UID 0 should fail
TEST(ServiceNameTests, checkInvalidServiceNames) - 48 ms RESULT: PASSED
TEST(ServiceNameTests, checkValidServiceNames) - 145 ms******************************************
TEST(ServiceFrameworkTests, serviceProviderChain) - 100 ms
TEST(ServiceFrameworkTests, serviceWithOps) - 86 ms
TEST(ServiceFrameworkTests, serviceWithNoOps) - 87 ms
TEST(RpcStatusProtocolChecks, checkProtobufRpcStatusCodes) - 73 ms
TEST(ConfigRamstoreTests, checkMultipleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkSingleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkEmptyConfig) - 39 ms
TEST(EndianTests, le64) - 38 ms
TEST(EndianTests, le32) - 38 ms
TEST(EndianTests, le16) - 42 ms
TEST(EndianTests, le8) - 97 ms
TEST(TlvTests, encodeWrongOrder) - 53 ms
TEST(TlvTests, encodeInsufficientSpace) - 81 ms
TEST(TlvTests, encodeRecords) - 50 ms
TEST(TlvTests, decodeBadRecords) - 39 ms
TEST(TlvTests, findAndDecodeMissingOptional) - 19 ms
TEST(TlvTests, findAndDecode) - 33 ms
TEST(TlvTests, decodeGoodRecords) - 72 ms************ Storage Suite Report **********
TEST(UuidTests, parseValidUuidToReversed) - 81 msTOTAL TESTS : 10
TEST(UuidTests, parseError) - 73 msTOTAL PASSED : 10
TEST(UuidTests, parseUuidInUrn) - 82 msTOTAL SIM ERROR : 0
TEST(UuidTests, parseValidUuidMixedCase) - 86 msTOTAL FAILED : 0
TEST(UuidTests, parseValidUuidLowerCase) - 19 msTOTAL SKIPPED : 0
TEST(TsDemoTests, runTsDemo) - 2497184 ms******************************************
OK (129 tests, 129 ran, 18207 checks, 0 ignored, 0 filtered out, 60431682 ms)
Entering standby..
======Run psa-itps-api-test
/mnt/arm-linux/bin/psa-itps-api-test
Output:
lines=8
***** PSA Architecture Test Suite - Version 1.4 *****
Running.. Storage Suite
******************************************
TEST: 401 | DESCRIPTION: UID not found check | UT: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS tests
[Check 1] Overload storage space
UID 131 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 131 set failed due to insufficient space
Remove all registered UIDs
TEST RESULT: PASSED
******************************************
TEST: 404 | DESCRIPTION: Data Consistency check | UT: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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: ITSPS
[Info] Executing tests from non-secure
[Info] Executing ITPS 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 : 10TEST: 411 | DESCRIPTION: Optional APIs: UID not found check | UT: PS
TOTAL PASSED : 10[Info] Executing tests from non-secure
TOTAL SIM ERROR : 0[Info] Executing PS tests
TOTAL FAILED : 0Test Case skipped as Optional PS APIs are not supported.
TOTALTEST RESULT: SKIPPED : 0(Skip Code=0x2b)
******************************************
Entering standby..
======Run psa-ps-api-testTEST: 412 | DESCRIPTION: Optional APIs: Invalid arguments and offset invalid | UT: PS
/mnt/arm-linux/bin/psa-ps-api-test[Info] Executing tests from non-secure
Output:
lines=8[Info] Executing PS tests
***** PSA Architecture Test Suite - Version 1.4 *****Test Case skipped as Optional PS APIs are not supported.
Running.. Storage SuiteTEST RESULT: SKIPPED (Skip Code=0x2b)
******************************************
TEST: 40113 | DESCRIPTION: UID not found checkSet_Extended and Create api : Success | 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 5Test Case skipped as Optional PS APIs are not supported.
TEST RESULT: PASSEDSKIPPED (Skip Code=0x2b)
******************************************
TEST: 40214 | DESCRIPTION: Write once errorOptional APIs not supported 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 flagOptional PS APIs are not supported.
[Check 5] Try1] Call to change the length of write_once UID 2reate API should fail as API not supported
[Check 6] Failed at Check UID removal still failspoint: 1
[Check 7] Try to change the WRITE_ONCE flag to None for UID 2 Actual: 0
[Check 8] Check UID removal still fails Expected: -134
TEST RESULT: PASSEDFAILED (Error Code=0x1)
******************************************
TEST: 40315 | DESCRIPTION: Insufficient spaceCreate API write_once flag value check | UT: PS
[Info] Executing tests from non-secure
[Info] Executing PS tests
[Check 1] Overload storage space
UID 11 set failed due to insufficient space
Remove all registered UIDs
[Check 2] Overload storage again to verify all previous UID removed
UID 11 set failed due to insufficient space
Remove all registered UIDsTest Case skipped as Optional PS APIs are not supported.
TEST RESULT: PASSEDSKIPPED (Skip Code=0x2b)
******************************************
TEST: 40416 | DESCRIPTION: Data ConsistencyStorage assest capacity modification 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 getTest Case skipped as Optional PS API with default length - TEST_BUFF_SIZEs not are supported.
TEST RESULT: PASSEDSKIPPED (Skip Code=0x2b)
******************************************
TEST: 40517 | DESCRIPTION: Success scenariostorage assest capacity modification check | UT: PS
[Info] Executing tests from non-secure
[Info] Executing PS tests
[Check 1] Set UID with data length zero and call storageTest Case skipped as Optional PS APIs
[Check 2] Resetting the length check not are supported.
TEST RESULT: PASSEDSKIPPED (Skip Code=0x2b)
******************************************
TEST: 406 | DESCRIPTION: Check for s************ Storage create flags | UT: PSSuite Report **********
[Info] Executing tests from non-secure
[Info] Executing PS testsTOTAL TESTS : 17
[Check 1] Call set API with flag - PSA_STORAGE_FLAG_NONETOTAL PASSED : 10
[Check 2] Call set API with flag - PSA_STORAGE_FLAG_NO_CONFIDENTIALITYTOTAL SIM ERROR : 0
[Check 3] Call set API with flag - PSA_STORAGE_FLAG_NO_REPLAY_PROTECTION
TOTAL FAILED : 1
TEST RESULT: PASSED
TOTAL SKIPPED : 6
******************************************
TEST: 407 | DESCRIPTION: Incorrect Size check | UT: PSEntering standby..
======Run psa-crypto-api-test:
[Info] Executing tests from non-secure/mnt/arm-linux/bin/psa-crypto-api-test
[Info] Executing PS testsOutput:
Create a valid Storage - TEST_BUFF_SIZE/2lines=8
Increase the length of storag***** PSA Architecture Test Suite - TEST_BUFF_SIZEVersion 1.4 *****
[Check 1] Call get API with old length - TEST_BUFF_SIZE/2Running.. Crypto Suite
[Check 2] Call get API with old length - TEST_BUFF_SIZE/4******************************************
TEST: 201 | DESCRIPTION: Testing crypto key management APIs | UT: psa_crypto_init
Decrease the length of storage - TEST_BUFF_SIZE/4[Info] Executing tests from non-secure
[Check 3] Call get API with old length - TEST_BUFF_SIZE/21] Test calling crypto functions before psa_crypto_init
[Check 4] Call get API with old length - TEST_BUFF_SIZE2] Test psa_crypto_init
[Check 5] Call get API with valid length - TEST_BUFF_SIZE/43] Test multiple psa_crypto_init
TEST RESULT: PASSED
******************************************
TEST: 408202 | DESCRIPTION: Invalid offset checkTesting crypto key management APIs | UT: PSpsa_import_key
[Info] Executing tests from non-secure
[Info] Executing PS tests
[Check 1] Try to access data with varying valid offsetest psa_import_key 16 bytes AES
[Check 2] Try to access data with varying invalid offset
est psa_import_key 24 bytes AES
TEST RESULT: PASSED
[Check 3] Test psa_import_key 32 bytes AES
******************************************
[Check 4] Test psa_import_key 2048 RSA public key
TEST: 409 | DESCRIPTION: Invalid Arguments check | UT: PS[Check 5] Test psa_import_key with RSA 2048 keypair
[Info] Executing tests from non-secure
Check 6] Test psa_import_key with DES 8 bytes key
[Info] Executing PS testsCheck 7] Test psa_import_key with Triple DES 2-Key
[Check 1] Call set API with NULL pointer and data length 08] Test psa_import_key with Triple DES 3-Key
[Check 2] Call get API with NULL read buffer and data length 09] Test psa_import_key with EC Public key
[Check 3] Remove the UID10] Test psa_import_key with EC keypair
[Check 4] Call get_info API to verify UID removed11] Test psa_import_key 16 bytes AES with invalid bits
[Check 5] Create UID12] Test psa_import_key with zerokey data_len and valid write buffer greater than the algorithm size
[Check 8] Call get API13] Test psa_import_key with NULL read buffer andincorrect key data length 0size
[Check 9] Increase the length14] Test psa_import_key with invalid key type value
TEST RESULT: PASSED
******************************************
TEST: 410203 | DESCRIPTION: UID value zero checkTesting crypto key management APIs | UT: PSpsa_export_key
[Info] Executing tests from non-secure
[Info] Executing PS testsCheck 1] Test psa_export_key 16 Byte AES
[Check 1] Creating storage with UID 0 should fail2] Test psa_export_key 24 Byte AES
[Check 2] Get_info for UID 0 should fail3] Test psa_export_key 32 Byte AES
[Check 3] Removing storage with UID 0 should fail
4] Test psa_export_key 2048 RSA public key
TEST RESULT: PASSED
[Check 5] Test psa_export_key with RSA 2048 keypair
******************************************
[Check 6] Test psa_export_key with DES 64 bit key
TEST: 411 | DESCRIPTION: Optional APIs: UID not found check | UT: PS[Check 7] Test psa_export_key with Triple DES 2-Key
[Info] Executing tests from non-secure
Check 8] Test psa_export_key with Triple DES 3-Key
[Info] Executing PS testsCheck 9] Test psa_export_key with EC Public key
Test Case skipped as Optional PS APIs are not supported.[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: SKIPPED (Skip Code=0x2b)PASSED
******************************************
TEST: 412204 | DESCRIPTION: Optional APIs: Invalid arguTesting crypto key managements and offset invalid | UT: PS APIs | UT: psa_export_public_key
[Info] Executing tests from non-secure
[Info] Executing PS testsCheck 1] Test psa_export_public_key 16 Byte AES
Test Case skipped as Optional PS APIs are not supported.
[Check 2] Test psa_export_public_key 24 Byte AES
TEST RESULT: SKIPPED (Skip Code=0x2b)
[Check 3] Test psa_export_public_key 32 Byte AES
******************************************
[Check 4] Test psa_export_public_key 2048 RSA public key
TEST: 413 | DESCRIPTION: Set_Extended and Create api : Success | UT: PS[Check 5] Test psa_export_public_key with RSA 2048 keypair
[Info] Executing tests from non-secure
Check 6] Test psa_export_public_key with DES 64 bit key
[Info] Executing PS testsCheck 7] Test psa_export_public_key with Triple DES 2-Key
Test Case skipped as Optional PS APIs are not supported.[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: SKIPPED (Skip Code=0x2b)PASSED
******************************************
TEST: 414205 | DESCRIPTION: Optional APIs not supported checkTesting crypto key management APIs | UT: PSpsa_destroy_key
[Info] Executing tests from non-secure
[Info] Executing PS tests
Optional PS APIs are not supported.[Check 1] Test psa_destroy_key 16 Byte AES
[Check 1] Call to create API should fail as API not supported2] Test psa_destroy_key 24 Byte AES
Failed at Checkpoint: 1[Check 3] Test psa_destroy_key 32 Byte AES
Actual: 0[Check 4] Test psa_destroy_key 2048 RSA public key
Expected: -134
TEST RESULT: FAILED (Error Code=0x1)
[Check 5] Test psa_destroy_key with RSA 2048 keypair
******************************************
[Check 6] Test psa_destroy_key with DES 64 bit key
TEST: 415 | DESCRIPTION: Create API write_once flag value check | UT: PS[Check 7] Test psa_destroy_key with Triple DES 2-Key
[Info] Executing tests from non-secure
Check 8] Test psa_destroy_key with Triple DES 3-Key
[Info] Executing PS testsCheck 9] Test psa_destroy_key with EC Public key
Test Case skipped as Optional PS APIs are not supported.[Check 10] Test psa_destroy_key with EC keypair
TEST RESULT: SKIPPED (Skip Code=0x2b)PASSED
******************************************
TEST: 41206 | DESCRIPTION: Storage assest capacity modificaTesting crypto hash function checks APIs | UT: PSpsa_hash_compute
[Info] Executing tests from non-secure
[Info] Executing PS testsCheck 1] Test psa_hash_compute with MD5 algorithm
Test Case skipped as Optional PS APIs not are supported.
[Check 2] Test psa_hash_compute with RIPEMD160 algorithm
TEST RESULT: SKIPPED (Skip Code=0x2b)
[Check 3] Test psa_hash_compute with SHA1 algorithm
******************************************
[Check 4] Test psa_hash_compute with SHA224 algorithm
TEST: 417 | DESCRIPTION: Storage assest capacity modification check | UT: PS[Check 5] Test psa_hash_compute with SHA256 algorithm
[Info] Executing tests from non-secure
Check 6] Test psa_hash_compute with SHA384 algorithm
[Info] Executing PS testsCheck 7] Test psa_hash_compute with SHA512 algorithm
[Check 8] Test Case skipped as Optional PS APIs not are supported.psa_hash_compute with small buffer size
[Check 9] Test psa_hash_compute with invalid algorithm
TEST RESULT: SKIPPED (Skip Code=0x2b)PASSED
******************************************
************ Storage Suite Report **********TEST: 207 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_compare
TOTAL TESTS : 17[Info] Executing tests from non-secure
TOTAL PASSED : 10[Check 1] Test psa_hash_compare with MD5 algorithm
TOTAL SIM ERROR : 0[Check 2] Test psa_hash_compare with RIPEMD160 algorithm
TOTAL FAILED : 1[Check 3] Test psa_hash_compare with SHA1 algorithm
TOTAL SKIPPED : 6[Check 4] Test psa_hash_compare with SHA224 algorithm
******************************************
[Check 5] Test psa_hash_compare with SHA256 algorithm
Entering standby..
======Run psa-crypto-api-test:[Check 6] Test psa_hash_compare with SHA384 algorithm
/mnt/arm-linux/bin/psa-crypto-api-test
Output:[Check 7] Test psa_hash_compare with SHA512 algorithm
lines=8[Check 8] Test psa_hash_compare with incorrect hash
***** PSA Architecture Test Suite - Version 1.4 *****[Check 9] Test psa_hash_compare with incorrect hash length
[Check 10] Test psa_hash_compare with invalid algorithm
Running.. Crypto SuiteTEST RESULT: PASSED
******************************************
TEST: 2018 | DESCRIPTION: Testing crypto key managementderivation APIs | UT: psa_crypto_init_key_derivation_setup
[Info] Executing tests from non-secure
[Check 1] Test calling crypto functions before psa_crypto_initpsa_key_derivation_setup - ECDH + HKDF-SHA-256
[Check 2] Test psa_crypto_initkey_derivation_setup - ECDH, unknown KDF
[Check 3] Test multiplepsa_key_derivation_setup - bad key derivation algorithm
[Check 4] Test psa_crypto_init_key_derivation_setup - Invalid Algorithm
TEST RESULT: PASSED
******************************************
TEST: 2029 | DESCRIPTION: Testing crypto key managementderivation APIs | UT: psa_import_key_key_derivation_input_bytes
[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 keykey_derivation_input_bytes - Step as Info
[Check 52] Test psa_import_key with RSA 2048 keypairkey_derivation_input_bytes - Step as secret
[Check 63] Test psa_import_key with DES 8 bytes keykey_derivation_input_bytes - Step as salt
[Check 74] Test psa_import_key with Triple DES 2-Keykey_derivation_input_bytes - Step as label
[Check 85] Test psa_import_key with Triple DES 3-Keykey_derivation_input_bytes - Step as seed
[Check 96] Test psa_import_key with EC Public keykey_derivation_input_bytes - Invalid step
[Check 10] Test psa_import_key with EC keypairTEST RESULT: PASSED
[Check 11] Test psa_import_key 16 bytes AES with invalid bits******************************************
[Check 12] Test psa_import_key withTEST: 210 | DESCRIPTION: Testing crypto key data greater than the algorithm sizeattributes APIs | UT: psa_key_attributes_set_get
[Check 13] Test psa_import_key with incorrect key data sizeInfo] Executing tests from non-secure
[Check 14] Test psa_import_key with invalidkey_attributes_set_get key type valueattributes
TEST RESULT: PASSED
******************************************
TEST: 20311 | DESCRIPTION: Testing crypto key managementhash functions APIs | UT: psa_export_keyhash_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_export_key 16 Byte AEShash_setup with MD5 algorithm
Failed at Checkpoint: 4
Actual: 0
Expected: -137
[Check 2] Test psa_export_key 24 Byte AESTEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 212 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_update
[Check 3] Test psa_export_key 32 Byte AESInfo] Executing tests from non-secure
[Check 41] Test psa_export_key 2048 RSA public keyhash_update with MD5 algorithm
[Check 52] Test psa_export_keyhash_update with RSA 2048 keypairIPEMD160 algorithm
[Check 63] Test psa_export_keyhash_update with DES 64 bit keySHA1 algorithm
[Check 74] Test psa_export_keyhash_update with Triple DES 2-KeySHA224 algorithm
[Check 85] Test psa_export_keyhash_update with Triple DES 3-KeySHA256 algorithm
[Check 96] Test psa_export_keyhash_update with EC Public keySHA384 algorithm
[Check 107] Test psa_export_keyhash_update with EC keypairSHA512 algorithm
[Check 118] Test psa_export_keyhash_update with key policy verifyout hash setup
[Check 129] Test psa_export_keyhash_update with less buffer sizecompleted opertaion handle
TEST RESULT: PASSED
******************************************
TEST: 20413 | DESCRIPTION: Testing crypto key managementhash functions APIs | UT: psa_export_public_keyhash_verify
[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 AEShash_verify with MD5 algorithm
[Check 32] Test psa_export_public_key 32 Byte AESa_hash_verify with RIPEMD160 algorithm
[Check 43] Test psa_export_public_key 2048 RSA public keyhash_verify with SHA1 algorithm
[Check 54] Test psa_export_public_kehash_verify with RSA 2048 keypairSHA224 algorithm
[Check 65] Test psa_export_public_kehash_verify with DES 64 bit keySHA256 algorithm
[Check 76] Test psa_export_public_kehash_verify with Triple DES 2-KeySHA384 algorithm
[Check 87] Test psa_export_public_kehash_verify with Triple DES 3-KeySHA512 algorithm
[Check 98] Test psa_export_public_kehash_verify with EC Public keyincorrect expected hash
[Check 109] Test psa_export_public_kehash_verify with EC keypairincorrect hash length
[Check 11] T0] test psa_export_public_kehash_verify with less buffer sizeinactive & invalid operation handle
TEST RESULT: PASSED
******************************************
TEST: 20514 | DESCRIPTION: Testing crypto key managementhash functions APIs | UT: psa_destroy_keyhash_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_destroy_key 16 Byte AES
[Check 2] Test psa_destroy_key 24 Byte AEShash_finish with MD5 algorithm
[Check 32] Test psa_destroy_key 32 Byte AEShash_finish with RIPEMD160 algorithm
[Check 43] Test psa_destroy_key 2048 RSA public keyhash_finish with SHA1 algorithm
[Check 54] Test psa_destroy_keyhash_finish with RSA 2048 keypairSHA224 algorithm
[Check 65] Test psa_destroy_keyhash_finish with DES 64 bit keySHA256 algorithm
[Check 76] Test psa_destroy_keyhash_finish with Triple DES 2-KeySHA384 algorithm
[Check 87] Test psa_destroy_keyhash_finish with Triple DES 3-KeySHA512 algorithm
[Check 98] Test psa_destroy_keyhash_finish with EC Public keyinvalid hash buffer size
[Check 10] T9] test psa_destroy_keyhash_finish with EC keypairinactive operation handle
TEST RESULT: PASSED
******************************************
TEST: 20615 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_computeabort
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_compute with MD5 algorithm
[Check 2] Test psa_hash_computeabort with RIPEMD160MD5 algorithm
[Check 32] Test psa_hash_computeabort with SHA1RIPEMD160 algorithm
[Check 43] Test psa_hash_computeabort with SHA2241 algorithm
[Check 54] Test psa_hash_computeabort with SHA25624 algorithm
[Check 65] Test psa_hash_computeabort with SHA384256 algorithm
[Check 76] Test psa_hash_computeabort with SHA512384 algorithm
[Check 87] Test psa_hash_computeabort with small buffer sizeSHA512 algorithm
[Check 98] Test psa_hash_compute with invalid algorithmfinish after calling psa_hash_abort
TEST RESULT: PASSED
******************************************
TEST: 20716 | DESCRIPTION: Testing crypto hashgenerator functions APIs | UT: psa_hash_comparegenerate_key
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_compare with MD5 algorithmgenerate_key 16 Byte AES
[Check 2] Test psa_hash_compare with RIPEMD160 algorithmgenerate_key 24 Byte AES
[Check 3] Test psa_hash_compare with SHA1 algorithmgenerate_key 32 Byte AES
[Check 4] Test psa_hash_comparegenerate_key with SHA224 algorithmDES 64 bit key
[Check 5] Test psa_hash_comparegenerate_key with SHA256 algorithmTriple DES 2-Key
[Check 6] Test psa_hash_comparegenerate_key with SHA384 algorithmTriple DES 3-Key
[Check 7] Test psa_hash_comparegenerate_key with SHA512 algorithmRSA 2048 Keypair
[Check 8] Test psa_hash_comparegenerate_key with incorrect hashECC KeyPair
[Check 9] Test psa_hash_comparegenerate_key with incorrect hash lengthRSA 2048 Public key
[Check 10] Test psa_hash_compare with invalid algorithm Failed at Checkpoint: 3
Actual: -134
Expected: -135
TEST RESULT: PASSEDFAILED (Error Code=0x1)
******************************************
TEST: 20817 | DESCRIPTION: Testing crypto key derivgeneration APIs | UT: psa_key_derivation_setupgenerate_random
[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 algorithmgenerate_random to get 0 Byte data
[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_bytes2] Test psa_generate_random to get 16 Byte data
[Info] Executing tests from non-secureCheck 3] Test psa_generate_random to get 24 Byte data
[Check 14] Test psa_key_derivation_input_bytes - Step as Infogenerate_random to get 32 Byte data
[Check 25] Test psa_key_derivation_input_bytes - Step as secretgenerate_random to get 64 Byte data
[Check 36] Test psa_key_derivation_input_bytes - Step as saltgenerate_random to get 128 Byte data
[Check 47] Test psa_key_derivation_input_bytes - Step as labelgenerate_random to get 256 Byte data
[Check 58] Test psa_key_derivation_input_bytes - Step as seedgenerate_random to get 512 Byte data
[Check 69] Test psa_key_derivation_input_bytes - Invalid stepgenerate_random to get 1000 Byte data
TEST RESULT: PASSED
******************************************
TEST: 2108 | DESCRIPTION: Testing crypto key attributesderivation APIs | UT: psa_key_attributes_set_getderivation_input_key
[Info] Executing tests from non-secure
[Check 1] Test psa_key_attributes_set_get derivation_input_key attributes
16 Byte Key
TEST RESULT: PASSED
[Check 2] Test psa_key_derivation_input_key with invalid usage
******************************************
[Check 3] Test psa_key_derivation_input_key with step as label
TEST: 211 | DESCRIPTION:[Check 4] Testing crypto hash functions APIs | UT: psa_hash_setup psa_key_derivation_input_key with step as info
[Info] Executing tests from non-secureCheck 5] Test psa_key_derivation_input_key with step as seed
[Check 16] Test psa_hash_setup_key_derivation_input_key with MD5 algorithmstep as salt
Failed at Checkpoint: 4[Check 7] Test psa_key_derivation_input_key with key type as AES(not derive)
Actual: 0[Check 8] Test psa_key_derivation_input_key incorrect key algorithm
Expected: -137[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: FAILED (Error Code=0x1)PASSED
******************************************
TEST: 2129 | DESCRIPTION: Testing crypto hash funckey derivations APIs | UT: psa_hash_update_key_derivation_key_agreement
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_update with MD5 algorithmkey_derivation_key_agreement - ECDH SECP256R1
[Check 2] Test psa_hash_update with RIPEMD160 algorithmkey_derivation_key_agreement - Invalid step
[Check 3] Test psa_hash_update with SHA1 algorithmkey_derivation_key_agreement - ECDH SECP384R1
[Check 4] Test psa_hash_update with SHA224 algorithmkey_derivation_key_agreement - Invalid usage
[Check 5] Test psa_hash_update with SHA256 algorithmkey_derivation_key_agreement - KDF not a key agreement alg
[Check 6] Test psa_hash_update with SHA384 algorithmkey_derivation_key_agreement - Public key of different curve
[Check 7] Test psa_hash_update with SHA512 algorithmkey_derivation_key_agreement - Pub key instead of Prv key
[Check 8] Test psa_hash_update without hash setupkey_derivation_key_agreement - Invalid handle
[Check 9] Test psa_hash_update with completed opertaionkey_derivation_key_agreement - Zero as handle
TEST RESULT: PASSED
******************************************
TEST: 21320 | DESCRIPTION: Testing crypto hash funckey derivations APIs | UT: psa_hash_verifykey_derivation_output_bytes
[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 algorithmkey_derivation_output_bytes - HKDF
[Check 42] Test psa_hash_verify with SHA224 algorithmkey_derivation_output_bytes - optional salt
[Check 53] Test psa_hash_verify with SHA256 algorithmkey_derivation_output_bytes - capacity < output_length
[Check 64] Test psa_hash_verify with SHA384 algorithmkey_derivation_output_bytes - missing info
[Check 75] Test psa_hash_verify with SHA512 algorithmkey_derivation_output_bytes - missing salt/secret/info
[Check 86] Test psa_hash_verify with incorrect expected hashkey_derivation_output_bytes - TLS12_PRF
[Check 97] Test psa_hash_verify with incorrect hash key_derivation_output_bytes - capacity < output_length
[Check 10] t8] Test psa_hash_verify with inactive & invalid operation handlekey_derivation_output_bytes - missing seed/secret/label
TEST RESULT: PASSED
******************************************
TEST: 21421 | DESCRIPTION: Testing crypto hash funckey derivations APIs | UT: psa_hash_finish_key_derivation_output_key
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_finish with MD5 algorithm
[Check 2] Test psa_hash_finish with RIPEMD160 algorithmkey_derivation_output_key - Key
[Check 32] Test psa_hash_finish with SHA1 algorithmkey_derivation_output_key - Info
[Check 43] Test psa_hash_finish with SHA224 algorithmkey_derivation_output_key - Salt
[Check 54] Test psa_hash_finish with SHA256 algorithm_key_derivation_output_key - Greater Capacity than available
[Check 65] Test psa_hash_finish with SHA384 algorithmkey_derivation_output_key - ECC Public key
[Check 76] Test psa_hash_finish with SHA512 algorithmkey_derivation_output_key - ECC keypair
[Check 87] Test psa_hash_finish with invalid hash buffer size_key_derivation_output_key - RSA Public Key[Check 8] Test psa_key_derivation_output_key - RSA keypair
[Check 9] tTest psa_hash_finish with inactive operation handlekey_derivation_output_key - Invalid key size
TEST RESULT: PASSED
******************************************
TEST: 21522 | DESCRIPTION: Testing crypto hash funckey derivations APIs | UT: psa_hash_key_derivation_abort
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_abort with MD5 algorithmkey_derivation_abort
[Check 2] Test psa_hash_abort with RIPEMD160 algorithmTEST RESULT: PASSED
[Check 3] Test psa_hash_abort with SHA1 algorithm******************************************
TEST: 223 | DESCRIPTION: Testing crypto key derivation APIs | UT: psa_key_derivation_set_get_capacity
[Check 4] Test psa_hash_abort with SHA224 algorithmInfo] Executing tests from non-secure
[Check 51] Test psa_hash_abort with SHA256 algorithm_key_derivation_set_get_capacity - < operation's capacity
[Check 62] Test psa_hash_abort with SHA384 algorithm_key_derivation_set_get_capacity - = operation's capacity
[Check 73] Test psa_hash_abort with SHA512 algorithm_key_derivation_set_get_capacity - > operation's capacity
[Check 84] Test psa_hash_finish after calling psa_hash_abortkey_derivation_set_get_capacity - unchanged capacity
TEST RESULT: PASSED
******************************************
TEST: 21624 | DESCRIPTION: Testing crypto generator functionsAEAD APIs | UT: psa_generate_keyaead_encrypt
[Info] Executing tests from non-secure
[Check 1] Test psa_generate_key 16 Byte AES
[Check 2] Test psa_generate_key 24 Byte AESaead_encrypt - CCM - AES - 13B nonce & 8B add data
[Check 3] Test psa_generate_key 32 Byte AES Failed at Checkpoint: 4
[Check 4] Test psa_generate_key with DES 64 bit key Actual: -134
Expected: 0
[Check 5] Test psa_generate_key with Triple DES 2-KeyTEST RESULT: FAILED (Error Code=0x1)
[Check 6] Test psa_generate_key with Triple DES 3-Key******************************************
[Check 7] Test psa_generate_key with RSA 2048 KeypairTEST: 225 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_decrypt
[Check 8] Test psa_generate_key with ECC KeyPairInfo] Executing tests from non-secure
[Check 91] Test psa_generate_key with RSA 2048 Public keyaead_decrypt - CCM - AES - 13B nonce & 8B add data
Failed at Checkpoint: 34
Actual: -134
Expected: -1350
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 21726 | DESCRIPTION: Testing crypto generationMAC APIs | UT: psa_generate_randommac_sign_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_generate_random to get 0 Byte datamac_sign_setup - HMAC - SHA256
[Check 2] Test psa_generate_random to get 16 Byte data Failed at Checkpoint: 4
[Check 3] Test psa_generate_random to get 24 Byte data Actual: -133
Expected: 0
[Check 4] Test psa_generate_random to get 32 Byte dataTEST RESULT: FAILED (Error Code=0x1)
[Check 5] Test psa_generate_random to get 64 Byte data******************************************
[Check 6] Test psa_generate_random to get 128 Byte dataTEST: 227 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_update
[Check 7] Test psa_generate_random to get 256 Byte dataInfo] Executing tests from non-secure
[Check 81] Test psa_generate_random to get 512 Byte datamac_update - HMAC - SHA256 - 64 Byte
[Check 9] Test psa_generate_random to get 1000 Byte data Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: PASSEDFAILED (Error Code=0x1)
******************************************
TEST: 21828 | DESCRIPTION: Testing crypto key derivationMAC APIs | UT: psa_key_derivation_input_keymac_sign_finish
[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 labelmac_sign_finish - HMAC - SHA224
[Check 4] Test psa_key_derivation_input_key with step as info Failed at Checkpoint: 4
[Check 5] Test psa_key_derivation_input_key with step as seed Actual: -133
Expected: 0
[Check 6] Test psa_key_derivation_input_key with step as saltTEST RESULT: FAILED (Error Code=0x1)
[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 algorithmTEST: 229 | DESCRIPTION: Testing crypto MAC APIs | UT: psa_mac_verify_setup
[Check 9] Test psa_key_derivation_input_key with key type as 2048 RSA public keyInfo] Executing tests from non-secure
[Check 10] Test psa_key_derivation_input_key with key type as RSA 2048 keypairmac_verify_setup - HMAC - SHA256
[Check 11] Test psa_key_derivation_input_key with zero as step Failed at Checkpoint: 4
[Check 12] Test psa_cipher_decrypt_setup - Invalid key handle Actual: -133
[Check 13] Test psa_cipher_decrypt_setup - Zero as key handle Expected: 0
TEST RESULT: PASSEDFAILED (Error Code=0x1)
******************************************
TEST: 21930 | DESCRIPTION: Testing crypto key derivationMAC APIs | UT: psa_key_derivation_key_agreementmac_verify_finish
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_key_agreement - ECDH SECP256R1mac_verify_finish - HMAC - SHA224
[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 Failed at Checkpoint: 4
[Check 8] Test psa_key_derivation_key_agreement - Invalid handle Actual: -133
[Check 9] Test psa_key_derivation_key_agreement - Zero as handle Expected: 0
TEST RESULT: PASSEDFAILED (Error Code=0x1)
******************************************
TEST: 22031 | DESCRIPTION: Testing crypto key derivationMAC APIs | UT: psa_key_derivation_output_bytesmac_abort
[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_lengthmac_abort - HMAC - SHA224
[Check 42] Test psa_key_derivation_output_bytes - missing infomac_abort - HMAC - SHA224 - Truncated 8 Byte
[Check 53] Test psa_key_derivation_output_bytes - missing salt/secret/infomac_abort - HMAC - SHA256
[Check 64] Test psa_key_derivation_output_bytes - TLS12_PRFmac_abort - HMAC - SHA512
[Check 75] Test psa_key_derivation_output_bytes - capacity < output_lengthmac_abort - CMAC - AES
[Check 86] Test psa_key_derivation_output_bytes - missmac_sign_finish after calling seed/secret/labelpsa_mac_abort
TEST RESULT: PASSED
******************************************
TEST: 22132 | DESCRIPTION: Testing crypto key derivationsymmetric cipher APIs | UT: psa_key_derivation_output_keycipher_encrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_output_key - Keycipher_encrypt_setup 16 Byte AES
[Check 2] Test psa_key_derivation_output_key - Infocipher_encrypt_setup 24 Byte AES
[Check 3] Test psa_key_derivation_output_key - Saltcipher_encrypt_setup 32 Byte AES
[Check 4] Test psa_key_derivation_output_key - Greater Capacity than availablecipher_encrypt_setup DES 64 bit key
[Check 5] Test psa_key_derivation_output_key - ECC Public keycipher_encrypt_setup Triple DES 2-Key
[Check 6] Test psa_key_derivation_output_key - ECC keypaircipher_encrypt_setup Triple DES 3-Key
[Check 7] Test psa_key_derivation_output_key - RSA Public Key[Check 8] Test psa_key_derivation_output_key - RSA keypaircipher_encrypt_setup 16 Byte raw data
[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_abort8] Test psa_cipher_encrypt_setup - not a cipher algorithm
[Info] Executing tests from non-secureCheck 9] Test psa_cipher_encrypt_setup - unknown cipher algorithm
[Check 10] Test psa_key_derivation_abortcipher_encrypt_setup - incompatible key ARC4
Failed at Checkpoint: 3
Actual: -134
Expected: 0
TEST RESULT: PASSEDFAILED (Error Code=0x1)
******************************************
TEST: 22333 | DESCRIPTION: Testing crypto key derivationsymmetric cipher APIs | UT: psa_key_derivation_set_get_capacitycipher_decrypt_setup
[Info] Executing tests from non-secure
[Check 1] Test psa_key_derivation_set_get_capacity - < operation's capacitycipher_decrypt_setup 16 Byte AES
[Check 2] Test psa_key_derivation_set_get_capacity - = operation's capacitycipher_decrypt_setup 24 Byte AES
[Check 3] Test psa_key_derivation_set_get_capacity - > operation's capacitycipher_decrypt_setup 32 Byte AES
[Check 4] Test psa_key_derivation_set_get_capacity - unchanged capacity
TEST RESULT: PASSED
******************************************
TEST: 224 | DESCRIPTION: Testing crypto AEAD APIs | UT: psa_aead_encryptcipher_decrypt_setup DES 64 bit key
[Info] Executing tests from non-secureCheck 5] Test psa_cipher_decrypt_setup Triple DES 2-Key
[Check 16] Test psa_aead_encipher_decrypt - CCM - AES - 13B nonce & 8B add data
Failed at Checkpoint: 4
Actual: -134_setup Triple DES 3-Key
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
[Check 7] Test psa_cipher_decrypt_setup 16 Byte raw data
TEST: 225 | DESCRIPTION: Testing [Check 8] Test psa_cipher_decrypto AEAD APIs | UT: psa_aead_decrypt_setup - not a cipher algorithm
[Info] Executing tests from non-secureCheck 9] Test psa_cipher_decrypt_setup - unknown cipher algorithm
[Check 10] Test psa_aeadcipher_decrypt - CCM - AES - 13B nonce & 8B add data_setup - incompatible key ARC4
Failed at Checkpoint: 43
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 22634 | DESCRIPTION: Testing crypto MACsymmetric cipher APIs | UT: psa_mac_sign_setupcipher_generate_iv
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_sign_setup - HMAC - SHA256
Failed at Checkpoint: 4
Actual: -133cipher_generate_iv 16 Byte AES
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
[Check 2] Test psa_cipher_generate_iv 24 Byte AES
TEST: 227 | DESCRIPTION:[Check 3] Testing crypto MAC APIs | UT: psa_mac_update psa_cipher_generate_iv 32 Byte AES
[Info] Executing tests from non-secureCheck 4] Test psa_cipher_generate_iv DES 64 bit key
[Check 15] Test psa_mac_update - HMAC - SHA256 - 64 Bytecipher_generate_iv DES 2-Key
Failed at Checkpoint: 4[Check 6] Test psa_cipher_generate_iv DES 3-Key
Actual: -133[Check 7] Test psa_cipher_generate_iv AES - small iv buffer
Expected: 0[Check 8] Test psa_cipher_generate_iv DES - small iv buffer
TEST RESULT: FAILED (Error Code=0x1)PASSED
******************************************
TEST: 22835 | DESCRIPTION: Testing crypto MACsymmetric cipher APIs | UT: psa_mac_sign_finishcipher_set_iv
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_sign_finish - HMAC - SHA224
Failed at Checkpoint: 4cipher_set_iv 16 Byte AES
Actual: -133[Check 2] Test psa_cipher_set_iv 24 Byte AES
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
[Check 3] Test psa_cipher_set_iv 32 Byte AES
******************************************
[Check 4] Test psa_cipher_set_iv DES 64 bit key
TEST: 229 | DESCRIPTION:[Check 5] Testing crypto MAC APIs | UT: psa_mac_verify_setup psa_cipher_set_iv DES 2-Key
[Info] Executing tests from non-secureCheck 6] Test psa_cipher_set_iv DES 3-Key
[Check 17] Test psa_mac_verify_setup - HMAC - SHA256cipher_set_iv AES - small iv buffer
Failed at Checkpoint: 4[Check 8] Test psa_cipher_set_iv DES - small iv buffer
Actual: -133[Check 9] Test psa_cipher_set_iv AES - large iv buffer
Expected: 0[Check 10] Test psa_cipher_set_iv DES - large iv buffer
TEST RESULT: FAILED (Error Code=0x1)PASSED
******************************************
TEST: 2306 | DESCRIPTION: Testing crypto MACsymmetric cipher APIs | UT: psa_mac_verify_finishcipher_update
[Info] Executing tests from non-secure
[Check 1] Test psa_mac_verify_finish - HMAC - SHA224cipher_update - Encrypt - AES CBC_NO_PADDING
Failed at Checkpoint: 4[Check 2] Test psa_cipher_update - Encrypt - AES CBC_NO_PADDING (Short in)
Actual: -133[Check 3] Test psa_cipher_update - Encrypt - AES CBC_PKCS7
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
[Check 4] Test psa_cipher_update - Encrypt - AES CBC_PKCS7 (Short input)
******************************************
[Check 5] Test psa_cipher_update - Encrypt - AES CTR
TEST: 231 | DESCRIPTION: Testing [Check 6] Test psa_cipher_update - Encrypto MAC APIs | UT: psa_mac_abort - DES CBC (nopad)
[Info] Executing tests from non-secureCheck 7] Test psa_cipher_update - Encrypt - 2-key 3DE -CBC (nopad)
[Check 18] Test psa_mac_aborcipher_update - Encrypt - HMAC - SHA2243-key 3DE -CBC (nopad)
[Check 29] Test psa_mac_abort - HMAC - SHA224 - Truncated 8 Bytecipher_update - Encrypt - small output buffer size
[Check 310] Test psa_mac_abort - HMAC - SHA256cipher_update - Decrypt - AES CBC_NO_PADDING
[Check 411] Test psa_mac_abort - HMAC - SHA512cipher_update - Decrypt - AES CBC_NO_PADDING (Short in)
[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
Failed at Checkpoint: 3
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 3
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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_PKCS7Check 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
Failed at Checkpoint: 5
Actual: 0
Expected: -137
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -137
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -137
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -133
Expected: -149
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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 - Encrypt - CCM
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
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
Failed at Checkpoint: 4
Actual: -132
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 262 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_suspend
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_suspend - MD5
Failed at Checkpoint: 5
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
TEST: 263 | DESCRIPTION: Testing crypto hash functions APIs | UT: psa_hash_resume
[Info] Executing tests from non-secure
[Check 1] Test psa_hash_resume - MD5
Failed at Checkpoint: 5
Actual: -134
Expected: 0
TEST RESULT: FAILED (Error Code=0x1)
******************************************
************ Crypto Suite Report **********
TOTAL TESTS : 63
TOTAL PASSED : 34
TOTAL SIM ERROR : 0
TOTAL FAILED : 29
TOTAL SKIPPED : 0
******************************************
Entering standby..
======Run psa-iat-api-test
/mnt/arm-linux/bin/psa-iat-api-test
Output:
lines=8
***** 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
[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..
======Run components test
/mnt/arm-linux/bin/component-test -v
Output:
lines=8
TEST(UefiVariableStoreTests, noRemoveCheck) - 2866 ms
TEST(UefiVariableStoreTests, readOnlycheck) - 700 ms
TEST(UefiVariableStoreTests, unsupportedAttribute) - 311 ms
TEST(UefiVariableStoreTests, failedNvSet) - 781 ms
TEST(UefiVariableStoreTests, enumerateStoreContents) - 1035 ms
TEST(UefiVariableStoreTests, runtimeAccess) - 674 ms
TEST(UefiVariableStoreTests, bootServiceAccess) - 526 ms
TEST(UefiVariableStoreTests, removePersistent) - 694 ms
TEST(UefiVariableStoreTests, removeVolatile) - 954 ms
TEST(UefiVariableStoreTests, persistentSetGet) - 767 ms
TEST(UefiVariableStoreTests, setGetRoundtrip) - 655 ms
TEST(UefiVariableIndexTests, setCheckConstraintsNonExistingVar) - 486 ms
TEST(UefiVariableIndexTests, setCheckConstraintsExistingVar) - 593 ms
TEST(UefiVariableIndexTests, checkIterator) - 347 ms
TEST(UefiVariableIndexTests, removeVariable) - 481 ms
TEST(UefiVariableIndexTests, dumpBufferTooSmall) - 265 ms
TEST(UefiVariableIndexTests, dumpLoadRoadtrip) - 347 ms
TEST(UefiVariableIndexTests, enumerateStore) - 354 ms
TEST(UefiVariableIndexTests, variableIndexFull) - 347 ms
TEST(UefiVariableIndexTests, addWithOversizedName) - 578 ms
TEST(UefiVariableIndexTests, emptyIndexOperations) - 269 ms
TEST(SfsTests, psCreateAndSetExtended) - 1386 ms
TEST(SfsTests, psCreateAndSet) - 282 ms
TEST(SfsTests, itsStorageLimitTest) - 299 ms
TEST(SfsTests, itsStoreNewItem) - 245 ms
TEST(MockStoreTests, psCreateAndSetExtended) - 186 ms
TEST(MockStoreTests, psCreateAndSet) - 175 ms
TEST(MockStoreTests, itsStorageLimitTest) - 115 ms
TEST(MockStoreTests, itsStoreNewItem) - 174 ms
TEST(SecureStorageProxyTests, psCreateAndSetExtended) - 1011 ms
TEST(SecureStorageProxyTests, psCreateAndSet) - 316 ms
TEST(SecureStorageProxyTests, itsStorageLimitTest) - 261 ms
TEST(SecureStorageProxyTests, itsStoreNewItem) - 349 ms
TEST(SecureStorageClientTests, psCreateAndSetExtended) - 377 ms
TEST(SecureStorageClientTests, psCreateAndSet) - 251 ms
TEST(SecureStorageClientTests, itsStorageLimitTest) - 198 ms
TEST(SecureStorageClientTests, itsStoreNewItem) - 250 ms
TEST(CryptoProtocolPackedcChecks, checkKeyUsage) - 34 ms
TEST(CryptoProtocolPackedcChecks, checkKeyLifetime) - 71 ms
TEST(CryptoProtocolPackedcChecks, checkAlg) - 51 ms
TEST(CryptoProtocolPackedcChecks, checkDhGroup) - 14 ms
TEST(CryptoProtocolPackedcChecks, checkEccCurve) - 72 ms
TEST(CryptoProtocolPackedcChecks, checkKeyType) - 38 ms
TEST(CryptoProtocolProtobufChecks, checkKeyUsage) - 72 ms
TEST(CryptoProtocolProtobufChecks, checkKeyLifetime) - 0 ms
TEST(CryptoProtocolProtobufChecks, checkAlg) - 82 ms
TEST(CryptoProtocolProtobufChecks, checkDhGroup) - 48 ms
TEST(CryptoProtocolProtobufChecks, checkEccCurve) - 48 ms
TEST(CryptoProtocolProtobufChecks, checkKeyType) - 48 ms
TEST(CryptoProtocolOpcodeChecks, checkPackedcToProtobuf) - 36 ms
TEST(CryptoKeyDerivationServicePackedcTests, deriveAbort) - 11024 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveBytes) - 2534 ms
TEST(CryptoKeyDerivationServicePackedcTests, hkdfDeriveKey) - 1268 ms
TEST(CryptoMacServicePackedcTests, macAbort) - 1390 ms
TEST(CryptoMacServicePackedcTests, signAndVerify) - 69797 ms
TEST(CryptoCipherServicePackedcTests, cipherAbort) - 1102 ms
TEST(CryptoCipherServicePackedcTests, encryptDecryptRoundtrip) - 36978 ms
TEST(CryptoHashServicePackedcTests, hashAbort) - 5746 ms
TEST(CryptoHashServicePackedcTests, hashAndVerify) - 13235 ms
TEST(CryptoHashServicePackedcTests, calculateHash) - 1110 ms
TEST(CryptoServicePackedcTests, generateRandomNumbers) - 2590 ms
TEST(CryptoServicePackedcTests, asymEncryptDecryptWithSalt) - 4135314 ms
TEST(CryptoServicePackedcTests, asymEncryptDecrypt) - 247677 ms
TEST(CryptoServicePackedcTests, signAndVerifyEat) - 1047035 ms
TEST(CryptoServicePackedcTests, signAndVerifyHash) - 1044391 ms
TEST(CryptoServicePackedcTests, exportAndImportKeyPair) - 86605 ms
TEST(CryptoServicePackedcTests, exportPublicKey) - 172286 ms
TEST(CryptoServicePackedcTests, purgeKey) - 86783 ms
TEST(CryptoServicePackedcTests, copyKey) - 197341 ms
TEST(CryptoServicePackedcTests, generatePersistentKeys) - 173570 ms
TEST(CryptoServicePackedcTests, generateVolatileKeys) - 173408 ms
TEST(CryptoServiceProtobufTests, generateRandomNumbers) - 3875 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecryptWithSalt) - 1283202 ms
TEST(CryptoServiceProtobufTests, asymEncryptDecrypt) - 299963 ms
TEST(CryptoServiceProtobufTests, signAndVerifyHash) - 1048599 ms
TEST(CryptoServiceProtobufTests, exportAndImportKeyPair) - 86889 ms
TEST(CryptoServiceProtobufTests, exportPublicKey) - 173709 ms
TEST(CryptoServiceProtobufTests, generatePersistentKeys) - 173080 ms
TEST(CryptoServiceProtobufTests, generateVolatileKeys) - 172469 ms
TEST(CryptoServiceLimitTests, volatileRsaKeyPairLimit) - 20181432 ms
TEST(CryptoServiceLimitTests, volatileEccKeyPairLimit) - 5270201 ms
TEST(CryptoFaultTests, randomNumbersWithBrokenStorage) - 347 ms
TEST(CryptoFaultTests, persistentKeysWithBrokenStorage) - 86284 ms
TEST(CryptoFaultTests, volatileKeyWithBrokenStorage) - 87197 ms
TEST(PocCryptoOpTests, checkOpSequence) - 271709 ms
TEST(CryptoMsgTests, SignHashOutMsgTest) - 266 ms
TEST(CryptoMsgTests, SignHashInMsgTest) - 230 ms
TEST(CryptoMsgTests, ExportPublicKeyOutMsgTest) - 0 ms
TEST(CryptoMsgTests, ExportPublicKeyInMsgTest) - 364 ms
TEST(CryptoMsgTests, GenerateKeyInMsgTest) - 386 ms
TEST(CryptoContextPoolTests, multipleContexts) - 39721 ms
TEST(CryptoContextPoolTests, singleContext) - 47 ms
TEST(CryptoContextPoolTests, checkEmptyPool) - 67 ms
TEST(AttestationProvisioningTests, provisionedIak) - 87586 ms
TEST(AttestationProvisioningTests, selfGeneratedIak) - 258655 ms
TEST(AttestationServiceTests, repeatedOperation) - 19761141 ms
TEST(AttestationServiceTests, invalidChallengeLen) - 156 ms
TEST(AttestationServiceTests, checkTokenSize) - 369737 ms
TEST(AttestationReporterTests, createReport) - 703234 ms
TEST(TcgEventLogTests, interateBootMeasurements) - 140 ms
TEST(DiscoveryServiceTests, checkServiceInfo) - 341 ms
TEST(ServiceNameTests, readService) - 300 ms
TEST(ServiceNameTests, checkFields) - 391 ms
TEST(ServiceNameTests, checkInvalidServiceNames) - 48 ms
TEST(ServiceNameTests, checkValidServiceNames) - 145 ms
TEST(ServiceFrameworkTests, serviceProviderChain) - 100 ms
TEST(ServiceFrameworkTests, serviceWithOps) - 86 ms
TEST(ServiceFrameworkTests, serviceWithNoOps) - 87 ms
TEST(RpcStatusProtocolChecks, checkProtobufRpcStatusCodes) - 73 ms
TEST(ConfigRamstoreTests, checkMultipleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkSingleConfig) - 0 ms
TEST(ConfigRamstoreTests, checkEmptyConfig) - 39 ms
TEST(EndianTests, le64) - 38 ms
TEST(EndianTests, le32) - 38 ms
TEST(EndianTests, le16) - 42 ms
TEST(EndianTests, le8) - 97 ms
TEST(TlvTests, encodeWrongOrder) - 53 ms
TEST(TlvTests, encodeInsufficientSpace) - 81 ms
TEST(TlvTests, encodeRecords) - 50 ms
TEST(TlvTests, decodeBadRecords) - 39 ms
TEST(TlvTests, findAndDecodeMissingOptional) - 19 ms
TEST(TlvTests, findAndDecode) - 33 ms
TEST(TlvTests, decodeGoodRecords) - 72 ms
TEST(UuidTests, parseValidUuidToReversed) - 81 ms
TEST(UuidTests, parseError) - 73 ms
TEST(UuidTests, parseUuidInUrn) - 82 ms
TEST(UuidTests, parseValidUuidMixedCase) - 86 ms
TEST(UuidTests, parseValidUuidLowerCase) - 19 ms
TEST(TsDemoTests, runTsDemo) - 2497184 ms
OK (129 tests, 129 ran, 18207 checks, 0 ignored, 0 filtered out, 60431682 ms)
======xtest
OP-TEE's built-in test solution (`xtest`) can be used to sanity check the system. This does invoke some parts of the SPMC, but none of the Trusted Services components. Expected result is 100% success:
lines=8
TEE test application started over default TEE instance
######################################################
#
# regression
#
######################################################
* regression_1001 Core self tests
o regression_1001.1 Core self tests
regression_1001.1 OK
o regression_1001.2 Core dt_driver self tests
regression_1001.2 OK
regression_1001 OK
* regression_1002 PTA parameters
regression_1002 OK
* regression_1003 Core internal read/write mutex
Number of parallel threads: 6 (2 writers and 4 readers)
Max read concurrency: 2
Max read waiters: 2
Mean read concurrency: 1.4
Mean read waiting: 1.0125
regression_1003 OK
<...>
<...>
regression_8001 OK
regression_8002 OK
regression_8101 OK
regression_8102 OK
regression_8103 OK
+-----------------------------------------------------
26258 subtests of which 0 failed
95 test cases of which 0 failed
0 test cases were skipped
TEE test application done!