更新:
前段时间将tpm模拟器的安装写成了脚本,运行的系统为ubuntu16.04,代码在https://github.com/lwyeluo/tpm-emulator
安装命令为sh install.sh
,欢迎大家clone~ (以及报bug…
安装
CMake安装
Sudo apt-get install cmake或者
下载:http://www.cmake.org/
# ./bootstrap
# make
# make install
GNU MP library
# apt-get install m4
# ./configure
# make
# make check
# make install
GTK
apt-get install build-essential gnome-core-devel pkg-config devhelp libglib2.0-doc libgtk2.0-doc glade libglade2-dev libgtk2.0*
TPM模拟器
网站上给的链接好像出问题了,我用的是以前的tpm_emulator-0.7.4.tar.gz 。
# mkdir build
# cd build
# cmake ../
# make
# make install
初始化
# tpmd deactivated
# killall tpmd
# tpmd clear
启动软TPM
# modprobe tpmd_dev
# tpmd -f -d (tpmd -h查看启动参数)
若出现Module tpmd_dev not found,则先运行命令depmod -a
若出现Error:bind(/var/run/tpm/tpmd_socket:0) failed
,则先运行命令rm /var/run/tpm/tpmd_socket:0
Trousers
有TPM芯片:sudo apt-get install trouses tpm-tools
使用TPM模拟器的话需要重定向链接库,必须源码安装
- 修改./src/tcsd/Makefile.am第4行如下:
tcsd_LDADD=${top_builddir}/src/tcs/libtcs.a ${top_builddir}/src/tcs/libtddl.so -lpthread @CRYPTOLIB@
为
tcsd_LDADD=${top_builddir}/src/tcs/libtcs.a /usr/local/lib/libtddl.so -lpthread @CRYPTOLIB@
- 修改./src/tcsd/Makefile.in如下:
tcsd_DEPENDENCIES= ${top_builddir}/src/tcs/libtcs.a \
${top_builddir}/src/tcs/libtddl.so
为:
tcsd_DEPENDENCIES= ${top_builddir}/src/tcs/libtcs.a \
/usr/local/lib/libtddl.so
注:上面修改中的/usr/local/lib/有时可能会是/usr/lib,可查看libtddl.so的位置来确定是哪个目录。
- 不能执行sh bootstrap.sh
- 执行
# ./configure
# make
# make install
启动TCSD
# tcsd -e –f
Tpm-tools
./configure
make
make install
使用
TPM模拟器启动
sudo tpmd –df
若出现tpmd.c:276:Error: bind(/var/run/tpm/tpmd_socket:0) failed: Address already in use,则:sudo rm/var/run/tpm/tpmd_socket:0
启动成功界面:
Tcsd启动
在tpmd启动的情况下可启动tcsd(TPM的软件栈)
sudo tcsd -ef
若出现TCSD ERROR: Failed bind: Address already in use,则kill tcsd进程
成功启动后:
查看TPM版本
tpm_version
若出现error while loading shared libraries: libtspi.so.1: cannot open shared object file: No such file or directory,则:
apt-get install libtspi-dev