What is SSL and how does it work

上一篇简略介绍了PKI,SSL还有两种加密方法。今天这一篇我想展开讲讲SSL是什么以及他的工作原理。

用一句简单的话来说SSL是保障网络通信和数据传输安全的协议。那么它是如何工作来保证安全的呢?

简单的来说,用户的电脑,浏览器会事先安装证书签发机关的根证书在里面。当用户连接到某个服务器的时候,他使用的浏览器会一级一级向上查询,知道查询根证书是否信任为止。如果根证书可以被信任,整个证书就是可信的。

My Certificate

以我的证书为例:

www.aufomm.com :我这张证书的common name

Digicert SHA2 Secure Server CA :中介证书

Digicert Global Root CA : 根证书

Flow Chart

根证书本身已经在浏览器中,所以我的证书就会被浏览器信任。

由以上例子可以看出证书的签发机构(Certificate Authority)在整个信任链里扮演了最重要的角色。CA们负责认证申请信息,签发证书已经管理证书。他们根据CA/Browser Forum的规定解读并规定具体的策略以验证申请人,确保申请人身份和公钥的拥有权。根据CA/Browser Forum的规定,目前的证书分为一下几个类型

类型: 验证内容: 证书内容:
DV (Domain Validation) 只验证域名 只有域名信息
OV (Organisation Validation) 除了域名还需要验证个人/公司身份 公司名字,所在省市和域名信息
EV (Extended Validation) 仅限公司申请,而且有比OV证书更加严格的验证 公司名字会在浏览器地址栏显示

就加密功能来说,三种证书的功能基本一样,可能有一些证书支持ECC加密,但是总体来说一样。三种证书的区别在于证书上显示的信息。对于有需求的公司用户,还是需要用OV或者EV。例如如果一个银行的网站用的是DV证书我可能就会怀疑这个到底是不是这个银行自己的网页了。

SSL证书的申请流程

总的来说SSL从申请到使用分为几个步骤。

  1. 选择你需要的证书类型和你喜欢的证书签发机构(CA)
  2. 根据你的服务器类型,生成私钥和CSR(Certificate Signing Request)
  3. 在CA的网站上完成申请,提交CSR
  4. 配合CA完成验证
  5. 证书签发之后把证书安装在对应的服务器上和私钥匹配即可

我会在后续的文章中详细说明不同的服务器如何生成私钥和CSR还有如何安装。敬请留意