一、什么是 Https?
Https简单讲就是 Http安全版,通过加入 SSL层,达到加密传输信息的需要。
二、Https与 Http主要区别:
1、https协议需要到 ca申请证书,一般需要费用。
2、http传输的信息是明文,https是通过 ssl加密后再传输的。
3、http端口是80,https端口是443,而且两者的连接方式也不一样。
三、Https原理是什么?
要了解原理,先理解 对称密钥、
1)对称密钥
对称密钥:解密与加密使用同一个密钥。
因为网络传输不安全,第三方截取到密钥,依旧可以破解得到传输的信息。
2)非对称密钥。
RSA算法(非对称加密算法):使用两个密钥(公钥和私钥)进行信息传递的加密与解密。公钥加密的数据,私钥才可以解。私钥加密的数据,公钥才可以解。
好处:第三方只能截取公钥,但是没有私钥。不能解密使用公钥加密的信息,即截取用户的信息也不能解密。
坏处:RSA算法非常用,尽管很安全。
3)非对称密钥 + 对称密钥
Bill先用 RSA算法加密信息,把对称密钥传送给张大胖,安全送到后,不再用RSA算法,俩人用对称加密算法解密。
中间人攻击
Bill发公钥A 被中间人截取,中间人把公钥B发给张大胖,张大胖公钥B加密,然后中间人再解密,再将信息用公钥A加密发给 Bill。
确认身份---数字证书
如何解决上述问题呢?
公信力认证中心(CA)颁发 CA私钥,并可以证明任何人的公钥
1)Bill的公钥以及信息(原始数据A)通过 Hash算法生成摘要,目的:只要数据有一点改变,生成的摘要就会巨变。
2)摘要通过 CA的私钥加密,形成数字签名。
3)数字签名 + 原始数据 = 数字证书。
4)张大胖得到数字证书后,同样对 原始数据A进行 HASH算法,CA的公钥解密,得到CA的消息摘要。
参考资料:
网友评论