编译演示Demo
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”键保存退出文件。
- 打开“Makefile”文件。
- 依赖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/
父主题: 使用实例