本文更新于2018-08-11
手动编译 TPM2.0-TSS
sudo apt-get install -y git-core
git clone --branch=1.x --depth=1 https://github.com/tpm2-software/tpm2-tss.git
pushd tpm2-tss
wget http://ftpmirror.gnu.org/autoconf-archive/autoconf-archive-2017.09.28.tar.xz
tar xJf autoconf-archive-2017.09.28.tar.xz
cp autoconf-archive-2017.09.28/m4/ax_code_coverage.m4 m4/
nproc=4
./bootstrap && ./configure && make -j$(nproc)
make install DESTDIR=$HOME/my-tpm2-tss-installation-dir
popd
Ubuntu 17.04 PC机 或 Ubuntu Snap 嵌入式开发板下如何借助 snapcraft 编译安装 TPM2.0-TSS
sudo apt-get install -y git-core snapcraft
git clone --depth=1 https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/tpm2
cd tpm2
snapcraft
snap try
ls ~/tpm2/prime/sbin
如何编译 TPM Simulator (532版本)
# 以ibmtpm532版本为例(本方法仅x86能编译通过)
wget https://downloads.sourceforge.net/project/ibmswtpm2/ibmtpm532.tar
sha256sum ibmtpm532.tar | grep -q ^abc0b420257917ccb42a9750588565d5e84a2b4e99a6f9f46c3dad1f9912864f
mkdir ibmtpm532
tar axf ibmtpm532.tar -C ibmtpm532
make "CC=gcc -Wno-tautological-compare" -C ibmtpm532/src
后台运行编译好的 TPM Simulator
ibmtpm532/src/tpm_server &
树莓派自带openssl.h版本不允许src/CpriHash.c创建EVP_MD_CTX实例
# ibmtpm974存在另一个bug, 当本机为32位树莓派开发板时无法编译报错openssl宏定义为64位
wget https://downloads.sourceforge.net/project/ibmswtpm2/ibmtpm974.tar.gz
sha256sum ibmtpm974.tar.gz | grep -q ^8e45d86129a0adb95fee4cee51f4b1e5b2d81ed3e55af875df53f98f39eb7ad7
mkdir ibmtpm974
tar axf ibmtpm974.tar.gz -C ibmtpm974
make -C ibmt