首页 > 系统相关 >在linux上搭建并测试tpm simulator

在linux上搭建并测试tpm simulator

时间:2022-08-31 16:34:08浏览次数:48  
标签:TPM simulator tpm tpm2 linux tss

最近有一个搭建vTPM环境的需求,在网上搜寻了很多相关的资料,但网上的资料所提供步骤比较繁琐。经过多次试验,我成功地在arch linux上运行了tpm2 simulator,遂将步骤记录下来,方便为今后的进一步实验作参考。

实验环境

Linux发行版 - arch linux

内核版本 - 5.19.5(当前最新)

安装相关软件

得利于强大的pacman,我们不需要编译任何东西就能在arch linux上运行起tpm simulator!

sudo pacman -S ibm-sw-tpm2 tpm2-abrmd tpm2-tools tpm2-tss

ibm-sw-tpm2是一个tpm模拟包,对应的二进制文件为tpm_server。一个代替方案是swtpm。

abrmd是系统守护进程,它实际上由TPM Access Broker (TAB) 和Resource Manager组成。TAB负责同步控制,防止多个进程同时访问一个共享的TPM;同时TAB也能够防止进程访问不属于他们的TPM资源(如TPM会话、对象、hash和event序列等)。而Resource Manager的任务只要是对TPM有限的资源进行管理,就像操作系统的虚拟内存管理器一样。当执行某条指令时,RM将TPM内不需要的资源换出,换入命令所需的资源。

tpm2-tss提供了与tpm交互的api。

tpm2-tools则是一些利用tpm的工具(猜测应该是基于tpm2-tss实现的)。

运行tpm simulator

sudo tpm_server &
sudo -u tss tpm2-abrmd --tcti="libtss2-tcti-mssim.so.0:host=127.0.0.1,port=2321" &

第一条命令默认在127.0.0.1:2321上启动tpm服务;第二条命令以tss用户身份开启abrmd服务,管理127.0.0.1:2321上的tpm服务。

测试

tpm2_pcrread #打印PCR
tpm2_getrandom --hex 4 #生成4个16进制表示的随机字节

标签:TPM,simulator,tpm,tpm2,linux,tss
From: https://www.cnblogs.com/yuxiayizhengwan/p/16643544.html

相关文章

  • linux 内核内存屏障
    linux内核内存屏障By:[email protected]@[email protected]@infradead......
  • linux下Qt5中qDebug信息不输出
    Qt5中qDebug信息不输出的解决方法Qt5中默认不输出调试信息,因此要输出调试信息时,需要修改配置。一、修改qt项目pro配置文件确保调试模式时,取消QT_NO_DEBUG_OUTPUT......
  • Neo4j在linux上的安装与Springboot的集成
    Neo4j在linux上的安装与Springboot的集成在linux安装:前提:安装配置好java环境1.下载neo4j官方社区版下载地址:https://neo4j.com/download-center/#releases或直接使......
  • 如何在VMware上安装Linux系统(CentOS 7)
    1.创建新的虚拟机 2.选择安装类型(推荐典型) 3.选择稍后安装操作系统 4.选择操作系统(linux)及版本(CentOS) 5.虚拟机的名称以及虚拟机的存储位置(建议不要有中......
  • 如何在虚拟机上安装Linux系统
    安装Linux系统1第一步新建虚拟机,并选择典型安装  2选择稍后安装操作系统 3选择要安装的系统类型为linux 4选择虚拟机文件的位置5调整硬盘大小6配置完成......
  • 【debug】 Linux中top的使用
    在我们日常的开发中,我们经常需要查看每个线程的cpu使用情况。其实,在linux中,top也是我们查看cpu使用状况的一个好帮手top:先查看每一个进程的使用状况我们可以发现PID:38......
  • Linux添加定时任务
    Linux添加定时任务crontab-e//编辑Linux定时任务配置文件10516*** /home/webSocketStart.sh(脚本)crontab-l//查看当前所有的定时任务......
  • Linux centos7 删除多余内核
    Linux下可能会存在有多个内核的情况,通过某一内核启动会出现无法登录的情况,这时我们就要选择可以正常登录的内核,成功进入系统后,将多余的内核删除。检查系统中的内核 ......
  • Linux下创建swap分区
    1.创建一个swap文件。cd/varsudomkdirswapsudoddif=/dev/zeroof=swapfilebs=1024count=2000000count代表的是大小,我这里是2G。2.把文件转换为swap文件......
  • linux常用的通配符与正则表达式
    我们在很多地方都会用到通配符和正则表达式来实现我们的日常操作,提高我们的工作效率。但是很多新伙伴,往往容易将他们弄混。首先我们需要知道通配符和正则表达式的使用场景......