当前位置:网站首页>【TPM2.0原理及应用指南】 16、17、18章
【TPM2.0原理及应用指南】 16、17、18章
2022-07-07 15:38:00 【Godams】
第16章 命令审计
审计负责记录在主机与TPM之间传递的TPM命令和参数。主机负责维护日志,日志可能存在于主机内存或硬盘。TPM使用类似PCR的扩展记录记录这些参数,随后返回一个审计日志的签名摘要。签名摘要接收者可以验证签名,从而验证日志的完整性。
TPM将命令和响应参数的哈希扩展至一个审计摘要中
16.1 为什么要审计?
在TPM中,审计负责记录在主机与TPM之间传递的TPM命令和相应参数,而且只审计成功执行的命令。主机负责维护日志,日志可能存在于主机的内存或磁盘上。当主机保存实际参数时,TPM通过类似用于PCR的扩展操作来记录这些参数。之后,TPM返回审计日志的一个签名摘要。签名摘要的接收者可以验证签名,从而验证日志的完整性。
16.3 审计类型
- 命令审计:负责记录一个选定的命令集的所有实例,而不管会话。
- 会话审计:会话审计记录一个会话中的所有命令,而不管命令。
一个专属会话允许接收者检测审计会话是否被一个未经审计的介入命令中断。专属会话还可以用来保证不存在介入命令。
16.4 审计日志
所需步骤:
(1)审计人员首先从一个审计日志中读取命令和响应参数的列表–日志的存储和命令的执行都在主机端,然后计算命令参数和响应参数的哈希值。
(2)审计人员执行一个相当于扩展的计算–根据步骤1计算每个命令和相应参数的哈希值并将结果添加到一个审计摘要中。
(3)验证数字签名。利用TPM签名和一个公钥对步骤2中计算得到的审计摘要进行验证。
(4)审计人员经过一个证书链返回到一个受信任的根证书,从而建立对验证公钥的信任。
第17章 解密和加密会话
解密和加密会话在与TPM交换敏感信息的过程中为敏感信息提供保密性
17.1 加密和解密会话的作用
加密和解密会话保护在不安全的媒介上传输的秘密信息。
调用程序为了保护数据的机密性,可以使用一个仅调用程序和TPM知道的命令加密密钥来加密数据。密钥的一部分是由用于开启会话的参数决定的。
一个解密会话通知TPM首个参数是加密的。这意味着当TPM接收到参数之后,需要对其进行解密,因此命名为解密会话。
对于一个响应,一个加密会话表明TPM已经在首个响应参数返回之前对该参数进行了加密。在接收加密过的响应参数之后,调用程序使用响应解密密钥来解密数据。
17.3 解密和加密的限制
仅第一个命令参数可以被加密,和第一个命令参数可以被解密。
17.4 解密和加密设置
17.5 XOR和CFB模式以及他们的大致的流程?
有两种不同的对称密钥模式可以用来加解密会话:XOR和CFB。
CFB模式提供高强度加密,但是需要TPM和调用程序都支持一种哈希算法和一种加密算法。
XOR仅需要哈希算法,而且对于需要非常少的代码量的情景是一种正确的选择,但是这种方法安全性弱一些。
当一个会话开始时,TPM生成一个会话密钥。为了使用加密和解密会话,调用程序需要为两个会话单独生成会话密钥。将所有过程统一到一个流,加密和解密会话生命周期的相关步骤如下:
(1)使用Tpm2_startAuthSession开始会话,将对称参数设置为
·CFB模式:
Symmetric.algorithm=TPM_ALG_AES;
Symmetric.keyBits.aes=128;
Symmetric.mode.aes=TPM_ALG_CFB;
·XOR模式:
Symmetric.algorithm=TPM_ALG_XOR;
Symmetric.keyBits.exclusiveOr=TPM_ALG_SHA256;
(2)生成会话密钥并保存
(3)对于一个第一个参数为TPM2B的命令,如果希望加密这个参数,可以进行下面的操作:
·为了使用这个会话生成一个Hmac密钥,会话密钥也列入这个密钥的生成过程。
·对于CFB模式:
·使用会话哈希算法、HMAC密钥、特殊标签(CFB)、nonceNewer、nonceOlder以及 被加密的位数来生成加密密钥和初始向量IV。
·使用加密密钥和IV加密第一个参数
·对于XOR模式:
·使用HMAC密钥、会话哈希算法、nonceNewer、nonceOlder和被加密的位数来生成 掩码
·将明文数据与掩码进行异或操作,生成加密的数据
·设置sessionAttributes.decyrpt位
(4)如果第一个响应参数是TPM2B,而且希望TPM以加密的形式发送该参数,设置sessionAttributes.encrypt位
(5)发送命令至TPM
(6)接收TPM返回的响应
(7)如果第一个响应参数是TPM2B且sessionAttributes.encrypt被设置了,执行以下步骤:
·为了使用这个会话生成一个Hmac密钥,会话密钥也列入这个密钥的生成过程。
·对于CFB模式:
·使用会话哈希算法、HMAC密钥、特殊标签(CFB)、nonceNewer、nonceOlder以及 被解密的位数来生成解密密钥和初始向量IV。
·使用解密密钥和IV加密第一个参数
·对于XOR模式:
·使用HMAC密钥、会话哈希算法、nonceNewer、nonceOlder和被解密的位数来生成 掩码
·将密文数据与掩码进行异或操作,生成明文数据
第18章 上下文管理
TAB和RM:一个更高层次的说明
TAB:
RM
RM必须执行的基本操作:
- 虚拟化所有与TPM交换的操作
- 维护用来记录对象和序列的上下文的表
- 为加载到TPM中的对象和序列,维护一个虚拟句柄到TPM句柄的映射关系
- 对于正在发送给TPM的命令
在发送到TPM之前,捕获所有命令字节流
检查在授权域和句柄域的所有句柄
边栏推荐
- LeetCode 1626. The best team without contradiction
- Sator launched Web3 game "satorspace" and launched hoobi
- Flask搭建api服务-生成API文档
- Number of exchanges in the 9th Blue Bridge Cup finals
- SlashData开发者工具榜首等你而定!!!
- QT 图片背景色像素处理法
- A tour of grpc:03 - proto serialization / deserialization
- 99% 用户在 Power BI 云端报表常犯错误
- How to add aplayer music player in blog
- mysql实现两个字段合并成一个字段查询
猜你喜欢
[video / audio data processing] Shanghai daoning brings you elecard download, trial and tutorial
With the latest Alibaba P7 technology system, mom doesn't have to worry about me looking for a job anymore
Sator launched Web3 game "satorspace" and launched hoobi
Share the latest high-frequency Android interview questions, and take you to explore the Android event distribution mechanism
麒麟信安操作系统衍生产品解决方案 | 存储多路径管理系统,有效提高数据传输可靠性
Reflections on "product managers must read: five classic innovative thinking models"
Skimage learning (2) -- RGB to grayscale, RGB to HSV, histogram matching
[image sensor] correlated double sampling CDs
What is cloud computing?
QT picture background color pixel processing method
随机推荐
A tour of grpc:03 - proto serialization / deserialization
Share the latest high-frequency Android interview questions, and take you to explore the Android event distribution mechanism
【饭谈】Web3.0到来后,测试人员该何去何从?(十条预言和建议)
国内首创!Todesk将RTC技术融入远程桌面,画质更清晰操作更流畅
LeetCode 120. 三角形最小路径和 每日一题
L1-027 出租(Lua)
With the latest Alibaba P7 technology system, mom doesn't have to worry about me looking for a job anymore
[Seaborn] combination chart: pairplot and jointplot
鲲鹏开发者峰会2022 | 麒麟信安携手鲲鹏共筑计算产业新生态
Test case management tool recommendation
LeetCode 1043. Separate the array to get the maximum and daily questions
User defined view essential knowledge, Android R & D post must ask 30+ advanced interview questions
Flask搭建api服务-SQL配置文件
Reflections on "product managers must read: five classic innovative thinking models"
LeetCode 1986. 完成任务的最少工作时间段 每日一题
Skimage learning (3) -- gamma and log contrast adjustment, histogram equalization, coloring gray images
MRS离线数据分析:通过Flink作业处理OBS数据
【视频/音频数据处理】上海道宁为您带来Elecard下载、试用、教程
rpcms获取指定分类下的文章的方法
麒麟信安中标国网新一代调度项目!