申请https证书

引入证书:

当服务器使用HTTPS之前都会申请一份证书,证书是为了证明服务端公钥的权威性,服务器向浏览器传输证书,浏览器再从证书里获取公钥,
证书=明文数据+签名。

如何理解CA签发证书的过程

a.CA会有自己的公钥 和 私钥(CA独有) CA CA*

b.CA会公布CA的公钥 我们的客户端必须内置CA公钥

c.我们的浏览器只认CA的公钥,也就意味着只有CA有着签发证书的权利

首先服务端向CA提交自己的企业信息申请认证证书,CA审查后,对企业的明文信息用哈希或其他的方法形成数据指纹,CA用自己的私钥对数据指纹加密形成签名,这个签名由于只有CA拥有私钥,所以无法生成第二个签名。CA再将签名和明文信息放在一起,形成证书。再签发给服务端,
证书里的明文,中间人不是也可以去获获取篡改?

思考一下,假设我们是中间人,我们肯定是像方案四一样,再客户端得到服务端的公钥之前就把服务端的公钥改成自己的公钥,如果不在客户端得到之前改,那么客户端一得到服务端的公钥 S ,就传递S+P(客户端公钥)给服务端,此时中间人再怎么样也得不到客户端的公钥P了,此后服务端与客户端开心的用P加密用P解密,也就无懈可击了。所以重点是中间人是要去篡改服务端公钥,换成自己的公钥

a.CA会有自己的公钥 和 私钥(CA独有) CA CA*

b.我们的客户端必须内置CA公钥

c.我们的浏览器只认CA的公钥,也就意味着只有CA有着签发证书的权利

中间人假设去改公钥,但是客户端对照一下数据指纹,发现明文数据形成的数据指纹与签名解密出的数据指纹不一样,就会发现内容被改了,

那如果去改签名再去改数据,此时,签名被改了,当客户端用CA的公钥对签名进行解密,发型客户端根本无法解密,自然也就发现签名被改了

那改证书呢,那把证书向CA申请证书再换成自己的证书,一是自己企业信息暴漏,二是在明文信息中有域名,当浏览器识别到中间人证书域名跟自己请求访问服务器的域名不一样,也就发现证书被换了。

所以中间人想篡改服务端的公钥,就不能得逞了。

相关推荐
天诰33 分钟前
SA-K-11 检索会消失吗与四个未解问题
java·服务器·人工智能·python·机器学习·ai编程
陈希1232 小时前
Linux 防火墙配置实战:firewalld、iptables 与云安全组
linux·运维·服务器
女神下凡3 小时前
芯参谋(95):嵌入式文件系统_开发指南
linux·服务器·arm开发·驱动开发·设计规范
@兽血沸腾3 小时前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
讯捷蓝达9 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
数字新视界11 小时前
动环监控信创适配在智能机房管理中的应用价值与未来展望
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
爱和冰阔落11 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
陈希12311 小时前
Nginx 从入门到能扛事:反向代理、负载均衡与 HTTPS 实战
nginx·https·负载均衡
lisanmengmeng12 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮12 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频