可信平台模块TPM(Trusted Platform Module)介绍及tpm-tools安装使用
可信平台模块TPM(Trusted Platform Module)是一种植于计算机内部为计算机提供可信根的芯片。该芯片的规格由可信计算组(Trusted Computing Group)来制定。 中国国内研究的TCM(trusted cryptography module,可信密码模块),与之对应。
文献
google开发的一个tpm开源工具。非常好的文档和测试用例。可在网页直接测试。
- https://google.github.io/tpm-js
微软相关介绍
- https://docs.microsoft.com/en-us/windows/security/information-protection/tpm/trusted-platform-module-top-node
相关书籍
A practical guide to TPM2.0
PM-Rev-2.0-Part-1-Architecture
Intel TPM2 Software Stack (TSS)等安装使用
- tpm2-tss是根据TCG(Trusted Computing Group)组织定义的TPM2.0的一比一实现。
- tpm2-abrmd是实现了TPM2 access broker (TAB) & Resource Manager (RM)的守护进程
- tpm2-tools是命令行工具
检查依赖包:包的依赖关系
tpm2-tools version | tpm2-tss version | tpm2-abrmd version |
---|---|---|
master | master | master |
4.2 | >=2.4.0 | >=2.3.1 |
安装TPM工具
具体安装过程及依赖包的安装可参考
- 安装tss包 https://github.com/tpm2-software/tpm2-tss/blob/master/INSTALL.md
- 安装abrmd包 https://github.com/tpm2-software/tpm2-abrmd/blob/master/INSTALL.md
- 安装tools包 https://github.com/tpm2-software/tpm2-tools/blob/master/doc/INSTALL.md
注意,如果没有使用tpm模拟器,文档提到最好不要单元测试,不然对tpm硬件可能造成无法恢复的损伤。
若依然有缺乏的依赖,可以参考如下命令
sudo apt-get install lcov pandoc autoconf-archive
sudo apt-get install liburiparser-dev
sudo apt-get install libdbus-1-dev libglib2.0-dev dbus-x11
sudo apt-get install -y automake
sudo apt install autoconf -y
sudo apt install libtool -y
sudo apt-get install libjson-c-dev -y
sudo apt-get install libcurl3 -y
sudo apt-get install libcurl4 libcurl4-openssl-dev -y
sudo apt-get install -y doxygen
## How Install gio-unix-2.0
sudo apt-get install libglib2.0-dev
abrmd的安装和启动比较麻烦
按照文档,依然失败了很多次,要么dbus报错,要么*abrmd.service没起来,经测试,如下命令可行,下面命令来自参考自TOOLS-INSTALL.md
cd tpm2-abrmd
./bootstrap
./configure --with-dbuspolicydir=/etc/dbus-1/system.d --with-udevrulesdir=/usr/lib/udev/rules.d --with-systemdsystemunitdir=/usr/lib/systemd/system
make -j5
sudo make install
run
如果主板上有TPM,则可以不用模拟器。root权限启动abrmd。
启动前先执行
sudo ldconfig
然后启动
sudo tpm2-abrmd --allow-root &
hello world
tpm2_pcrread
sha1:0 : 0xAAAB2F9467FB088B67F29B5437200FB631E92CC91 : 0xD633C974C89C0B51CED6660BBBBAA7D4313A06D22 : 0xB2A83B0EBF2F8374299A5B2BDFC31EA955AD72363 : 0xB2A83B0EBF2F8374299A5B2BDFC31EA955AD72364 : 0x3B5569D8B67CC4DF6228B9F5F0D24B05477620965 : 0xC6B78F833B5A77B4CA16C72C5636981A08040CEC6 : 0xB2A83B0EBF2F8374299A5B2BDFC31EA955AD72367 : 0x6653ABA680BF45C7130D897EA1D8A18FD32CADE68 : 0x00000000000000000000000000000000000000009 : 0x000000000000000000000000000000000000000010: 0x517927AF9D3726175B51C021F190F089CDD186B411: 0x000000000000000000000000000000000000000012: 0x000000000000000000000000000000000000000013: 0x0000000000000000000000000000000000000000
<snip>
如果使用了tpm模拟器
ibmtpm
$ mkdir ibmtpm && cd ibmtpm
$ wget https://sourceforge.net/projects/ibmswtpm2/files/latest/download -O ibmtpm.tar.gz
$ tar -zxvf ibmtpm.tar.gz
$ cd src
$ make -j5
启动模拟器
./tpm_server &
TPM command server listening on port 2321
Platform server listening on port 2322
启动 abrmd
tpm2-abrmd --allow-root --tcti=mssim
测试
tpm2_pcrread
sha1 :0 : 00000000000000000000000000000000000000031 : 00000000000000000000000000000000000000002 : 00000000000000000000000000000000000000003 : 00000000000000000000000000000000000000004 : 00000000000000000000000000000000000000005 : 0000000000000000000000000000000000000000
<snip>
tpm2-tools的使用教程在man目录下,github wiki中的教程可能年久失修了。
参考https://github.com/tpm2-software/tpm2-tools/wiki/Getting-Started#installing
可信平台模块TPM(Trusted Platform Module)介绍及tpm-tools安装使用相关推荐
- 可信平台模块(TPM)概念介绍
可信平台模块(Trusted Platform Module,缩写:TPM),是一项安全密码处理器的国际标准,旨在使用设备中集成的专用微控制器(安全硬件)处理设备中的加密密钥. TPM的技术规范由称为 ...
- 【计算机】可信平台模块Trusted Platform Module - TPM
简述 Brief Introduction TPM内部功能模块示意图: 引述 Trusted Platform Module Technology Overview (Windows) | Micro ...
- 可信平台模块 tpm_如何检查您的计算机是否具有受信任的平台模块(TPM)芯片...
可信平台模块 tpm TPM hardware provides a tamper-resistant way to store encryption keys on a computer. On W ...
- VMware虚拟机不能直接安装win11最新版系统?添加TPM可信平台模块就可以了
VMware虚拟机不能直接安装win11最新版系统,提示如下图: 很多小伙伴都跃跃欲试想要体验win11系统,为了不影响工作学习,小编都建议大家使用VMware虚拟机体验,之前的win11预览测试版本 ...
- 英飞凌可信平台模块解决方案全新支持Windows 8
欢迎访问 德国纽必堡讯 -- 英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)近日宣布,其可信平台模块(TPM)解决方案可以支持和保护新近推出的微软Windows 8操作系统. ...
- 如何查找计算机芯片,如何检查您的计算机是否具有可信平台模块(TPM)芯片 | MOS86...
TPM硬件提供了在计算机上存储加密密钥的防篡改方式.在Windows 108和7上,通常需要一个TPM来启用和使用像BitLocker这样的加密功能.这里 选项One:检查TPM管理工具相关文章图片1 ...
- TPM 2.0规范系列解读——Part 1体系结构第(三)读:可信平台的基本特征
前言 TPM 2.0第1部分包含对TPM属性.功能和方法的叙述描述. 本篇主要基于TPM 2.0规范Part 1的第9章(Trusted Platforms)的内容,对可信平台的基本特征进行解读. 文 ...
- TPM分析笔记(三)TPM Architecture规范之Trusted Platforms(第9章)
目录 一.可信 1.可信计算基础思想 二.可信计算概念 1.信任根&信任边界 2.传递信任(Transitive Trust)& 信托机构(Trust Authority) 1.信托机 ...
- TPM分析笔记(一) TPM历史
目录 TPM的历史 为什么选择用TPM? TPM 1.1b到1.2的发展历史 TPM由1.2发展到2.0版本 TPM2.0规范的开发历程 发展历程小结 TPM标准 TPM常见用途 TPM的规范其描述文 ...
最新文章
- 解决 drupal8 提示“ settings.php ”设置未配置 问题
- Nature撤稿!为销毁造假证据丢弃电脑,“划时代”成果翻车了,副校长鞠躬道歉...
- R语言实战应用-基于R语言的对应分析
- 确诊新冠小米员工的活动轨迹,这就是人间真实吗?
- mysql 创建视图的时候语法易错点
- 梯度提升树(GBDT)相关知识
- 高计能计算要实现软着陆
- hibernate教程笔记1
- 四个简单的步骤告别烦人的flash广告
- IE缓存文件提取器 视频,音频,图片一网打尽
- 【ESP 保姆级教程】疯狂传感器篇 —— 案例:ESP8266 + 光敏光照传感器 + 串口输出
- 【毕设教程】ESP8266 WiFi 模块介绍和使用
- C++:多态性与虚函数 | 虚函数的注意点 | 汇编角度来看动态联编过程
- 国外android逆向的论坛,初探android逆向
- Android SDK是什么意思?
- [转]Unity 打包快手
- SCSS 中这些实用技巧,你可能还不知道!
- ubuntu18.04配置deepo深度学习环境(cuda + cudnn + nvidia-docker + deepo)--超级细致,并把遇到的错误和所有解决方案都列出来了
- openshift介绍与应用
- 维基解密披露CIA Grasshopper远程木马套件 Windows预安装环境、Carberp财务恶意软件的计算机驻留方法都用上了...