SSL证书的根证书和中间根证书的区别。

什么是根证书?

根证书是指CA机构颁发SSL证书的核心,是信任链的起始点。
根证书是浏览器是否对SSL证书每个浏览器都有一个根证书库?有的浏览器是采用自主的根证书库,而一些浏览器则采取第三方的根证书库。
而根证书库是下载客户端浏览器时预先加载根证书的合集。因此根证书是十分重要的,因为它可确保浏览器自动信任已使用私钥签名的SSL证书。

受信任的根证书是属于证书颁发机构(CA),而CA机构是验证和颁发SSL证书的组织机构。

什么是证书链?

浏览器是如何鉴定信任网站的SSL证书?

其实当客户端访问服务器时,浏览器会查看SSL证书并执行快速验证SSL证书的真实性。浏览器鉴定SSL证书身份验证的操作是根据证书链的内容。那么证书链是什么?

用户在获取SSL证书之前,首先要生成证书签名请求(CSR)和私钥。在最简单的迭代中,用户将生成的CSR发生到证书颁发机构,然后使用CA机构的根证书的私钥签署用户的SSL证书,并将SSL证书发回给用户。

当浏览器检测到SSL证书时,就会查看证书是由其中一个受信任的根证书签名(使用root的私钥签名)。由于浏览器信任root,所以浏览器也信任根证书签名的任何证书。

证书链是由两个环节组成—信任锚(CA 证书)环节和已签名证书环节。信任锚证书CA 环节可以对中间证书签名;中间证书的所有者可以用自己的私钥对另一个证书签名。这两者结合就构成了证书链。

什么是中间证书?

证书颁发机构(CA)不会直接从根目录颁发服务器证书(即SSL证书),因为这种行为是十分危险的,因为一旦发生错误颁发或者需要撤销root,则使用root签名的每个证书都会被撤销信任。

因此,为了避免这种风险发生,CA机构一般会引用中间根。

CA机构使用其私钥对中间根进行签名,使浏览器信任中间根。
然后CA机构使用中间根证书的私钥来签署用户申请的SSL证书。这种中间根的形式可以重复多次,即使用中间根签署另一个中间件,然后CA机构通过中间件签署SSL证书。

这是证书链的可视化过程,从上述例子可看出,CA机构只需要使用一个中间体来保持简单的操作,但其实真正的证书链通常要复杂的多。

数字签名有什么作用?

当根证书以数字方式签署中间证书时,就会将部分信任转移到中间证书。因为签名是直接来源于收信人的根证书的私钥,因此它会自动受信任。

当浏览器或其他客户端检测到服务端的SSL证书,就会收到证书本身或与证书相关联的公钥。然后通过公钥,解锁数字签名,查看是由哪家企业签署了证书。即当客户端浏览器访问网站时,会对服务器用户的SSL证书进行身份验证,通过公钥来解锁加密的签名,解锁的签名就会随着签署的证书,反馈到浏览器信任的根证书库中。

如果解锁的签名链接是不在浏览器信任的根证书库中,浏览器就会对该证书显示不安全。

根证书CA和中间根CA的区别?

根证书CA是拥有一个或者多个受信任根的证书颁发机构,即CA机构已扎根在主要浏览器的信任库中。而中间根CA或子CA是颁发中间根的证书颁发机构,他们不一定在浏览器的信任库中有根证书,而是将他们的中间根链接回收到受信任的第三方根,这种就被称为交叉签名。

所以有一些CA机构颁发的证书并不是直接从他们的根源发出的,而是通过中间根签署证书来加强安全层,这有助于减少发生错误或安全事件的机率。如果撤销中间根,而不是撤销根证书以及按扩展名签署的证书,这种做法会导致中间根签发的证书不受信任。

其实目前就有一件经典的案例,就是谷歌和其他主流的浏览器都取消对赛门铁克品牌的SSL证书。据悉,赛门铁克的SSL证书目前已颁发了数百万,取消对其的信任似乎是一件艰巨的项目。但在实际中,这是一项非常简单的工作,因为只需要在浏览器的根证书库中删除Symantec CA的所有根就可以。

链式根和单一根之间的区别?

单一根是由CA拥有的,可直接颁发证书,可以让部署证书的操作步骤变得更加简单。而链式根是Sub CA用于颁发证书的内容,是一个中间证书,但是因为中间根CA没有自己受信任的证书,必须链接到第三方受信任的CA。

链式根和单一根的区别具体如下:

链式根需要比较复杂的安装方法,因为中间根需要加载到托管证书的每个服务器和应用程序。

链式根需要受到链接的CA支配,因为他们无法控制root用户,一旦root CA停业,他们也会收到巨大的牵连。

根证书和中间证书过期的话,中间根必须要在根证书之前,这样就会增加工作难度。

最后

以上所提到的证书颁发机构、证书链和加密签名的信任根证书,其实本质上都是PKI或者公钥基础结构。

SSL证书的根证书和中间根证书的区别相关推荐

  1. SSL数字证书(一)CA、根证书与数字证书

    数字证书原理(〇)认识SSL SSL数字证书(一)CA.根证书与数字证书 SSL数字证书(二)使用makecert.exe签发证书 SSL数字证书(三)使用 openssl 生成证书 网络安全无疑是现 ...

  2. Vs2019 C# .net core 将证书添加到受信任的根证书存储失败,出现以下错误:访问控制列表(ACL)结构无效...

    https://www.cnblogs.com/xiyuan/p/10632579.html 使用 vs2017 创建一个 ASP.NET Core Web 应用程序 -> Ctrl + F5 ...

  3. 转载:Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名...

    转载:Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名 Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名 July 20, 20 ...

  4. 企业根CA方法客户机证书的解决方案,ISA2006系列之三十

    企业根CA如何发放客户机证书-L2TP证书问题的补充说明<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:offic ...

  5. 自建ca根证书_独立根CA的安装与证书申请

    独立根 CA 的安装与证书申请  独立根 CA 与企业 CA 不同,独立 CA 不需要使用 Active Directory 目录服务.独 立 CA 最初是为了用作 CA 层次结构中的受信任的脱机根 ...

  6. 自定义根证书颁发机构 CA 生成自签名证书

    本文为使用过程中的一个工具记录,可实现在本地开启一个 HTTPS 服务器用于开发或测试. 前面有写过使用 Node.js 搭建 HTTPS 服务器 其中的自签名生成证书方式比较简单,既充当 HTTPS ...

  7. Fiddler创建根证书不成功和无法找到根证书的解决方法

    -操作系统:Windows 7 -Fiddler版本:4.6.3的汉化版 提示:我是在win7环境下安装了Fiddler4.6.3中文汉化版的,但是软件无法创建根证书,并提示创建根证书不成功: 目录 ...

  8. 安卓SSL证书格式:pfx转换BKS格式证书

    申请SSL证书 实际上在Android中是无法使用pfx格式证书,Android 系统中使用的证书要求是bks格式.要转换bks证书格式,首先要搭建转换证书的环境. 一.jdk默认情况下是不支持BKS ...

  9. SSL数字证书(三)使用 openssl 生成证书

    数字证书原理(〇)认识SSL SSL数字证书(一)CA.根证书与数字证书 SSL数字证书(二)使用makecert.exe签发证书 SSL数字证书(三)使用 openssl 生成证书 转载自<使 ...

  10. SSL证书中DV、OV、EV证书的区别有哪些

    现在SSL证书有很多品牌,每个品牌SSL证书又分成三种类型证书.SSL证书分为DV型SSL证书.OV型SSL证书.EV型SSL证书.虽然都是SSL证书,但在申请方式及展现形式却有些区别. 区别一:申请 ...

最新文章

  1. 小孩学python有意义吗-世界冠军教练告诉你:少儿编程这些坑,能不踩就别踩!...
  2. Android 广播机制---BroadCast
  3. 使用 Jenkins 自动部署 java-web 应用到 Docker 容器(全过程)
  4. 去哪儿-04-iconsDev
  5. centos打开 mysql数据库文件_centos安装mysql数据库和配置mysql数据库
  6. 基于tornado的爬虫并发问题
  7. MySQL5.7安装教程(windows .zip)
  8. 错误信息: 集合已修改;可能无法执行枚举操作。
  9. [转载]利用TTL值来鉴别操作系统
  10. 一味地追求流量正确么?
  11. 今天8月5号 2011-08-05
  12. 安全计算:AVG免费版提供免费病毒防护
  13. 分贝噪音测试软件文件存储,分贝噪音测试工具
  14. 转:不同的行业和工作的真实情况是怎样的?
  15. javaweb复习题库
  16. [CISCN2019 总决赛 Day2 Web1]Easyweb
  17. 计算机桌面推流,OBS推流PPT电脑桌面投屏
  18. 为什么webview中网页字体大小跟样式设置的不同?
  19. 哪些业务需要使用CDN加速服务?
  20. [Python]自学笔记36:论一只爬虫的自我修养3:隐藏

热门文章

  1. 【VBA研究】输出PDF文件合并时出错
  2. RGB图像-像素、分辨率、相关概念
  3. 迅为iTOP-i.MX6ULL开发板I2C驱动程序实现 I2C通信
  4. 高等学校计算机水平考试分值,请问计算机二级ps的考试题型和分值是怎样的?...
  5. svg果冻弹性按钮动画js特效
  6. 2022年12月10日作业
  7. 从自动驾驶事故中探索有效的性能提升及判责策略
  8. Python科研数据分析专题之正态性检验
  9. 58、【backtrader股票策略】两资产的配对交易策略(pairs trading strategy)
  10. 苹果平板可以用html么,哪些苹果平板可以用苹果笔