常考题目

1.http和https的区别,https链接加密方式是对称还是非对称?

1)https里面是要有证书的,http并没有证书,证书的作用是证明你是这个网站的拥有者,谁去证明?最顶级的CA去帮你证明,这些顶级CA都是浏览器、操作系统本身就自动帮你集成,而且自动添加到信任里面去

2)https要兼顾安全+性能的方面,由于对称式加密虽然速度快,但是安全性特别低,因为双方要规定对称式加密的秘钥,别人都无法知道,但你怎么确保别人不知道你的秘钥呢

3)因此需要有非对称式加密去保证安全,但非对称式加密速度又很慢,如果客户端和服务器端都用非对称式加密,网络得卡死了。所以当双方建立好了非对称加密后,再约定一个随机数,等大家都非对称解密了之后呢,就拿到只有对方知道的唯一随机数(秘钥),就可以用秘钥来进行对称式加密和解密了

为什么https有了证书就比较安全呢

1)是因为证书本身携带的信息有这个网站还有这个网站自己生成的公钥,网站会去权威的机构去申请,比如国家的、地方的顶级CA机构去申请,通过后了,这个证书就是唯一的,顶级CA就只认你这个证书。

2)那么当你访问百度的时候,百度就会提供证书给你,操作系统和浏览器的顶级CA就会帮你判定这个证书是不是百度的,如果是呢,就会在url中,显示https是绿色的,是合法的,这样呢,你传输数据的时候呢,就会用这个百度证书里面的公钥去加密内容,比如你传输的是你的账号密码,通过公钥加密变成别人看不懂的东西

3)接下来你把这串看不懂的东西给到百度呢,百度因为有自己的公钥,公钥的解密,只有私钥可以解密公钥,私钥只有百度自己有,它从来没有给过被人,百度给过别人的只有公钥,所以只有百度能解密,别人拿到了你的传输的数据也没有用,根本无法破解,白拿

4)就算别人拿到公钥,冒充这个公钥,要向你索取账号和用户名,但我浏览器传输东西的时候,就是先判断这个公钥是不是百度,再用公钥加密的,所以你拿假的公钥,首先在https中就会显示红色,不是绿色

可以参考该博文1)https://www.cnblogs.com/jesse131/p/9080925.html

2)https://blog.csdn.net/guolin_blog/article/details/104546558?utm_source=app

posted @ 2020-05-07 18:19  zhaikunkun  阅读(111)  评论(0)    收藏  举报