SSL证书的验证过程?

SSL证书的验证过程?,第1张

首先服务机构向 CA 申请 SSL 证书,提供企业信息,法人,域名等等企业信息。CA 机构验证后,会先自己生成一个证书,可以理解为可读的明文。(实际上是一个特定格式的数据文件,但此处为了理解做出抽象)
验证通过,生成证书后, CA 机构会对明文证书进行Hash,得到摘要信息,并将摘要信息使用 CA 私钥 进行加密得到数字签名。之后将 证书明文内容+数字签名 返回到服务机构。
客户端和服务器握手时,服务器将 CA 机构生成的 证书明文内容+数字签名 发送给客户端。客户端通过 *** 作系统或者浏览器内置信任的CA机构找到对应CA机构的公钥对数字签名进行解密,然后采用同样的摘要算法计算SSL证书的摘要,如果自己计算的摘要与服务器发来的摘要一致,则证书是没有被篡改过的!

SSL握手协议包含以下四个阶段:
1)发起阶段
客户端发送一个Client-Hello消息并等待,服务器发送一个Server-Hello消息。
2)服务器认证和密钥交换阶段
服务器发送自己的证书,然后发送可选的Server-Key-Exchange消息,接着发送Certificate-Request消息,向客户端请求一个证书,最后服务器发送Server-Hello-Done消息,并等待客户端应答。
3)客户端认证和密钥交换阶段
客户端收到Server-Hello-Done消息后,验证服务器提供的证书,发送客户端证书,然后根据密钥交换的类型发送Client-Key-Exchange消息,最后发送一个包含对前面所有消息签名的Certificate-Verify消息。
4)结束阶段
客户端发送Change-Cipher-Spec消息,告知协商得到的密码算法列表,然后用新的算法和密钥参数发送一个Finished消息,以检验密钥交换和认证过程是否已经成功。服务器同样发送Change-Cipher-Spec和Finished消息


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zz/13488299.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-17
下一篇 2023-08-17

发表评论

登录后才能评论

评论列表(0条)

保存