CA/TA接口说明
安全存储
- 从CCOS 1.7.1开始,如下安全存储接口在创建持久化对象时,支持配置数据块加密大小配置。参数flags或上TEE_DATA_FLAG_LARGE_CRYPTO_UNIT,则表示以安全存储加密块大小为3K,不设置flag,加密块大小默认为1K。
TEE_Result TEE_CreatePersistentObject(uint32_t storageID, const void *objectID, size_t objectIDLen, uint32_t flags, TEE_ObjectHandle attributes, const void *initialData, size_t initialDataLen, TEE_ObjectHandle *object); TEE_Result TEE_OpenPersistentObject(uint32_t storageID, const void *objectID, size_t objectIDLen, uint32_t flags, TEE_ObjectHandle *object);
目前TEE OS版本使用的加密块大小情况如下:- itrustee和CCOS≥1.7.1版本的默认使用1K加密块大小。
- CCOS≤1.7.0版本的使用3K加密块大小。
当客户涉及将itrustee上产生的安全存储文件迁移到CCOS上使用时,建议使用CCOS≥1.7.1的版本。
当客户涉及将CCOS≤1.7.0上产生的安全存储文件迁移到后续CCOS版本上运行时,可在接口中添加3K flag配置。
使用方法如下:
#define TEE_DATA_FLAG_LARGE_CRYPTO_UNIT 0x80000000 ret = TEE_OpenPersistentObject(storageID, objectID, objectIDLen, flags | TEE_DATA_FLAG_LARGE_CRYPTO_UNIT, &object);
父主题: 特性使用