考虑以下身份验证和加密方案,在CBC模式下使用AES-128进行加密,使用基于AES-128的CMAC进行身份验证:
SHA256(k) = k1 || k2 (k1和k2各有16字节长)E_k1(x) = c加密。CMAC_k2(x) = m计算CMAC。c||m的连接。我们被要求使用这种方法,我想知道在使用SHA256哈希派生加密密钥和MAC时是否有问题?
(我知道关于身份验证-然后加密与加密-然后认证与认证和加密)的讨论)
发布于 2012-07-05 14:11:51
我看不出有什么理由不安全。但是,如果您想安全地使用它,则始终可以使用标准化的密钥推导函数,例如香港国防军(RFC 5869)或本标准草案中列出的其他KDF之一。(草案本身似乎已经过期,但它是我能找到的最方便的标准化密钥派生函数列表。)
https://crypto.stackexchange.com/questions/3143
复制相似问题