《图解密码技术》我认为是一本密码学入门的易读书,身边的几个做密码相关工具的朋友都推荐我看看,这次有时间就看了下。
本书是我11月份开始阅读的,一共用了25天,每天读完后都会把一些我认为是重点的章节和内容做个总结并写在印象笔记中,这样做的目的是之后在使用的时候可以快速的查找到不用在去翻书,并可以让我随时可以查看。如果各位有时间并对密码学感兴趣建议还是去买本书读下。在读书之前我以为我会读不懂,但读后确实通俗易懂,并且对程序员很有帮助。
内容是我一点一点按照书中的文字敲的,有些我认为不错的图,我都拍了下来。因为本书的内容太多,我会分多篇进行发布。
有句话说的好,要带着疑问去读一本书,这样会让你随时都会有收获。
以下为我在读书之前对密码学存在的一些疑问:
1、密码学家工具箱6个重要的工具具体指什么:
对称密码、公钥密码、单向散列函数、消息认证码、数字签名和伪随机数生成器。
2、每个技术是为了解决什么问题的
3、PKI公钥基础设施
4、SSL/TLS
5、密码技术的完美组合
下边开启图解密码技术的学习:
学习的前绪
我们平时使用的淘宝或者QQ使用的用户名和密码、刷信用卡或者在ATM机上取钱输入的密码 其实就是向系统证明你才是这个账号或银行卡的主人的一种证据,跟“天王盖地虎!”“宝塔镇河妖!”差不多一回事。严格来说,这种密码应该叫做口令(对应英文中的password、passcode或者pin)
正式学习的开始
第1部分 密码
第一章 环游密码世界
A(发送者)给B(接收者)发邮件 E(窃听者)可以去窃听邮件
A不想让别人看到邮件内容,于是决定加密(encrypt)后再发送出去,加密之前的消息称为明文(plaintext),加密之后的消息称为密文(ciphertext)。
B收到来自A的加密邮件,但是无法直接阅读密文,于是B需要对密文进行解密(decrypt)之后再阅读。解密就是将密文恢复成明文的过程。
这里A和B就是通过运用密码(cryptography)技术,保证了邮件的机密性(confidentiality)。
什么叫密码算法? 1.3.1
用于解决复杂问题的步骤,通常称为算法(algorithm)。从明文生成密文的步骤,也就是加密的步骤,称为加密算法,而解密的步骤则称为解密算法。加密、解密的算法合在一起统称为密码算法。
密码算法中需要密钥(key)。
![](https://img-blog.csdnimg.cn/20191230154116764.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd4aW54dTUyMQ==,size_16,color_FFFFFF,t_70)
无论是在加密还是解密时,都需要知道密钥。
正如保险柜的钥匙可以保护保险柜中存放的贵重物品医院,密码中的密钥可以保护你的重要数据。即使保险箱再坚固,如果要是被盗,则里面的贵重物品也会被盗。同样地,我们也必须注意不要被密码的密钥被他人窃取。
能够防止伪装、篡改、和否认等威胁的技术,就是数字签名(digital signature)。数字签名就是一种将现实世界中的签名和盖章移植到数字世界中的技术,它也是一种重要的密码技术。
例如:A对内容加上数字签名后再通过邮件发送,而B则可以对该数字签名进行验证(verify)。通过这样的方式,不但可以检测出伪装和篡改,还能够防止事后否认。
有很多种类的密码技术,其中以下六种发挥着尤其重要的作用:
1、对称密码
2、公钥密码
3、单向散列函数
4、消息认证码
5、数字签名
6、伪随机数生成器
在本书中,我们将上述六种技术统称为密码学家的工具箱。