CA数字证书数字签名 HTTPS SSL认证是分别是什么


HTTPS SSL认证 CA 数字证书 数字签名 一文扫盲 原理概述 

2017-09-02编辑

跟苹果打交道的开发者都会接触到 证书、签名、HTTPS等等东西,做了这么多年iOS开发竟然还不明白个中关系,下面我们来说一下它们是如何搞在一起的。

讲解之前我们首先要知道公钥、私钥、非对称加密的概念,不知道的可以百度一下。

概念解释

  数字证书:数字证书是由CA颁发的,包含有申请者的公钥及申请者的其它信息

  CA(Certificate Authority):证书认证机构,是PKI的核心。负责颁发证书、认证证书、管理已颁发证书的机关。根CA下面还有从CA(子CA,中级CA)。

  数字签名:发送方用其私钥对原文的摘要进行加密后生成,更加详细的分析 数字签名是什么 和 数字签名原理 

  HTTPS:HTTP的安全版。即在HTTP下加入SSL层

  SSL:是为网络通信提供安全及数据完整性的一种安全协议

  他们的关系:客户端&服务端通过CA或其子机构申请数字证书,用于HTTPS的加密通信。客户端向服务器发送SSL连接请求,服务器返回自己的数字证书公钥PKI,客户端在收到公钥后,会对其进行验证,看是否是自己信任的CA机构所颁发,验证OK后双方即可开始通信。不过这仅是客户端对服务器的单向认证,也是应用最广泛的认证方式,因为用户千千万,服务器对用户是公开的,谁都可以来访问。如果要使用双向认证的方式即加入服务端对客户端的认证,就要求客户端发送自己的数字证书给服务器,服务器也对证书进行校验。

申请数字证书

  要让我们的客户端/服务器支持Https协议,首先要申请数字证书,有2种途径

  • 从证书颁发机构申请(需要RMB)
  • 自签CA(免费,但不受浏览器信任)

  申请流程

  1. 生成一对密钥
  2. 用公钥和用户基本信息生成证书请求csr (很多工具可一步生成私钥和csr)
  3. 从颁发机构申请证书
  4. 证书机构颁发pem或cer证书

参考

  网易公开课

  http://www.cnblogs.com/guogangj/p/4118605.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM