现代密码学(一)
新开的专栏为《Introduction to modern cryptography》的学习笔记。由于目前主要的研究内容为公钥密码学,因此会先学习大体介绍然后直接跳入到公钥密码学的学习,至于其他的内容,如果有空余时间也会更新上来。
Chapter 1
1.私钥加密
双方提前共享密钥key,用相同的key来进行加密解密。
2.柯克霍夫斯原则
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)对移位密码的改进攻击
计算出所有字母的概率平方和,如下图所示。
让qiq/{i}qi指代密文中第i个字母的频率,如果密钥为k,那么可以知道qi=pi+kq/{i}=p/{i+k}qi=pi+k,因此计算:
找出使得Ik≈0.065I/{k}/approx0
.065Ik≈0.065的k。
4.现代密码的三原则
(1)正式的定义
明确描述可能存在的威胁以及需要什么样的安全保证。
(2)精确的假设
大多数现代密码结构不能被无条件地证明是安全的;这样的证明将需要解决计算复杂度理论中的问题,而这些问题在今天似乎还远远没有得到回答。
(3)安全证明
上述两个原则允许我们实现我们的目标,即提供一个严格的证明,即一个构造在某些特定的假设下满足给定的定义。这样的证明在密码学的背景下尤其重要,因为有一个攻击者正在积极地试图“破坏”某些方案。相对于定义和假设,安全证明提供了一个足够的保证,即攻击者不会成功。
《网络安全从零到精通全套学习大礼包》
96节从入门到精通的全套视频教程免费领取
如果你也想通过学网络安全技术去帮助就业和转行,我可以把我自己亲自录制的96节 从零基础到精通的视频教程以及配套学习资料无偿分享给你。
网络安全学习路线图
想要学习 网络安全,作为新手一定要先按照路线图学习,方向不对,努力白费。对于从来没有接触过网络安全的同学,我帮大家准备了从零基础到精通学习成长路线图以及学习规划。可以说是最科学最系统的学习路线,大家跟着这个路线图学习准没错。
配套实战项目/源码
所有视频教程所涉及的实战项目和项目源码
学习电子书籍
学习网络安全必看的书籍和文章的PDF,市面上网络安全书籍确实太多了,这些是我精选出来的