美文网首页
TLS,SSL 认证知识梳理

TLS,SSL 认证知识梳理

作者: 0neBean | 来源:发表于2019-09-26 15:16 被阅读0次

    首先来搬运一些名词解释:

    • TLS:

    传输层安全性协议(英语:Transport Layer Security,缩写作TLS),及其前身安全套接层(Secure Sockets Layer,缩写作SSL)是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。网景公司(Netscape)在1994年推出首版网页浏览器,网景导航者时,推出HTTPS协议,以SSL进行加密,这是SSL的起源。IETF将SSL进行标准化,1999年公布第一版TLS标准文件。随后又公布RFC 5246 (2008年8月)与RFC 6176(2011年3月)。在浏览器、邮箱、即时通信、VoIP、网络传真等应用程序中,广泛支持这个协议。主要的网站,如Google、Facebook等也以这个协议来创建安全连线,发送数据。目前已成为互联网上保密通信的工业标准。

    • SSL:

    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。

    SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

    • CA认证:

    CA认证,即电子认证服务 ,是指为电子签名相关各方提供真实性、可靠性验证的活动。
    证书颁发机构(CA, Certificate Authority)即颁发数字证书的机构。是负责发放和管理数字证书的权威机构,并作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。

    CA是证书的签发机构,它是PKI的核心。CA是负责签发证书、认证证书、管理已颁发证书的机关。它要制定政策和具体步骤来验证、识别用户身份,并对用户证书进行签名,以确保证书持有者的身份和公钥的拥有权。

    如果用户想得到一份属于自己的证书,他应先向 CA 提出申请。在 CA 判明申请者的身份后,便为他分配一个公钥,并且 CA 将该公钥与申请者的身份信息绑在一起,并为之签字后,便形成证书发给申请者。

    • KEY:

    这里指非对称加密中的私钥。

    • CSR :

    CSR是Certificate Signing Request的英文缩写,即证书签名请求文件,是证书申请者在申请数字证书时由CSP(加密服务提供者)在生成私钥的同时也生成证书请求文件,证书申请者只要把CSR文件提交给证书颁发机构后,证书颁发机构使用其根证书私钥签名就生成了证书公钥文件,也就是颁发给用户的证书。

    • CRT:

    即 certificate的缩写,即证书。

    • X.509:

    X.509 是密码学里公钥证书的格式标准。 X.509 证书己应用在包括TLS/SSL(WWW万维网安全浏览的基石)在内的众多 Internet协议里.同时它也用在很多非在线应用场景里,比如电子签名服务。X.509证书里含有公钥、身份信息(比如网络主机名,组织的名称或个体名称等)和签名信息(可以是证书签发机构CA的签名,也可以是自签名)。对于一份经由可信的证书签发机构签名或者可以通过其它方式验证的证书,证书的拥有者就可以用证书及相应的私钥来创建安全的通信,对文档进行数字签名.

    • PEM:

    PEM - Privacy Enhanced Mail,打开看文本格式,以"-----BEGIN..."开头, "-----END..."结尾,内容是BASE64编码.
    Apache和*NIX服务器偏向于使用这种编码格式.

    • DER :

    DER - Distinguished Encoding Rules,打开看是二进制格式,不可读.
    Java和Windows服务器偏向于使用这种编码格式

    • OpenSSL :


    基于以上信息分析,我们得出几点结论:

    • https 基于 ssl 协议

    • SSL 是安全套接层,是tcp/ip ,http协议的底层,TLS 是第二代的SSL

    • CA是用来签发证书的机构,CA用自己的CA证书用来验证用户的私钥并签发对应的证书

    • TLS SSL是采用非对称加密算法,而公钥格式是x509,公钥由CA根据私钥签发

    • x509公钥的格式分为两种 PEMDER

    • 我们在获取x509证书时,会弄一个记录向CA发送验证信息的请求文件,即 .CSR 后缀文件


    那么大概搞懂了,我们需要一个CA证书,给自己的私钥签名,生成一个x509格式的公钥, 有公私钥,和一个用于验证公钥的请求文件(CSR文件),就可以配置TLS,SSL协议加密访问请求了。

    私钥和CSR文件一般可以在本地生成,而CA证书,自己也可以生成,可以签自己的x509格式的公钥,但是一般浏览器和公网服务不认,如果是内网的无所谓了,公网服务需要选择权威的CA机构,提供你自己的私钥和钱,让它帮你生成x509证书。

    后面我介绍一些常用工具来在本地生成一些公私钥:

    相关文章

      网友评论

          本文标题:TLS,SSL 认证知识梳理

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