TPM仿真环境搭建

news2024/11/16 1:14:54

文章目录

  • 背景及注意事项
  • 一、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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1793108.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【机器学习基础】Python编程03:五个实用练习题的解析与总结

Python是一种广泛使用的高级编程语言,它在机器学习领域中的重要性主要体现在以下几个方面: 简洁易学:Python语法简洁清晰,易于学习,使得初学者能够快速上手机器学习项目。 丰富的库支持:Python拥有大量的机器学习库,如scikit-learn、TensorFlow、Keras和PyTorch等,这些…

华为手机录屏在哪里?图文详解帮你找!

随着科技的进步,智能手机已成为我们日常生活中不可或缺的工具。其中,华为手机凭借其卓越的性能和用户体验,在全球范围内赢得了广泛的赞誉。在众多功能中,录屏功能尤为实用,无论是制作教程、记录游戏精彩瞬间&#xff0…

实现教育数字化转型,选择智慧校园软件

在当今数字时代,教育数字化转型已经成为不可忽视的趋势。随着技术的不断发展,智慧校园软件正日益受到教育机构的关注。那么,为什么选择智慧校园软件能够成为实现教育数字化转型的最佳解决方案呢? 首先,智慧校园软件为教…

用langchain搭配最新模型ollama打造属于自己的gpt

langchain 前段时间去玩了一下langchain,熟悉了一下大模型的基本概念,使用等。前段时间meta的ollama模型发布了3.0,感觉还是比较强大的,在了解过后,自己去用前后端代码,调用ollama模型搭建了一个本地的gpt应用。 核心逻辑 开始搭…

七天进阶elasticsearch[one]

elasticSearch 概述 Elasticsearch是一个近实时的搜索平台。这意味着,从索引一个文档直到这个文档能够被搜索到有一个很小的延迟(通常是一秒) 集群 一个集群就是由一个或多个节点组织在一起, 它们共同持有你全部的数据&#x…

初识 MyBatis 【MyBatis 核心概念】

MyBatis 简介: MyBatis 是一个优秀的持久层框架,它对JDBC操作数据库的过程进行封装,使开发者只需要关注sql本身,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyB…

【人工智能】第五部分:ChatGPT的实际应用案例和未来发展方向

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…

解决vscode终端不显示conda环境变量名称问题【详细步骤!实测可行!!】

最近在使用Visual Studio Code (VSCode) 时候,发现终端没有正确显示激活的conda环境名称,搜了一下,找到原因,记录一下,如果有人也遇到同样的问题,可以收藏一下。   分别两种情况,一是windows系…

SpringBoot+Vue在线视频课程网站(前后端分离)

技术栈 JavaSpringBootMavenMySQLMyBatisVueShiroElement-UI 角色对应功能 用户教师管理员 系统功能截图

2.1.4 采用配置类与注解方式使用MyBatis

实战概述:采用配置类与注解方式使用MyBatis 创建MyBatis配置类 在net.huawei.mybatis.config包中创建MyBatisConfig类,用于配置MyBatis核心组件,包括数据源、事务工厂和环境设置。 配置数据源和事务 使用PooledDataSource配置MySQL数据库连接…

基于LabVIEW虚拟示波器设计

随着计算机技术的发展,传统仪器开始向计算机化的方向发展。虚拟仪器是90年代提出的新概念。虚拟仪器技术的提出与发展,标志着二十一世纪自动测试与电子测量仪器领域技术发展的一个重要方向。所谓虚拟仪器,就是在通用的计算机平台上定义和设计…

《UDS协议从入门到精通》系列——图解0x23:通过地址读取内存

《UDS协议从入门到精通》系列——图解0x23:通过地址读取内存 一、简介二、数据包格式2.1 服务请求格式2.2 服务响应格式2.2.1 肯定响应2.2.2 否定响应 三、通信示例 Tip📌:本文描述中但凡涉及到其他UDS服务的,将陆续提供链接跳转方…

electron自定义顶部

我的项目是采用的electron-vite搭建的,希望下面的内容可以给你带来帮助 自定义菜单栏Vue <template><div class"title-bar"><div class"left-section"><img src"../assets/icon.png" alt"Icon" class"icon…

idea 常用插件推荐

文章目录 1、Lombok2、Convert YAML and Properties File3、Grep Console4、MyBatisX5、Free MyBatis Tool6、MyBatis Log EasyPlus &#xff08;SQL拼接&#xff09;7、MyBatisPlus8、Eclipse theme9、Eclipse Plus Theme10、Rainbow Brackets Lite - Free and OpenSource&…

在大模型落地这件事上,智谱玩出花了

大数据产业创新服务媒体 ——聚焦数据 改变商业 2024年6月5日&#xff0c;仅仅用了一上午的功夫&#xff0c;智谱就连发了三个产品&#xff0c;分别是智谱清言、GLM4-9B、智谱MaaS平台。 在这次的发布会与智谱在2024年1月16日开的发布会不太一样&#xff0c;后者更注重技术分享…

计算机网络 期末复习(谢希仁版本)第1章

大众熟知的三大网络&#xff1a;电信网络、有线电视网络、计算机网络。发展最快起到核心的是计算机网络。Internet是全球最大、最重要的计算机网络。互联网&#xff1a;流行最广、事实上的标准译名。互连网&#xff1a;把许多网络通过一些路由器连接在一起。与网络相连的计算机…

QT 使用信号和槽,让QLabel的内容实时与QLineEdit同步,类似vue框架的双向绑定

在窗口里放置一个单行文本编辑器&#xff08;QLineEdit&#xff09;和一个标签控件&#xff08;QLabel&#xff09;&#xff0c;实现的效果就是当编辑器的内容被编辑时&#xff0c;标 签控件同步显 示编辑控件里的内容 1&#xff09;当 lineEdit 控件被用户编辑时&#xff0c;它…

【Java数据结构】二叉树详解(四)

&#x1f512;文章目录&#xff1a; 1.❤️❤️前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; 2.给定一个二叉树, 找到该树中两个指定节点的最近公共祖先 2.1第一种思路 2.2第二种思路 3.根据一棵树的前序遍历与中序遍历构造二叉树 4.根据一棵树的中序…

【Web API DOM03】事件监听

一&#xff1a;什么是事件监听 指程序检测有无某一事件发生&#xff0c;如果发生&#xff0c;就调用一个函数做出反应&#xff1b;也称为绑定事件或注册事件 比如鼠标经过显示下拉菜单、点击侧边栏播放轮播图 二&#xff1a;怎么用事件监听 1 语法规范&#xff1a; 元素对…

Python 全栈体系【四阶】(五十七)

第五章 深度学习 十三、自然语言处理&#xff08;NLP&#xff09; 2. 传统NLP处理技术 2.4 关键词提取 关键词提取是提取出代表文章重要内容的一组词&#xff0c;对文本聚类、分类、自动摘要起到重要作用。此外&#xff0c;关键词提取还能使人们便捷地浏览和获取信息。现实…