本文就将围绕着安全系统的机密性、完整性、抗否性主要目标,系统梳理与总结下现代密码学标准定义中的若干安全模型,如IND-CPA、IND-CCA、EUF-CMA、INT-CTXT以及后量子安全模型等。 本文
本文将系统性地总结密码学中常见的安全模型定义。在阅读本文前,可以了解如下预备知识:
- 现代密码学是一门怎样的学科?
- 数据的机密性、完整性与实体的抗否性是什么意思?
- 完美安全和语义安全的含义是什么?
数据的机密性、完整性和实体的抗否性是一个信息安全系统所要保障的主要目标,也是一个密码算法所应满足的基本指标。而在现代密码学与可证明安全的语义下,机密性等含义有着更加严格和完善的定义。
例如,如果描述一个加密算法实现了数据机密性,那么就需要证明这个算法输出的密文与那些随机字符串看起来是不可区分的, 由此敌手就不能从密文中获得任何有关明文和密钥的信息。本文就将围绕着安全系统的这几个主要目标,总结下密码学标准定义中的若干安全模型。
不可区分性纵观整个安全性定义的发展,数据机密性是人们一直以来的核心诉求。从香农的完美安全(Perfect Secrecy)到语义安全(Semantic Security),人们都希望一个加密算法的输出应足够随机,以使得其不会泄露关于明文和密钥的任何信息。
为了规范这些“感觉”,前人提出了“不可区分性” (Indistinguishibilty, IND)这一概念来描述算法的机密性。然而,一个算法达成不可区分性时所处于的安全模型可能是不同的。因此,我们在讨论一个加密算法的不可区分性强度时,需要明确其面对的安全模型。下面我们就介绍几种在加密算法中常见的IND安全模型。
注意