SSL简介
引自:https://baike.baidu.com/item/ssl/320778?fr=aladdin
SSL
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层与应用层之间对网络连接进行加密。
提供服务
- 认证用户和服务器,确保数据发送到正确的客户机和服务器;
- 加密数据以防止数据中途被窃取;
- 维护数据的完整性,确保数据在传输过程中不被改变。
服务器类型
- Tomcat 5.x
- Nginx
- IIS
- Apache 2.x
- IBM HTTP SERVER 6.0 [1]
工作流程
服务器认证阶段:1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;4)服务器回复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。
用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。
SSL协议提供的安全通道有以下三个特性:
- 机密性:SSL协议使用密钥加密通信数据。
- 可靠性:服务器和客户都会被认证,客户的认证是可选的。
- 完整性:SSL协议会对传送的数据进行完整性检查。
从SSL 协议所提供的服务及其工作流程可以看出,SSL协议运行的基础是商家对消费者信息保密的承诺,这就有利于商家而不利于消费者。在电子商务初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。但随着电子商务的发展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。虽然在SSL3.0中通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但是SSL协议仍存在一些问题,比如,只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,SSL协议并不能协调各方间的安全传输和信任关系。在这种情况下,Visa和 MasterCard两大信用卡公组织制定了SET协议,为网上信用卡支付提供了全球性的标准。
购买SSL证书
一般到购买域名的地方去购买,我是阿里云买的,所以是在阿里云买的,个人版免费(其他腾讯等未知),有效期1年,过期后可继续申请。
1.购买地址
2.选择个人版证书
购买
3.证书申请
购买成功后回到证书控制台,显示有一个未签发的证书,如下:
然后点击“证书申请”,即可显示如下界面,一般需要注意的是域名和域名验证方式,域名验证方式我一般选自动DNS,它会自动在阿里云域名控制台为域名添加验证解析信息,其他一般自动填充阿里云对应账号信息。然后验证信息,提交审核。快的话几分钟就申请成功了。
4.下载证书
回到控制台会显示,已签发,然后就可以下载该证书了。
需要注意的是:SSL证书格式与常见服务器类型的对应关系
服务器类型 | 证书文件(后缀或文件类型) | 秘钥文件 |
---|---|---|
Tomcat | .pfx | .txt |
IIS | .pfx | .txt |
Nginx | .pem | .key |
Apache | .crt | .key |
在https配置中上传证书
如下面是七牛云的,pem格式说明服务器是Nginx
上传后,一般需要认证,快的话几分钟就好,慢就说不好。
相关链接
证书格式的相互转换:DER、CRT、CER、PEM:https://blog.csdn.net/haidao1101/article/details/99717437
本文由博客一文多发平台 OpenWrite 发布!
来源:https://www.cnblogs.com/yansheng-qsmy/p/12024546.html