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

相关文章

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

高并发环境中保持幂等性

在高并发环境中保持幂等性是一项重要的挑战。幂等性指的是无论操作执行多少次,其效果都是相同的。确保操作的幂等性可以避免重复执行带来的副作用。以下是一些保持幂等性的常用方法: 唯一标识符: 请求唯一标识:在每次请求中引入唯一标识符(如 UUID 或者生成的唯一 ID),在处理请求时,系统可以检查这个标识符是否已经处理过,如果是,则忽略重复请求。幂等键(Idempotency Key):客户端在每次

基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(五):Blender锥桶建模

前言 本系列教程旨在使用UE5配置一个具备激光雷达+深度摄像机的仿真小车,并使用通过跨平台的方式进行ROS2和UE5仿真的通讯,达到小车自主导航的目的。本教程默认有ROS2导航及其gazebo仿真相关方面基础,Nav2相关的学习教程可以参考本人的其他博客Nav2代价地图实现和原理–Nav2源码解读之CostMap2D(上)-CSDN博客往期教程: 第一期:基于UE5和ROS2的激光雷达+深度RG

pico2 开发环境搭建-基于ubuntu

pico2 开发环境搭建-基于ubuntu 安装编译工具链下载sdk 和example编译example 安装编译工具链 sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib 注意cmake的版本,需要在3.17 以上 下载sdk 和ex

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下,使LabVIEW开发的程序保持稳定运行的有效策略。 LabVIEW版本兼容性 LabVIEW各版本对不同操作系统的支持存在差异。因此,在开发程序时,尽量使用

Go Playground 在线编程环境

For all examples in this and the next chapter, we will use Go Playground. Go Playground represents a web service that can run programs written in Go. It can be opened in a web browser using the follow