程序员

SSL,HTTPS,TLS三者的区别

2022-06-13  本文已影响0人  清风疏影月黄昏

SSL证书,用于加密HTTP协议,也就是HTTPS。随着淘宝、百度等网站纷纷实现全站Https加密访问,搜索引擎对于Https更加友好,加上互联网上越来越多的人重视隐私安全,站长们给网站添加SSL证书似乎成为了一种趋势。

给自己的网站添加SSL证书其实并不复杂,但是关键一点就是首先要拥有一个SSL证书。由于SSL证书价格不菲,很多个人站长会选择放弃使用Https。但是,自从开源、免费的Let's Encrypt证书出现后,我觉得SSL也是我们草根站长可以玩的了。

phono

如果你还在纠结要不要将自己的网站切换到Https,可以看看之前我的分析:我是如何将网站全站启用Https的?本文就来为大家梳理一下当前可供大家免费使用的SSL证书,关于SSL证书申请和安装方法部落之前都有介绍,大家可以直接点击进去查看详情。

作为站长,除了要保护网站数据传输安全,还要保护好域名、服务器等安全:

1、域名防盗:增强域名注册账户和DNS管理账户安全-防止域名被盗和域名恶意解析

2、VPS安全:linux VPS主机安全-禁止Root登录,密钥授权,Fail2ban,DDoS deflate

3、CDN安全:DNSPOD分布式解析+安全宝和Incapsula对搜索引擎分别CDN加速

SSL(Secure Socket Layer 安全套接层)是基于HTTPS下的一个协议加密层,最初是由网景公司(Netscape)研发,后被IETF(The Internet Engineering Task Force - 互联网工程任务组)标准化后写入(RFCRequest For Comments 请求注释),RFC里包含了很多互联网技术的规范!

起初是因为HTTP在传输数据时使用的是明文(虽然说POST提交的数据时放在报体里看不到的,但是还是可以通过抓包工具窃取到)是不安全的,为了解决这一隐患网景公司推出了SSL安全套接字协议层,SSL是基于HTTP之下TCP之上的一个协议层,是基于HTTP标准并对TCP传输数据时进行加密,所以HPPTS是HTTP+SSL/TCP的简称。

由于HTTPS的推出受到了很多人的欢迎,在SSL更新到3.0时,IETF对SSL3.0进行了标准化,并添加了少数机制(但是几乎和SSL3.0无差异),标准化后的IETF更名为TLS1.0(Transport Layer Security 安全传输层协议),可以说TLS就是SSL的新版本3.1,并同时发布“RFC2246-TLS加密协议详解”,如果想更深层次的了解TLS的工作原理可以去RFC的官方网站,搜索RFC2246即可找到RFC文档! ——以上就是历史背景

SSL 是指安全套接字层,简而言之,它是一项标准技术,可确保互联网连接安全,保护两个系统之间发送的任何敏感数据,防止网络犯罪分子读取和修改任何传输信息,包括个人资料。两个系统可能是指服务器和客户端(例如,浏览器和购物网站),或两个服务器之间(例如,含个人身份信息或工资单信息的应用程序)。

要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识。

  • 大致了解几个基本术语(HTTPS、SSL、TLS)的含义
  • 大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接”)
  • 大致了解加密算法的概念(尤其是“对称加密与非对称加密”的区别)
  • 大致了解 CA 证书的用途 5.TCP通信协议的几次握手


    image.png
  1. SSL加密

SSL是Netscape公司所提出的安全保密协议,在浏览器(如Internet Explorer、Netscape Navigator)和Web服务器(如Netscape的Netscape Enterprise Server、ColdFusion Server等等)之间构造安全通道来进行数据传输,SSL运行在TCP/IP层之上、应用层之下,为应用程序提供加密数据通道,它采用了RC4、MD5以及RSA等加密算法,使用40 位的密钥,适用于商业信息的加密。同时,Netscape公司相应开发了HTTPS协议并内置于其浏览器中,HTTPS实际上就是HTTP over SSL,它使用默认端口443,而不是像HTTP那样使用端口80来和TCP/IP进行通信。HTTPS协议使用SSL在发送方把原始数据进行加密,然后在接受方进行解密,加密和解密需要发送方和接受方通过交换共知的密钥来实现,因此,所传送的数据不容易被网络黑客截获和解密。 然而,加密和解密过程需要耗费系统大量的开销,严重降低机器的性能,相关测试数据表明使用HTTPS协议传输数据的工作效率只有使用HTTP协议传输的十分之一。假如为了安全保密,将一个网站所有的Web应用都启用SSL技术来加密,并使用HTTPS协议进行传输,那么该网站的性能和效率将会大大降低,而且没有这个必要,因为一般来说并不是所有数据都要求那么高的安全保密级别

  1. TLS加密

TLS:安全传输层协议

TLS:Transport Layer Security

安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面。

上一篇下一篇

猜你喜欢

热点阅读