当前位置: 首页 > news >正文

TPM仿真环境搭建

文章目录

  • 背景及注意事项
  • 一、CMake
  • 二、m4
  • 三、GNU MP Library
  • 四、TPM_Emulator
  • 五、TSS协议栈(trousers-0.3.14.tar.gz)
  • 六、 tpm-tools
  • 七、查看是否安装成功
  • 八、测试 TPM环境(需要开三个终端分别运行)
    • 8.1 启动TPM (第一个终端)
    • 8.2 启动 tss 环境(第二个终端)
  • 九、启动注意
    • 9.1 启动过程
    • 9.2 停止过程
    • 9.3 重启虚拟机之后,尝试启动tpm出现以下错误

背景及注意事项

宿主机系统:Windows10
虚拟机工具:VMware Workstation 16 pro
虚拟机系统:Ubuntu-18.04.6-desktop-amd64.iso
安装:CMake,m4,GNU MP Library,TPM_Emulator,TSS协议栈(toursers-0.3.14),tpm-tools
注意:在运行以下命令的过程中如果出现权限问题,尝试在命令前边添加sudo

一、CMake

  • Ctrl+Alt+t 打开终端
  • 使用命令sudo apt-get install cmake安装CMake
    在这里插入图片描述

二、m4

  • 直接使用命令sudo apt-get install m4安装即可
    在这里插入图片描述

三、GNU MP Library

  1. 下载 gmp-6.3.0.tar.xz,官网:https://gmplib.org/#DOWNLOAD
  2. 使用解压命令tar -xf gmp-6.3.0.tar.xz进行解压,之后进入解压后的文件
    在这里插入图片描述
  3. 依次执行下列命令
./configure
sudo make
sudo make check
sudo make install

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. 下载相关依赖

sudo apt-get update
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install m4

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、TPM_Emulator

  1. 下载网址:https://gitcode.com/PeterHuewe/tpm-emulator/overview?utm_source=csdn_github_accelerator&isLogin=1
  2. 下载之后解压,拖到Ubuntu中,cd 到tmp目录下,执行以下命令
cd tmp-emulator-master/
mkdir build
cd build
cmake ../
make install (如果这个命令不行的话可以试试 sudo make install )

在这里插入图片描述
3. 初始化tpm-emulator,依次执行以下命令

tpmd deactivated
killall tpmd
tpmd clear

在这里插入图片描述
在这里插入图片描述

  1. 启动 tpm-emulator,下边代码中的小括号表示可选
(sudo)modprobe tpmd_dev
(sudo)tpmd -f -d clear

在这里插入图片描述

在这里插入图片描述
如果启动成功则显示:
在这里插入图片描述
如果出现 Module tpmd_dev not found ,则先运行命令:(sudo)depmod -a,其中小括号表示可选

五、TSS协议栈(trousers-0.3.14.tar.gz)

  1. 下载地址:https://sourceforge.net/projects/trousers/files/trousers/0.3.14/trousers-0.3.14.tar.gz/download

  2. 解压到指定目录
    在这里插入图片描述

  3. 安装依赖

apt-get install automake 
apt-get install autoconf
apt-get install pkgconf 
apt-get install pkg-config 
apt-get install libtool
apt-get install gtk2-engines 
apt-get install openssl 
apt-get install libssl-dev
apt-get install glibc-doc 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. 安装过程(首先需要进入trousers文件夹中),然后依次执行以下命令

sh ./bootstrap.sh
./configure
make
make install

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、 tpm-tools

  1. 执行命令安装sudo apt-get install tpm-tools
    在这里插入图片描述

七、查看是否安装成功

tpm_version         # 查看版本号
tmp_getpubek        # 查看ek公钥
tpm_takeownership   #获取owner

在这里插入图片描述

八、测试 TPM环境(需要开三个终端分别运行)

8.1 启动TPM (第一个终端)

sudo depmod -a
sudo modprobe tpmd_dev
sudo tpmd -f -d
  • 已经启动了会出现下述提示
    在这里插入图片描述
  • 启动成功会出现以下界面
    在这里插入图片描述

8.2 启动 tss 环境(第二个终端)

  • 如果没有权限的话就在命令前边加上sudo
(sudo) tcsd -e -f

在这里插入图片描述

九、启动注意

9.1 启动过程

sudo depmod -a
modprobe tpmd_dev
tpmd -f -d tcsd -e -f

9.2 停止过程

tpmd deactivated
killall tpmd
killall tcsd
rmmod tpm_dev

9.3 重启虚拟机之后,尝试启动tpm出现以下错误

在这里插入图片描述

  1. 原因:由于系统重启时将/var/run/下的tpm目录清空了,重新创建一个即可 sudo mkdir /var/run/tpm
http://www.lryc.cn/news/365639.html

相关文章:

  • 提高篇(五):使用Processing创作互动艺术:从灵感到实现
  • 华为od-C卷100分题目-3用连续自然数之和来表达整数
  • Chrome 自动执行 JS 脚本 | Tampermonkey 插件
  • ffmplay 源码解读
  • java web如何调用py脚本文件
  • K8s:无状态
  • Docker 入门篇(九)-- 使用 Maven 插件 构建 Docker 镜像
  • 网络协议三
  • LeetCode LRU缓存
  • Parallels Desktop for Mac 19.4.0更新了哪些内容?有什么改进?
  • Python 将CSV文件转为PDF文件
  • 4_XMR交易过程
  • 02_共享锁和排他锁
  • Ubuntu的启动过程
  • c# 下 ScintillaNET 显示XML信息并折叠节点
  • 什么叫防御式编程
  • 前端优化之图片压缩——tinyPNG
  • Springboot集成Quartz
  • Android面试题之Kotlin Jetpack组件LifecycleScope
  • MySQL深分页优化
  • 问题:律师会见委托人的方式包括团体会见和( )。 #职场发展#笔记#学习方法
  • Spring Boot中整合Jasypt 使用自定义注解+AOP实现敏感字段的加解密
  • pytorch中的维度变换操作性质大总结:view, reshape, transpose, permute
  • LeetCode刷题 | Day 4 分割等和子集(Partition Equal Subset Sum)自底向上动态规划
  • 基于工业互联网打造敏捷供应链的实现方式:创新路径与实践应用
  • 碳化硅柱式膜的广泛应用
  • 【QT】QFont字体设置
  • Vue3+vite部署nginx的二级目录,使用hash模式
  • 云南区块链商户平台发票助手成品
  • AI图书推荐:检索增强生成RAG赋能大语言模型