https申请证书并部署到网站流程,浏览器验证证书流程
https申请证书并部署到网站流程:
1、生成一对秘钥,设公钥为pubk1,私钥为prik1
2、假设发布的网站地址为https://www.example.com
3、生成一个CSR文件(Cerificate Signing Request),该文件内容包括: pubk1,网站地址,以及营业执照等信息,然后将该文件发给CA机构
4、CA机构收到CSR文件后,进行审核,主要检查网站地址的拥有者是否是证书的申请者
5、审核通过后,CA机构生成一对秘钥,假设采用ECDSA签名算法,公钥为pubk2,私钥为prik2。用prik2对CSR文件进行签名得到签名值sigVal,将sigVal附在CSR文件后面形成证书文件caFile,caFile中还要添加CA机构的信息,如: 签名算法,CA机构名称等
6、将证书文件caFile放到网站服务器对应目录下
====================
====================
浏览器验证证书流程:
1、浏览器向服务器发请求https://www.example.com
2、服务器将caFile和pubkey1(实际上就是申请证书流程中生成的一对秘钥中的公钥pubk1)发给浏览器
3、浏览器收到caFile文件进行分析,知道了签名算法;拿到CA机构名称后,由于浏览器中内置了该CA机构的根证书,所以知道pubk2;还知道caFile文件中的签名值sigVal以及原文(caFile的一部分,这部分在申请证书流程中称为CSR文件)知道这四个条件,就可以验证签名了,若验证签名成功则进入第4步。
4、接下来浏览器校验证书申请者的身份,从caFile中取出pubk1和网站地址w1。如果w1和https://www.example.com一摸一样,而且pubk1与连接成功后服务器发下来的公钥pubkey1相等,则说明浏览器连接的https://www.example.com没问题,而且没有受到中间人攻击
5、一旦服务器校验成功,接下来就是进行秘钥协商,这个协商成功后的秘钥就是真正用来加密业务数据的秘钥
golang技术交流群:316397059,vuejs技术交流群:458915921 囤币一族:621258209,有兴趣的可以加入
微信公众号: 心禅道(xinchandao)投资论道
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2018-07-19 根据IP获取所在的国家城市
2017-07-19 tomcat警告WARNING: An attempt was made to authenticate the locked user "user"
2017-07-19 Adobe Illustrator CS6 界面文字按钮太小,高分屏win10PS/AI等软件界面字太小解决方法