TPM仿真环境搭建

2024-06-06 12:04
文章标签 搭建 环境 仿真 tpm

本文主要是介绍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 停止过程

背景及注意事项

宿主机系统: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 deactivates
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
./config
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 启动过程

tpm -d -f save (如果是第一次启动,运行tpmd -d -f clear)
modprobe tpmd_dev
tcsd -e -f

9.2 停止过程

tpmd deactivated
killall tpmd
killall tcsd
rmmod tpm_dev

这篇关于TPM仿真环境搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1036051

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs

如何使用Haporxy搭建Web群集

《如何使用Haporxy搭建Web群集》Haproxy是目前比较流行的一种群集调度工具,同类群集调度工具有很多如LVS和Nginx,本案例介绍使用Haproxy及Nginx搭建一套Web群集,感兴趣的... 目录一、案例分析1.案例概述2.案例前置知识点2.1 HTTP请求2.2 负载均衡常用调度算法 2.

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可