-
一 加密知识
- 1.1 单向加密
- 1.2 对称加密
- 1.3 非对称加密
-
二 加密知识总结
- 从一个需求开始
相信很多人,对 https 的过程弄不清楚,只是知道 https 是安全加密的,背后的原理,过程并不清楚
笔者曾经也是对 https 的过程并不清楚,一知半解,而且最可气的是每次面试,面试官很可能就问你这个问题
每次都答不对或者答的面试官不满意,说来说去,还是自己没有真正理解
其实 https 的原理过程,并没有那么复杂,只是有些文章没有说清楚,这样的文章看多了,就迷糊了。
在了解 https 原理的过程之前,我们先来了解一下加密的知识
一 加密知识
加密按照加密方式,可以分为以下三种方式
1.1 单向加密
也叫做不可逆加密,对明文的加密产生一个密文,并不能再通过密文,解出来对应的明文
一般用于产生消息摘要,密钥加密等,常见的单向加密有:
- MD5 : 相信这个大家都都熟悉了,一个明文,md5 以后,对应一个唯一的密文
- SHA : 其中又分为 sha192 , sha256
特点:
- 不可逆
- 输入一样,输出必然相同
1.2 对称加密
对称加密,用一个密钥,对明文进行加密,同理,同这把密钥,也可以对密文进行解密
也就是说加密和解密,可以用同一个密钥
这种加密方法就是 对称加密
常用的对称加密方法有:
- DES
- 3DES
- AES
特点:
- 加密方和解密使用同一密钥
- 加密解密的速度比较快
1.3 非对称加密
我们知道,对称加密使用同一把密钥,相反,非对称加密,使用公钥和私钥进行加密解密
可以使用私钥加密,公钥进行解密,同理,也可以使用公钥加密,私钥进行解密
常见非对称加密方式的有:
- RSA
- DSA
我们平时最常用的就是 RSA
特点:
- 使用两把密钥进行加密和解密,即公钥和私钥
- 公钥加密私钥解密,私钥加密公钥可以解密
- 加密或者解密,速度非常慢
- 私钥和公钥是成对出现的
二 加密知识总结
** 单向加密:** 不可逆,只要输入的内容一样,输出的密文一定是一样的,有任何修改, 产生的密文都是不同的
** 对称加密:** 加密和解密使用同一把密钥,加密解密速度特别快
非对称加密: 使用公钥和私钥进行加密和解密,公钥加密私钥解,私钥加密公钥解。加密解密的过程非常慢
所谓公钥,就是可以公开给别人的
所谓私钥,就是不可以公开给别人,是自己私有保留的。
注:以上内容,纯粹是加密的知识,和 https 没有任何关系。下面我们开始讲解 https 的过程。我们先看一个需求