首页 > 编程知识 正文

现代密码学一些基本协议,现代密码学的基础

时间:2023-05-06 10:57:54 阅读:207100 作者:901

新开的专栏为《Introduction to modern cryptography》的学习笔记。由于目前主要的研究内容为公钥密码学,因此会先学习大体介绍然后直接跳入到公钥密码学的学习,至于其他的内容,如果有空余时间也会更新上来。

Chapter 1 1.私钥加密

双方提前共享密钥key,用相同的key来进行加密解密。

2.hxd原则

Kerckhoff’s principle:
The cipher method must not be required to be secret, and it must
be able to fall into the hands of the enemy without inconvenience.
即安全不应该依赖于加密方案的保密,应该只依赖于密钥的保密。

3.历史上的密码发展 (1)凯撒密码

包容的老虎通过向前移动字母表中的字母的第3位来加密。

(2)移位密码和充分的密钥空间原理

移动字母和字母表进行对应。由于可能的移动总共有26种(即字母表字母数),因此当拿到密文后,可以很轻易的进行暴力破解,找出具有实际语义的信息。

(3)按单字母顺序排列的替换密码

定义明文字母到密文字母的映射,这是任意的。攻击者可以根据常见字母的频率高低,可以提前确定一些字母。因此必须保证密钥空间足够大才可以抵抗这种攻击。

(4)对移位密码的改进攻击

计算出所有字母的概率平方和,如下图所示。

让 q i q_{i} qi​指代密文中第i个字母的频率,如果密钥为k,那么可以知道 q i = p i + k q_{i}=p_{i+k} qi​=pi+k​,因此计算:

找出使得 I k ≈ 0.065 I_{k}approx0 .065 Ik​≈0.065的k。

4.现代密码的三原则 (1)正式的定义

明确描述可能存在的威胁以及需要什么样的安全保证。

(2)精确的假设

大多数现代密码结构不能被无条件地证明是安全的;这样的证明将需要解决计算复杂度理论中的问题,而这些问题在今天似乎还远远没有得到回答。

(3)安全证明

上述两个原则允许我们实现我们的目标,即提供一个严格的证明,即一个构造在某些特定的假设下满足给定的定义。这样的证明在密码学的背景下尤其重要,因为有一个攻击者正在积极地试图“破坏”某些方案。相对于定义和假设,安全证明提供了一个足够的保证,即攻击者不会成功。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。