SSL证书介绍并使用openssl和cfssl生成SSL证书

SSL: Secure Socket Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。它是在上世纪90年代中期,由Netscape公司设计,目前已有3.0版本。为啥要发明 SSL 这个协议呢?因为原先互联网上使用的 HTTP 协议是明文的,内容是不加密的,这样就很可能在内容传播的时候被别人监听到,对于安全性要求较高的场合,必须要加密,https就是带加密的http协议。SSL协议的发明,就解决这些问题。目前SSL有1.0,2.0,3.0。
 
TLS: Transport Layer Security(传输层安全协议)。是 SSL的标准化,相当于SSL的升级,可以把SSL看作是windows7,而TLS看作是windows10。很多时候我们把这两者并列称呼 SSL/TLS,因为这两者可以视作同一个东西的不同阶段。HTTPS 协议,说白了就是“HTTP 协议”和“SSL/TLS 协议”的组合。可以把 HTTPS 大致理解为—“HTTP over SSL”或“HTTP over TLS”。目前TLS有1.0,1.1,1.2,其中1.0基于SSL 3.0,修改不大。
 
SSL证书: SSL安全协议主要用来提供对用户和服务器的认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性。SSL证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道,由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装服务器证书就可以激活该功能了。通过它可以激活SSL协议,实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露。保证了双方传递信息的安全性,而且用户可以通过服务器证书验证他所访问的网站是否是真实可靠。
 

2.1 证书申请文件

2.2 证书文件格式

证书的编码格式
PEM:是Privacy Enhanced Mail的简称,通常用于数字证书认证机构(Certificate Authorities,CA),扩展名为.pem, .crt,,.cer, .key。内容为Base64编码的ASCII码文件,有类似“—–BEGIN CERTIFICATE—–“和 “—–END CERTIFICATE—–“的头尾标记。服务器认证证书,中级认证证书和私钥都可以储存为PEM格式(认证证书其实就是公钥)。Apache和nginx等类似的服务器使用PEM格式证书。
 
DER:是Distinguished Encoding Rules的简称,与PEM不同之处在于其使用二进制而不是Base64编码的ASCII。扩展名为.der,但也经常使用.cer用作扩展名,所有类型的认证证书和私钥都可以存储为DER格式。Java和Windows服务器使用DER格式证书。
 
证书签名请求CSR
CSR:是Certificate Signing Request的简称,它是向CA机构申请数字证书时使用的请求文件。在生成请求文件前,我们需要准备一对对称密钥。私钥信息自己保存,请求中会附上公钥信息以及国家,城市,域名,Email等信息,CSR中还会附上签名信息。当我们准备好CSR文件后就可以提交给CA机构,等待他们给我们签名,签好名后我们会收到crt文件,即证书。
 
CSR并不是证书,而是向权威证书颁发机构获得签名证书的申请。把CSR交给权威证书颁发机构,权威证书颁发机构对此进行签名。保留好CSR,当权威证书颁发机构颁发的证书过期的时候,还可以用同样的CSR来申请新的证书,key保持不变。
 
证书文件扩展名
CRT:表示证书,常见于linux系统,可能是PEM编码和DER编码,大多数是PEM编码。
 
CER:表示证书,常见于Windows系统,可能是PEM编码和DER编码,大多数是DER编码。
 
KEY:存放一个公钥或者私钥,编码可能是PEM或者DER。查看KEY的办法:openssl rsa -in test.key -text -noout
 
CSR:Certificate Signing Request,证书签名请求,核心内容是一个公钥,在生成这个申请的时候,同时也会生成一个私钥。
 
PFX/P12:predecessor of PKCS#12,常用语windows IIS。
 
JKS:即Java Key Storage,这是Java的专利。
 
证书转换
PEM转为DER:openssl x509 -in cert.crt -outform der -out cert.der
 
DER转为PEM:openssl x509 -in cert.crt -inform der -outform pem -out cert.pem
 
查看DER格式证书的信息:openssl x509 -in certificate.der -inform der -text -noout
 

3.1 介绍

3.2 加密以及证书管理

4.1 介绍

4.2 cfssl安装

4.3 管理证书

 

原文链接:https://www.cnblogs.com/technology178/p/14094375.html

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享