黑客业务

24小时接单的黑客,黑客业务,黑客怎么找,网络黑客,黑客技术

网络篇:朋友面试之Https认证加密过程

本文转载自微信公众号「潜行前行」,作者cscw。请联系潜行微信官方账号转载本文。

面试官:HTTPS其认证加密过程是什么,如何确保内容不被篡改

                   
  • 朋友:1,https是基于tcp如果达成协议,客户端将首先与服务器建立链接
  •                
  • 朋友:2,然后服务端将其证书返回给客户端,包括公钥S.pub、发行机构和有效期等信息
  •                
  • 朋友:3.通过浏览器内置的根证书可以获得证书(包括C.pub)验证其合法性
  •                
  • 朋友:4.客户端生成随机对称加密密钥Z,公钥通过服务端S.pub向服务端加密
  •                
  • 朋友:5.客户端和服务端通过对称钥匙Z加密数据http通信

面试官:如何保证签发的证书安全有效?

                   
  • 朋友:1-服务器将提前生成非对称加密钥S.pri保留自己;公钥S.pub则发给CA机构进行签名认证
  •                
  • 朋友:2-CA它还将提前生成一个不对称的加密钥C.pri公钥用于服务器S.pub签名生成CA证书
  •                
  • 朋友:3-CA该机构将生成签名CA证书返回给服务器,即刚才服务端给客户端的证书
  •                
  • 朋友:4-因为CA(证书颁发机构)更权威,所以很多浏览器会内置其公钥(C.pub)证书称为根证书。然后,根证书可以用来验证颁发证书的合法性

面试官:如果发生无限套娃,根证被篡改怎么办?

                   
  • 朋友:无解,这是需要的CA根证准确,不手动强制修改本地根证就可以了,因为没有原根证认证的证书不能自动加入根证

面试官:你说得有点快。

                   
  • 朋友:https加密过程

                   
  • 朋友:服务证通过CA机构签名认证的过程如下
  •                

面试官:你前面说过CA机构将用密钥签名、签名和加密服务器的公钥。你怎么理解?

                   
  • 朋友:使用非对称加密算法时,签名用于表示私钥的加密过程
  •                
  • 朋友:如果用公钥加密数据,那就是加密
  •                
  • 朋友:相反,用私钥加密数据被称为签名图片

面试官:那CA什么是证书?

                   
  • 朋友:CA该证书旨在确保服务端的公钥准确,未修改
  •                
  • 朋友:证书通常包含这些内容(1) 服务端公钥;(2) 证书发行人(CA)证书数字签名;(3) 证书使用的签名算法;(4) 其他信息,如证书发布机构、有效期、所有者信息等。

面试官:你说的HTTPS使用加密算法时,加密算法哪些类型?

                   
  • 朋友:加密算法分为三类:单向加密、对称加密算法和非对称加密算法

面试官:对称加密和非对称加密有什么区别吗?

                   
  • 朋友:当使用对称加密时,加密和解密使用相同的密钥;非对称加密是两个密钥,公钥加密需要私钥解密,私钥加密需要公钥解密。私钥不能加密,私钥解密

面试官:MD5、SHA、Base64和RSA什么类型的算法,对称还是不对称?

                   
  • 朋友:MD5、SHA,摘要算法可分为单向加密算法,其计算的摘要信息不可逆转地恢复到原始数据
  •                
  • 朋友:RSA属于非对称加密算法
  •                
  • 朋友:而Base64它通常被称为数据编码,而不是加密算法

面试官:用过什么?HTTP客户端工具

                   
  • 朋友:apache的CloseableHttpClient、jdk9的httpClient和spring clould体系里的ribbon、feign

面试官:你有用过吗?https证书问题,如果有,是什么问题呢?

                   
  • 朋友:当然,有一次使用apache-httpClient加载自定义证书(未通过)CA认证),试验服抛出证书不能信任,但本地运行没有问题
  •                
  • 朋友:原因是证书是在当地生成的当时默认加入了根证书,测试服jre的根证书目录(/lib/security/cacerts)没有这个证书,放在项目里resource证书不能生效

面试官:哦,你是怎么解决的?

                   
  • 朋友:三种解决方案。1-重写TrustManager,无条件信任证书;2-把证书加到jre根证书目录;3-通过CA认证

面试官:网络数据抓包不懂

                   
  • 朋友:在linux可使用系统tcpdump命令对tcp请求数据抓取包,将抓取的数据输出到文件中;然后可以window使用wireshark软件加载tcp它可以提供界面分析

面试官:讲得还不错,那下面我们换个话题,聊聊mysql事务....

                   
  • 朋友:是的,我对事务有一点了解...图片

参考文章

                   
  • 图解HTTPS[1]
  •                
  • 什么是签名和数字证书?
  •                
  • 什么是数字签名?

Reference

[1]图解HTTPS建立过程:

https://www.cnblogs.com/softidea/p/6958394.html

[2]摘要、签名与数字证书都是什么?:

https://www.jianshu.com/p/b2774634041a

[3]什么是数字签名?

http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html

   
  • 评论列表:
  •  孤鱼照雨
     发布于 2022-05-28 13:11:39  回复该评论
  • 公钥S.pub则发给CA机构进行签名认证                朋友:2-CA它还将提前生成一个不对称的加密钥C.pri公钥用于服务器S.pub签名生成CA证书                朋友:3-CA该机构将生成签名CA证书返回给服务器,即刚才服务端
  •  拥嬉心児
     发布于 2022-05-28 19:11:00  回复该评论
  •    朋友:4.客户端生成随机对称加密密钥Z,公钥通过服务端S.pub向服务端加密                朋友:5.客户端和服务端通过对称钥匙Z加密数据h
  •  蓝殇花桑
     发布于 2022-05-28 21:04:42  回复该评论
  • 服务端公钥;(2) 证书发行人(CA)证书数字签名;(3) 证书使用的签名算法;(4) 其他信息,如证书发布机构、有效期、所有者信息等。面试官:你说的HTTP
  •  余安清引
     发布于 2022-05-29 00:41:33  回复该评论
  •      朋友:如果用公钥加密数据,那就是加密                朋友:相反,用私钥加密数据被称为签名图片面试官:那CA什么是证书?                朋友:CA该证书旨在确保服务端的公钥准确,未修改                

发表评论:

Powered By

Copyright Your WebSite.Some Rights Reserved.