随着SSL证书的广泛应用,申请SSL证书的人也越来越多,但是很多使用SSL证书的用户其实并不太了解SSL证书。他们仅仅是因为要把站点从HTTP转换到HTTPS而申请使用SSL证书,而最终用户也只是获取SSL证书也是证书链的一部分而已。在本文将为大家介绍关于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机构只需要使用一个中间体来保持简单的操作,但其实真正的证书链通常要复杂的多。

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

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

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

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

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

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

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

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

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

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

根证书和中间根证书之间有什么区别?相关推荐

  1. SSL证书的根证书和中间根证书的区别

    SSL证书的根证书和中间根证书的区别. 什么是根证书? 根证书是指CA机构颁发SSL证书的核心,是信任链的起始点. 根证书是浏览器是否对SSL证书每个浏览器都有一个根证书库?有的浏览器是采用自主的根证 ...

  2. keytool制作CA根证书以及颁发二级证书

    步骤一:环境准备 1)电脑中部署好以下环境 Tomcat:apache-tomcat-9.0.11 JDK:jdk1.8.0_144 通过地址:http://localhost:8080/   可以正 ...

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

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

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

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

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

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

  6. SSL数字证书之CA根证书、CA中间证书和SSL证书

    [前言] 说一下大背景吧,我们的一个后台服务需要部署在一个没法上外网的环境,但是我们的后台服务需要访问七牛云进行对象存储,于是乎,需要一个代理来完成这个访问,我门采用nginx七层来做这个代理,因为七 ...

  7. keytool命令制作CA根证书,签发二级证书

    关于TLS的一些基本信息我这里就不多说了,网上一搜一大堆.这里主要说一下,在tls单向认证里,怎么用keytool命令去制作CA证书,签发二级证书.双向认证也就是照着反方向做一遍就好了. 先附一张简单 ...

  8. 将根证书和中间证书导入到 Windows 证书存储区

    将根证书和中间证书导入到 Windows 证书存储区 如安装有 View 连接服务器的 Windows Server 主机不信任签发的 SSL 服务器证书,您必须将该根证书导入至 Windows 本地 ...

  9. 密码学专题 证书和CA指令 证书和CA功能概述

    为什么需要证书 实现了公钥和私钥的相互验证,但是任何人都可以生成很多的密钥对,密钥对并没有关联实体身份,因此诞生可数字证书 前提是CA是所有用户都信任的 用户需要将自己的信息和公钥交给CA进行认证生成 ...

最新文章

  1. ML之k-NN:k-NN实现对150朵共三种花的实例的萼片长度、宽,花瓣长、宽数据统计,根据一朵新花的四个特征来预测其种类
  2. 部署zookeeper分布式节点
  3. 【渝粤题库】广东开放大学 文化投资与贸易 形成性考核
  4. Python交互模式方向键出现乱码
  5. 当一名程序员喝醉之后......
  6. Oracle 自动生成的视图VM_NSO_1
  7. Python selenium报错:selenium.common.exceptions.ElementClickInterceptedException
  8. 银行自动化监控系统应用
  9. Linux模块化增加设备驱动程序
  10. 数字信号处理--FFT与蝶形算法--学习笔记
  11. 电脑Tab键有什么用
  12. Android 进阶——系统启动之BootLoader 简介及内核启动(一)
  13. c语言开发简单小游戏扫雷,利用C语言开发一个扫雷小游戏
  14. html页面打印插件,分享8款网站开发中最好用的打印页面插件
  15. ArcGIS 缓冲区与叠加分析
  16. 数据库系统概论实验二——创建及管理数据库
  17. 银联入局开启刷脸支付新战场
  18. 计算机无法使用光驱启动,光驱启动怎么设置?电脑设置光驱启动开机的方法
  19. R语言机器学习篇——决策树
  20. oracle 停止dbconsole,本地计算机上的OracleDBConsoleorcl服务启动后停止

热门文章

  1. Liunx配置jdk
  2. 图灵机器人api调用
  3. Java设计模式博客全目录
  4. 基于新浪微博的男女性择偶观数据分析
  5. 卡特兰(Catalan)数
  6. 2021-11-13周报
  7. 徐州智伴机器人_智伴机器人和天猫精灵功能方面有什么区别?
  8. java求循环节长度
  9. MATLAB-样条插值运算
  10. app.json: [“subpackages“][0][“root“] 字段需为 目录