面试官问你了解https吗?

一、对称和非对称加密算法

1.1 对称加密

对称加密:用来加密和解密的**是一样的,常见的算法:AES(常用),DES,3DES

【面试】Https

1.1.1 加密过程

  1. 得到**letmekang。
  2. 把**穿个客户端。
  3. 通过**加密得到密文。
  4. 通过原有的**解密。

1.1.2 对称加密的不适应性

对称加密前提条件:服务器和客户端都有**。把**传给客户端的做法那只能是通过网络传,盗窃**就成为可能,那拿到**以后第三者也是可以进行解密的,所以对称加密并不适合网上传递**。

1.2 非对称加密

不对称加密:用来加密和解密的**是不一样的。公钥加密只能用私钥解密,私钥加密只能用公钥解密。

【面试】Https

1.2.1 加密过程

  1. 得到公钥和私钥。
  2. 把公钥传给客户端。
  3. 客户端通过公钥加密得到明文。
  4. 密文传给服务器端,服务器端通过私钥解密得到用户名和密码。

1.2.2 不对称加密的不适应性

不对称加密要消耗更多的cpu资源去进行解密运算,耗时。

二、 https的原理

既然对称加密之前要进行**的传递,那把**当做是明文利用非对称加密把**传给客户端,往后都用对称加密传递的信息,既保证了信息的安全性也保证了往后内容加密解密速度的提升。

对称加密结合非对称加密:

【面试】Https

https请求就是多了验证公钥是否过期,传递公钥的时候多加了安全证书。

【面试】Https

2.1 https流程:

  1. 得到公钥:letmekang和私钥:buxukang。
  2. 服务器端把公钥letmekang和安全证书一起携带到客户端。
  3. 校验安全证书是否过期,过期则返回错误响应,否则下一步。
  4. 生成随机的**gugu,用公钥加密gugu得到9cnwh%ee
  5. 把9cnwh%ee传给服务器端。
  6. 用私钥buxukang解密得到gugu
  7. 利用gugu作为共同的**加密下文信息。

2.2 抓包分析https

【面试】Https

 追踪TCP流Client Hello

可以看见随机生成的字符串和session ID以及是一些加密套装以及服务器的信息。

【面试】Https

【面试】Https

以上是我个人的拙见,有什么意见【面试】Https

相关文章:

  • 2021-04-01
  • 2021-07-08
  • 2021-04-23
  • 2021-04-21
  • 2021-06-22
  • 2021-11-15
  • 2022-12-23
  • 2021-12-21
猜你喜欢
  • 2021-11-29
  • 2022-12-23
  • 2021-11-13
  • 2021-12-02
  • 2021-10-20
  • 2022-12-23
  • 2021-08-22
相关资源
相似解决方案