https之二 服务端与CA

作者: laien | 来源:发表于2017-01-21 14:09 被阅读82次

1、为什么需要引入CA

由上一篇我们知道,TLS/SSL通过非对称加密码,让客户端与服务端协商出一个通过的公共密钥,然后通过这个临时的公共密钥对http的明文进行加密解密。这样是可以保证通讯的安全,但有个问题:协商密码的时候,客户端需要先知道服务端的公钥才可以通过非对称加密来协商密钥,而对服务端要求的前提是合法的服务器掌握着对应的私钥。这个问题就引发出了以下的隐患:

  • 客户端 C 和服务器 S 进行通信,中间节点 M 截获了二者的通信;
  • 节点 M 自己计算产生一对公钥 pub_M 和私钥 pri_M;
  • C 向 S 请求公钥时,M 把自己的公钥 pub_M 发给了 C;
  • C 使用公钥 pub_M 加密的数据能够被 M 解密,因为 M 掌握对应的私钥 pri_M,而 C 无法根据公钥信息判断服务器的身份,从而 C 和 M 之间建立了"可信"加密连接;
  • 中间节点 M 和服务器S之间再建立合法的连接,因此 C 和 S 之间通信被M完全掌握,M 可以进行信息的窃听、篡改等操作。
    另外,服务器也可以对自己的发出的信息进行否认,不承认相关信息是自己发出。

因此该方案下至少存在两类问题:中间人攻击和信息抵赖。

Paste_Image.png

解决上述身份验证问题的关键是确保获取的公钥途径是合法的,能够验证服务器的身份信息,为此需要引入权威的第三方机构 CA。CA 负责核实公钥的拥有者的信息,并颁发认证"证书",同时能够为使用者提供证书验证服务,即 PKI 体系。

2、CA与身份认证的原理

要理解CA是怎么进行安全的认证需要先了解一个事情:多数浏览器开发商在发布版本时会事先植入常用认证机构(CA)的的公钥。
基本的原理为,CA 负责审核信息,然后对关键信息利用私钥进行"签名",公开对应的公钥,客户端可以利用公钥验证签名。CA 也可以吊销已经签发的证书,基本的方式包括两类 CRL 文件和 OCSP。CA 使用具体的流程如下:

Paste_Image.png

1.服务端生成公钥私钥对,确认申请信息,生成请求文件(不包含私钥)并向CA申请认证
2.CA会对服务端的申请进行线上线下的校验,核实主体是否为真实存在,企业是否合法等
3.CA审核通过会向服务端签发一份文件---即证书

  • 证书包含了服务端的公钥,签发的CA,有效时间,域名等明文信息
  • 把明文通过hash函数生成摘要,CA用自己的私钥对摘要进行加密生成签名
Paste_Image.png

4.服务端收到证书并保存
5.客户端向服务端发送请求,服务端会先把证书返回给客户端
6.客户端 C 读取证书中的相关的明文信息,采用相同的散列函数计算得到信息摘要,然后,利用对应** CA的公钥解密签名数据,对比证书的信息摘要,如果一致,则可以确认证书的合法性,即服务端的公钥**合法
7.客户端然后验证证书相关的域名信息、有效时间等信息
8.客户端会内置信任 CA 的证书信息(包含公钥),如果CA不被信任,则找不到对应 CA 的证书,证书也会被判定非法

在这个过程注意几点:

  • 申请证书不需要提供私钥,确保私钥永远只能服务器掌握;
  • 证书的合法性仍然依赖于非对称加密算法,证书主要是增加了服务器信息以及签名;
  • 内置 CA 对应的证书称为根证书,颁发者和使用者相同,自己为自己签名,即自签名证书;
  • 证书=公钥+申请者与颁发者信息+签名;

相关文章

  • https之二 服务端与CA

    1、为什么需要引入CA 由上一篇我们知道,TLS/SSL通过非对称加密码,让客户端与服务端协商出一个通过的公共密钥...

  • Https --- CA

    网上关于数字证书的资料已经非常多了,本篇只做记录。方便以后复习 CA又称为证书颁发机构,主要用于颁发数字证书,用一...

  • Fabric-CA服务端配置教程

    初始化服务端 启动服务端 配置数据库 配置LDAP 设置集群 设置多个CA 注册中间CA 升级服务端 服务端运维 ...

  • CA证书与https讲解

    CA证书与https讲解 1.什么是CA证书。 ◇ 普通的介绍信 想必大伙儿都听说过介绍信的例子吧?假设 A 公司...

  • https具体流程

    https是通过对称密钥进行加密和解密· 服务端提供个人信息和公钥去数字证书签发机构(CA)买证书· CA对服务器...

  • OpenSSL生成SSL证书

    1.制作CA证书 ca.key CA私钥步骤与使用OpenSSL自签发服务器https证书所述大同小异。opens...

  • HTTPS CA证书认证

    这文章,证书简介部分写的不错:http://www.cnblogs.com/chyingp/p/https-int...

  • https和ca原理

    https原理 非对称加密算法与传输安全详解。安全的给小姐姐写信的姿势是什么?HTTPS是怎么回事儿对https讲...

  • https+ ca证书

    非对称加密 1.公钥加密,私钥可以解密;2.私钥加密,公钥可以解密;3.公钥解密,公钥不可以解密; 伪造公钥 用户...

  • RGI注释CARD

    CARD官网:https://card.mcmaster.ca/[https://card.mcmaster.ca...

网友评论

    本文标题:https之二 服务端与CA

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