认证加密(AE,Authenticated Encryption)
Posted rookieveteran
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了认证加密(AE,Authenticated Encryption)相关的知识,希望对你有一定的参考价值。
认证加密即在加密的同时提供身份认证功能,同时保证数据的机密性和完整性。绝大部分的认证加密方案是将加密及MAC结合。
AE方案构造框架
- 发送者将(Nonce(或IV),Plaintext,Associated Data)作为输入,生成密文和Tag。其中,明文消息是保密的。加密阶段和MAC生成阶段使用不同的密钥。
- 接收者进行解密,并生成Tag‘,验证Tag‘是否等于Tag。若相等,则输出明文;否则认证失败。
加密和认证的三种组合方式及其安全性
选择明文攻击下的密文不可识别性 (IND-CPA)
选择明文攻击下的密文非可塑性 (NM-CPA)
选择密文攻击下的密文不可识别性 (IND-CCA)
选择密文攻击下的密文非可塑性 (NM-CCA)
明文完整性(INT-PTXT)
密文完整性(INT-CTXT)
Encrypt-and-MAC
(E’_{Ke,Km}(M) = E_{Ke}(M) || T_{Km}(M)) 如SSH
- MAC是针对明文的,所以密文没有完整性,会存在选择密文攻击。如Breaking and proofvach修复SSH认证的加密方案的第4部分所示:Encode-then-Encrypt-and-MAC范例的案例研究。
- 可以验证明文的完整性。
- 如果密码方案是可延展的,密文的内容可以被改变,但是在解密时我们应该发现明文是无效的。
- 可能会显示有关MAC中明文的信息。
MAC-then-Encrypt
(E’_{Ke,Km}(M) = E_{Ke}(M)|| T_{Km}(M)) 如TLS
- 不对密文提供任何完整性,因为直到我们解密消息都无法知道它是真的还是伪造的。
- 明文完整性。
- 如果密码方案具有延展性,则可能会将消息更改为显示有效并具有有效的MAC。
- 在这里,MAC无法提供任何有关明文的信息,因为它是加密的。
Encrypt-then-MAC
(E’_{Ke,Km}(M) = E_{Ke}(M) || T_{Km}(E_{Ke}(M)))
- 提供密文的完整性。假设MAC共享密钥没有被破坏,我们应该能够推断给定的密文是真的还是伪造的。例如,在公钥密码学中,任何人都可以向你发送消息。EtM确保你只能阅读有效的消息。
- 明文完整性。
- 如果密码方案具有延展性,我们不必如此担心,因为MAC会过滤掉这个无效的密文。
- MAC不提供关于明文的任何信息,因为假设密码的输出是随机的,MAC也是如此。换句话说,我们没有从明文进入MAC的任何结构。
经典AE方案
NIST ISO/IEC 19772:2009 AE标准
- OCB2.0
- Key Wrap
- CCM
- EAX
- Encrypt-then-MAC
- GCM
Dual Counter Mode of Encryption(DCM)
DCM有两个版本,在2001年由NSA的Boyle和Salter提交给NIST,并很快被攻破(无法保证完整性)。DCM的其中一个版本如下,(C_{j+1})作为Tag
对于其完整性的一个伪造攻击如下:
One-pass design (OCB)
OCB是一种基于分组密码的工作模式,到目前为止它已有三个版本:OCB1(2001年)、OCB2(2003年)和 OCB3(2011年)。其中,OCB1 是IEEE 802.11i 的可选工作模式之一(也叫WRAP);OCB2 是NIST ISO/IEC 19772:2009标准之一。
P. Rogaway, M. Bellare, and J. Black. OCB: A block-cipher mode of operation for effcient authenticated encryption. CCS 2001.
下图为OCB1:
CCM: CTR + CBC-MAC
CCM是NIST ISO/IEC 19772:2009标准之一。
D. Whiting, R. Housley, N. Ferguson. AES encryption & authentication using CTR mode & CBC-MAC. IEEE P802.11 doc 02/001r2, May 2002.
GCM
GCM是NIST ISO/IEC 19772:2009标准之一。
D. McGrew, J. Viega. The security and performance of the Galois/CounterMode (GCM) of operation. INDOCRYPT 2004, LNCS vol. 3348, 2004.
性能比较—— CCM, GCM, OCB3
T. Krovetz, P. Rogawayy. The Software Performance of Authenticated-Encryption Modes. FSE 2011.
以上是关于认证加密(AE,Authenticated Encryption)的主要内容,如果未能解决你的问题,请参考以下文章
django redirect_authenticated_user