美文网首页
浏览器验证网站数字证书的流程(HTTPS协议)

浏览器验证网站数字证书的流程(HTTPS协议)

作者: 施智沂 | 来源:发表于2018-04-28 21:23 被阅读0次

CA下发给网站的证书都是一个证书链,也就是一层一层的证书,从根证书开始,到下级CA,一层一层,最后一层就是网站证书。

浏览器收到服务器发送的证书后,需要验证其真实性。而证书的签名是通过签名算法上级CA的私钥生成的,并非很多文章里简单说的靠CA私钥生成。浏览器需要用上级CA的公钥才能解密签名,并与生成的指纹对比,那么问题来了,这个上级CA的公钥从哪来呢?

答案是此公钥来自于证书链该层的上级CA的证书明文内。单个X509v3证书由以下部分组成:

X.509v3证书由三部分组成:

tbsCertificate (to be signed certificate),待签名证书。

SignatureAlgorithm,签名算法。

SignatureValue,签名值。

tbsCertificate又包含10项内容,在HTTPS握手过程中以明文方式传输:

Version Number,版本号。

Serial Number,序列号。

Signature Algorithm ID,签名算法ID。

Issuer Name,发行者。

Validity period,有效时间。

Subject name ,证书主体名称。

Subject Public Key Info ,证书主体公钥信息,包含公钥算法和公钥值。

Issuer Unique Identifier (optional),发行商唯一ID。

Subject Unique Identifier (optional),主体唯一ID。

Extensions (optional),扩展。

证书链由多个证书一层一层组成的,除了最底层的网站证书的公钥是给用户加密报文外,其他层证书中的公钥均用于解密底层的证书指纹签名。最高层的根证书是自签名的,也就是自己颁发给自己,所以它的公钥不仅用来解密下层的签名,也用来给自己的签名解密。

验证证书是否真实的任务完成了,那么证书是否可靠如何验证呢?一句话,只要根证书可靠,整个证书链就可靠,而根证书是否可靠要看这个根证书是否在操作系统或浏览器内置的可信根证书内,在的话就可信。

相关文章

  • 浏览器验证网站数字证书的流程(HTTPS协议)

    CA下发给网站的证书都是一个证书链,也就是一层一层的证书,从根证书开始,到下级CA,一层一层,最后一层就是网站证书...

  • SSL证书是什么?SSL证书怎么申请?

    一、SSL证书是什么 SSL证书是数字证书的一种,由权威数字证书机构(CA)验证网站身份后颁发,可实现浏览器和网站...

  • 《HTTPS权威指南》-公钥基础设施(PKI)学习笔记

    握手中的身份验证的流程: 由《HTTPS权威指南》-协议学习笔记知道了握手协议中身份验证流程,这里再摘出一遍:1、...

  • 本地调试,解决证书错误

    申请的证书,都需要验证DNS或验证网站。 本地测试无法验证了,https总是提示“证书错误”。 如何让浏览器认为本...

  • 快速安装免费SSL证书

    前言 为了网络数据的传输安全 , 越来越多的网站使用了HTTPS协议 , 并且主流浏览器也会对未启用HTTPS协议...

  • 面试题 - 收藏集 - 掘金

    详细解析 HTTP 与 HTTPS 的区别 - 前端 - 掘金超文本传输协议HTTP协议被用于在Web浏览器和网站...

  • 阿里云域名申请SSL证书

    什么是SSL证书? 数字证书的一种 也称为服务器证书。 遵循SSL协议,由受信任的数字证书颁发机构CA,在验证服务...

  • HTTPS安全的一些tk

    参考连接: 网络数据传输安全及SSH与HTTPS工作原理数字证书原理,公钥私钥加密原理 Https协议详解数字证书...

  • HTTPS数字证书与验证

    数字证书作用 我们知道HTTPS比HTTP安全,它的安全在于通信过程被加密。然而加密算法是用对称加密,也就是说,客...

  • Chromium https 数字证书验证

    一般验证数字证书我们一般分为验证其是否在有效期、是否被吊销以及是否由上级CA签发。但在浏览器的实现中,相对会比较繁...

网友评论

      本文标题:浏览器验证网站数字证书的流程(HTTPS协议)

      本文链接:https://www.haomeiwen.com/subject/twynlftx.html