以下内容来自论文
感觉看论文复习也不错
可信计算平台
可信计算技术的核心是TPM(可信平台模块),可信机制主要通过三个方面体现:
- 可信的度量:任何将要获得控制权的实体,都需要先对该实体进行度量,主要是指完整性的计算。从平台加电开始,直到运行环境的建立,这个过程就一直在进行。
- 度量的存储:所有度量值将形成一个序列,并保存在TPM中,同时还包括度量过程日志的存储,
- 度量的报告:对平台是否可信的询问正是通过“报告”机制来完成的,任
何需要知道平台状态的实体需要让TPM报告它这些度量值和相关日志信息,这个过程需要询问实体和平台之间进行双向的认证。如果平台的可信环境被破坏了,询问者有权拒绝与该平台的交互或向该平台提供服务。
HMAC
HMAC算法是一种执行“校验和”的算法. 它通过对数据进行“求和”来检查数据是否被更改了。在发送数据以前, HMAC算法对数据块和双方约定的公钥进行“散列操作”,以生成称为“摘要”的东西,附加在待发送的数据块中。当数据和摘要到达其目的地时,就使用HMAC来生成另一个校验和。如果两个数字相匹配,那么数据未被做任何篡改。否则,就意味着数据在传输或存储过程中被某些居心叵测的人作了手脚.
消息认证
消息认证就是验证所受到的消息确实是来自真正的发送方且未被修改的消息,它也可验证消息的顺序和及时性。任何消息认证在功能上基本可看作有两层,下层中一定有一种产生认证符的函数,认证符是一个用来认证消息的值;上层协议中将该函数作为原语使接收方可以验证消息的真实性。
产生认证符的函数可以分为如下三类:
- 消息加密:整个消息的密文作为认证符。
- 消息认证码(MAC):它是消息和密钥的公开函数,它产生定长的值,以该值作为认证符。
- hash函数:它是将任意长的消息映射为定长的hash值的公开函数,以该值作为认证符。
消息加密
消息加密本身提供了一种认证手段,传统密码和公钥密码体制中,对消息加密的分析不同。对称加密是指发送方A用A和B共享的密钥对发送到接收方的消息M加密。但是使用对称加密的消息认证中,接收方判断解密出来的明文是否具有规律性来进行判别,但是对于二进制文件和无规律性的文件不能进行判别。因此,这种方式不能提供广泛意义上的认证。
公钥密码体制的简单认证方案是:A用其私钥对消息加密,而B用A的公钥对接收的消息进行解密。如果既要提供保密性又要提供认证,那么A可先用私钥对M加密,这就是数字签名;然后A用B的公钥对上述结果加密,这可保证保密性。但这种方法的缺点是,一次通信中要执行四次复杂的公钥算法而不是两次。
消息认证码
消息认证码利用密钥来生成一个固定长度的短数据块,并将该数据块附加在消息之后。当 A 向 B 发送消息时,则 A 计算 MAC,它是消息 M 和共享密钥 K的函数,然后将消息和 MAC 一起发送给接收方。接收方用密钥 K 对接收到的消息进行相同的计算,并将接收到的 MAC 与计算出的 MAC 进行比较。
Hash函数
单向 hash 函数的输入是数据长度可变大小的消息 M,输出是固定大小的hash 码,hash 码并不使用密钥,它仅是输入消息的函数。它具有检测错误的能力,即改变消息的任何一位或多位,都会导致 hash 码的改变。
hash 码用于消息认证有各种消息加密,其中一种是用对称密码对消息及附加在其后的 hash 码加密。而且这种方式提供了认证和保密性,减少了密钥的数量。