kunpengsecl仓库提供了远程证明中除QCA lib和QTA以外的所有工具以及演示Demo。
- 下载鲲鹏安全库。
|
git clone -b v2.0.2 https://gitee.com/openeuler/kunpengsecl.git
|
- 依赖itrustee_sdk CA头文件,可使用编译部署QCA lib和QTA中下载的itrustee_sdk提供的头文件进行配置。
- 打开“Makefile”文件。
|
vim kunpengsecl/attestation/rac/Makefile
|
- 按“i”键进入编辑模式,将“/opt”修改为itrustee_sdk的实际路径。

- 按“Esc”键退出编辑模式,输入:wq!并按“Enter”键保存退出文件。
- 打开“katools_arm64.go”文件。
|
vim kunpengsecl/attestation/rac/ka/katools/katools_arm64.go
|
- 按“i”键进入编辑模式,将“/opt”修改为itrustee_sdk的实际路径。

- 按“Esc”键退出编辑模式,输入:wq!并按“Enter”键保存退出文件。
- 依赖libteec_adaptor.so库,可使用获取iTrustee Patch包中下载的itrustee_sdk源码编译出动态库,并拷贝到系统路径下。
|
cd itrustee_sdk/src/CA
gcc -fPIC -shared -o libteec_adaptor.so libteec_adaptor.c -I ../../include/CA/
cp libteec_adaptor.so /usr/lib64/
|
- 依赖cJSON动态库,可使用5中下载的cJSON源码进行安装。
|
cd itrustee_sdk/test/TA/qta/src/cJSON
make && make PREFIX=/usr install
ldconfig
|
- 依赖1.17版本的golang,可通过如下方式配置。
|
wget https://go.dev/dl/go1.17.13.linux-arm64.tar.gz
tar xvf go1.17.13.linux-arm64.tar.gz
export PATH=$PWD/go/bin/:$PATH
go version
|

- 编译远程证明Demo,一键完成所有组件的编译。
|
yum install openssl-devel
cd kunpengsecl
make clean && make build
|

编译成功后,会生成演示Demo涉及的应用,比如qcaserver、qca_daemon、libteeverifier.so等。此外还生成了用于模拟测试的so库,需删除,否则QCA lib会优先使用模拟器的so库。
|
rm -rf attestation/tee/tverlib/simulator/*.so
|
- 部署libteeverifier.so。
|
cp -rf attestation/tee/tverlib/verifier/libteeverifier.so /usr/lib64/
|