密钥相关数据的认证与抗误用加密
1. 引言
在当今的加密系统中,密钥相关数据的加密安全问题日益凸显。例如,BitLocker 用于加密磁盘的密钥可能就存于磁盘上,安全文件系统加密所用的密钥也可能存储在同一系统的文件里,这就导致了密钥相关数据的加密情况。随着人们对系统安全的关注度不断提高,密钥相关数据的安全性成为了一个直接且广泛存在的问题,尤其是当密钥为密码时,问题更为严峻,因为很多人会将密码存储在系统中,系统也会存储密码的哈希值。所以,实现密钥相关数据的安全加密对于易用、健壮且抗误用的密码学来说至关重要。
2. 背景知识
传统的加密方案所满足的 IND - CPA 和 IND - CCA 目标,并不能保证在加密与密钥相关的消息时的安全性。Black、Rogaway 和 Shrimpton(BRS)将 IND - CPA 进行了扩展,以支持密钥相关消息(KDM)。在他们的方案中,攻击者向加密预言机提供一个消息推导函数 φ,游戏将该函数应用于目标密钥 K 得到消息 M,攻击者会收到 M 在 K 下的加密结果或者 0|M| 的加密结果,且需判断不出两者的区别。他们还提出了一个简单的随机预言机(RO)模型解决方案。
后续的研究主要致力于在不使用随机预言机的情况下,寻找能抵抗尽可能多的消息推导函数的安全方案,但这些方案存在一些问题,比如多为非对称加密,而实际的数据加密大多是对称的;方案过于复杂难以应用;或者仅能为有限的数学类消息推导函数提供安全保障,无法涵盖系统中所有的密钥依赖情况。Backes、Pfitzmann 和 Scedrov 定义了一种基本形式的认证加密的 KDM 安全性,并表明如果加密方案是 KDM 安全的,且 MAC 是强不可伪造的,那么 Encryp