搭建环境
本小节主要介绍如何搭建和配置内生国密的开发与运行环境。
CCOS环境部署脚本请参考https://gitcode.com/openeuler/tee-gp-proxy/tree/master/trustzone-awared-vm/utils/ccos-env-deploy。以下为手工部署详细步骤:
在搭建环境前请参见表2获取BoostKit-boostcc-ccos-1.3.zip,解压zip包后获得hpm固件、kunpeng_sec_drv.sec和sdf-utils*.rpm。
部署hpm包
- 登录iBMC,依次单击,选择上述压缩包中的hpm文件,单击开始升级。



- 升级成功后,点击电源图标对应的下电选项,下电之后等待数秒,图标变灰后,点击上电。


部署SEC驱动
TEE OS 1.3.0版本起,SEC驱动需独立加载。低版本TEE OS可跳过此部分操作。
- 在上述压缩包中含有与本版本匹配的SEC驱动,若部署不匹配的SEC驱动,可能影响TEE OS功能。
- 部署SEC驱动文件。
1 2
mkdir -p /var/itrustee/tee_dynamic_drv/crypto/ cp kunpeng_sec_drv.sec /var/itrustee/tee_dynamic_drv/crypto/
- SEC驱动部署路径由itrustee_client的Makefile文件中的DYNAMIC_CRYPTO_DRV_DIR宏指定,如果需要更换部署路径,需重新编译部署teecd。
- 启动teecd时会默认加载DYNAMIC_CRYPTO_DRV_DIR指定目录下的所有文件,因此尽量不要将其他任何文件放到该目录下。
- 启动teecd进程时,会自动加载SEC驱动,SEC驱动未成功加载将影响TEE OS功能。因此需要在启动teecd前部署SEC驱动,若先启动了teecd,可关闭teecd,重新部署SEC驱动后,再启动teecd。
- 当更新TEEOS镜像时,SEC驱动建议同步更新。
环境部署
- 获取itrustee_client源码。
git clone https://gitcode.com/openeuler/itrustee_client.git -b iTrustee_7.10.0_release
- 获取itrustee_tzdriver源码。
git clone https://gitcode.com/openeuler/itrustee_tzdriver.git -b iTrustee_7.10.0_release
- 获取libboundscheck源码。
git clone https://gitcode.com/openeuler/libboundscheck.git cd libboundscheck git checkout 43f39407
- 将libboundscheck源码分别复制到“itrustee_client/”目录和“itrustee_tzdriver/”目录下。
cd .. cp -rf libboundscheck itrustee_client cp -rf libboundscheck itrustee_tzdriver
- 安装编译依赖。
yum install openssl-devel zlib-devel kernel-devel-$(uname -r)
- 编译itrustee_tzdriver。
cd itrustee_tzdriver && make CPU_GROUP_BINDING=y
- 在编译tzdriver后,将tzdriver.ko复制到指定目录。
mkdir -p "/lib/modules/$(uname -r)/kernel/drivers/trustzone/" cp tzdriver.ko /lib/modules/$(uname -r)/kernel/drivers/trustzone
- 编译itrustee_client。
cd ../itrustee_client make make install
- 安装sdf-utils。
rpm -ivh sdf-utils*.rpm
- 加载tzdriver.ko。
insmod /lib/modules/$(uname -r)/kernel/drivers/trustzone/tzdriver.ko
- 运行teecd进程。
nohup /usr/bin/teecd &
父主题: 准备环境