何谓安全

信息论研究在有噪声的环境下的通信;而密码学研究在有敌手的环境下的通信。

前人之述备矣,不想更了。

0.引言

0.1.威胁 风险 攻击 漏洞

  • Threat
    A threat is a possible danger that might exploit a vulnerability.

  • Risk
    An expectation of loss expressed as the probability that a particular threat will exploit a particular vulnerability with a particular harmful result.

  • Attack

    An assault on system security that derives from an intelligent threat.

  • Vulnerability
    A flaw or weakness in a system’s design, implementation,or operation and management that could be exploited to violate the system’s security policy.


0.2.非形式化地讲安全

总的来说,安全定义包含两个部分:安全目标(或者说,以敌手的视角,怎样才达成一次成功的攻击)和威胁模型(敌手能力)。


以下将针对加解密来阐述何谓安全。

怎样才算是一个“安全”加密方案?(如何定义安全)

  • 敌手恢复密钥应当是不可能的。

    我们可以很容易地看出来,如果敌手可以确定通信双方约定好的密钥,那么该加密方案就是不安全的。然而这个条件并不充分,一个很简单的例子就是:Enck(m)=mEnc_k(m) = m, 密文没有泄露任何有关密钥的信息,但明文却已一览无遗了。这带来了一个启示:保证密钥的机密性本身不是目的,用它达成安全目标才是。

  • 敌手从密文中恢复明文应当是不可能的。

    然而这个条件也不充分,一个很简单的例子就是:假如一个加密方案的密文会泄露90%的明文信息,即便敌手无法恢复完整的明文,那也是不安全的。

  • 敌手从密文中得到明文的任何一个比特应当是不可能的。

    这个条件还不够完善。即使攻击者不能得到明文的任何一个比特,但可以获得某些关于明文的信息,比方说,在存储了薪酬并加密了的数据库中,攻击者得知某些打工人的工资的上界或下界,也是不安全的。

  • “正确”的答案:若敌手无法从密文中计算出任何关于明文的函数,那么加密方案是安全的。在这种情况下,敌手无法获得任何有关明文的信息,这个安全定义,其实就是无条件安全。


因为是非形式化,所以不用纠结细节。


0.3.威胁模型

威胁模型即敌手能力,能力由低到高见下。

  • Ciphertext-only attack
  • Known-plaintext attack
  • Chosen-plaintext attack
  • Chosen-ciphertext attack

翻译过来就是

唯密文攻击、已知明文攻击、选择明文攻击、选择密文攻击。

需要注意的是,尽管以上能力是所谓的由低到高列举,但并没有其中的哪个能力会严格大于另外一个,具体使用哪个决定于加密方案的部署环境。

除此之外


0.4.合理假设

绝大多数的现代密码学的安全证明依赖于各种假设。

0.4.1.数学假设

为人熟知的有分解大整数问题、离散对数问题、椭圆曲线下的离散对数问题、SVP等等……

1. 无条件安全

无条件安全也称完美安全。

即使拥有无限的计算时间(或者说计算能力)与无限内存,密码还是不能被攻破,这时候我们才说该密码具有完美安全。

例如一次性密码本。


2.计算上安全

对于一个给定的密码算法,如果在合理的时间内,使用合理的资源()都不能被攻破,那么就将该算法视为计算上安全。

计算安全性可以描述为两个变量的表达式:

t:t: 攻击者可以执行的操作数量的上限。

ε:\varepsilon: 攻击成功概率的上限。

具体地,对一个密码方案而言,如果攻击者最多能执行 tt 个操作(具体操作是什么并不关键,我们更关心的是数量级)并且成功的概率不会超过 ε\varepsilon , 那么该密码方案就是 (t,ε)security(t,\varepsilon)security


参考

[1] Introduction to Modern Cryptography

[2] Serious Cryptography:A Practical Introduction to Mordern Encryption

[3] 现代密码学:IMC 学习笔记 - 0xFFFF

文章作者: 莫折眉
文章链接: https://m0d1.top/2022/03/21/securitydefine/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 M0D1.TOP