实验一:开发环境的搭建
使用的环境是vmware14.01
ubuntu16.04
开发环境结构
安装gmp
安装m4
- 从环境结构可以看出在安装gmp之前应该先安装m4
使用
apt-get install m4
安装m4
从这里下载Gmplib
tar -jxvf gmp-6.1.2.tar.bz2
./configure
make
make check
make install
- 此步注意一定要先装m4
安装 cmake
使用
sudo apt-get install cmake
或者http://www.cmake.org/ 下载然后安装
//安装过程
# ./bootstrap
# make
# make install
- 若make到98%是出错,显示如下
Makefile:628: arch/armv7l/Makefile: No such file or directory
make[4]: *** No rule to make target 'arch/armv7l/Makefile'. Stop.
- 解决:在make 和make install 的时候指定一
下架构就行了。如下:
make ARCH=arm
make install ARCH=arm
安装Tpm_emulator
安装过程
cd tpm-emulator-master/
mkdir build;cd build
cmake ../
make
sudo make install //需要root权限复制文件。
- 问题:
error: too many arguments to function ‘sock_recvmsg’,
说明源码里sock_recvmsg函数不适配这个linux 内核版本。这是源码的问题,换个版本的源码
初始化、启动TPM_emulator
- 初始化
//此段若执行不成功 加上sudo再试试
tpmd deactivated
killall tpmd
tpmd clear
- 启动tpm
depmod -a
modprobe tpmd_dev
tpmd -f -d //若启动出错 tpmd –f –d clear
-
缺少
depmod -a
会出现
-
此段错误:
failed: address already in use
-
解决:
sudo rm /var/run/tpm/tpmd_socket:0
-
若成功
运行tpm-test
tss协议栈安装
安装TSS详情参考
安装过程中make若出以下错误
解决如下
-
gedit ./src/tcsd/Makefile
-
找到
tcsd_LDADD=${top_builddir}/src/tcs/libtcs.a /usr/local/lib/libtddl.so -lpthread @CRYPTOLIB@
-
改为
tcsd_LDADD=${top_builddir}/src/tcs/libtcs.a /src/tddl/libtddl.a -lpthread @CRYPTOLIB@
-
找到
tcsd_DEPENDENCIES = ${top_builddir}/src/tcs/libtcs.a /usr/local/lib/libtddl.so
-
修改为
tcsd_DEPENDENCIES = ${top_builddir}/src/tcs/libtcs.a /src/tddl/libtddl.a
运行tcsd
tcsd -e -f
安装tpm-tools
sudo apt-get install tpm tools
实验二:硬件接口交互操作
实验感想
实验过程中遇见了很多的问题,都一一的去解决了。在这个过程中感谢老师给的帮助!!还有我抱着试一试的心态给了树莓派的博客上留下的邮箱发送的求助信息得到回复,超级开心。真心感谢树莓派的大佬们的帮助!在解决问题的过程中看到了很多的文献,学到了很多知识,对可信计算这门课程有了更浓厚的兴趣和学习的动力!