TA 是 Trusted Application 的缩写,通常运行在 TEE 环境下的应用简称为 TA。
CA 是 Client Application 的缩写,通常运行在 REE 环境下的应用简称为 CA。
TEE(Trusted Execution Environment) 通常用来进行数字版权管理(DRM : Digital Rights Management )、移动支付和敏感数据保护。
TEE 的实现是基于 ARM TrustZone。
CA通过SMC中断进入TEE。
通常一个流程为:打开 TEE 环境 > 开启一个会话 > 发送命令 > 获取信息 > 结束会话 > 关闭 TEE 环境。
借助OP-TEE来实现特定安全需求时,一次完整的功能调用一般都是起源于CA,TA做具体功能实现并返回数据到CA,而整个过程需要经过OP-TEE的client端接口,OP-TEE在Linux kernel端的驱动,Monitor模式下的SMC处理,OP-TEE OS的thread处理,OP-TEE中的TA程序运行,OP-TEE端底层库或者硬件资源支持等几个阶段。当TA执行完具体请求之后会按照原路径将得到的数据返回给CA。