博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SSL、TLS、HTTPS、SSH综述
阅读量:4179 次
发布时间:2019-05-26

本文共 935 字,大约阅读时间需要 3 分钟。

1.Secure Socket Layer (SSL)

SSL是传输层之上,对Socket连接的加密协议。

SSL多用于Internet上,在浏览器和服务器之间的安全传输。

SSL最初是由Netscape研发,版本演变如下:

  • SSLv1(1994)未正式发布
  • SSLv2(1995)
  • SSLv3(1996,RFC6101)

2014年,人们发现POODLE攻击会造成SSL 3.0的block ciphers和RC4不安全,2015年SSL3.0过时了。

SSL协议可以分为两个层次:

  • SSL Record Protocol,对数据进行压缩、加密等操作后的报文格式;
  • SSL Handshake Protocol,基于SSL Record Protocol,在实际传输数据之前进行身份认证、协商加密算法和交换密钥

SSL建立安全通道之前的handshake过程是明文,报文鉴别默认使用MAC算法。

 

2.Transport Layer Security (TLS)

TLS也是传输层之上的加密协议。

TLS可用于任何两个应用程序之间的安全传输。

TLS是基于SSLv3的后续发展,版本演变如下:

  • TLS1.0,1999年开始定义
  • TLS1.1(RFC4346,2006)
  • TLS1.2(RFC5246,2008)
  • TLS1.2重构(RFC6176,2011),不再向后兼容
  • TLS1.3草案(2016)

TLS协议可以分为两个层次:

  • TLS Record Protocol,对数据进行压缩、加密等;
  • TLS Handshake Protocol,在实际传输数据之前进行身份认证、协商加密算法和交换密钥

 

TLS建立安全通道之前的handshake过程是明文,报文鉴别默认使用HMAC算法。

OpenSSL是SSL/TLS的开源实现。

 

3.HTTPS是在传输层使用SSL/TLS加密的HTTP

与HTTP类似,HTTPS本身是应用层的协议。

同一台Web服务器,往往同时支持HTTP和HTTPS,这是分别通过80端口和443端口实现的。

 

4.Secure SHell (SSH)

SSH是应用层的通信加密协议,往往用于远程登录的会话。详见。

OpenSSH是SSH的开源实现。

 

转载地址:http://mtlai.baihongyu.com/

你可能感兴趣的文章
Android native和h5混合开发几种常见的hybrid通信方式
查看>>
Vista/Win7 UAC兼容程序开发指南
查看>>
IOS程序开发框架
查看>>
安装jdk的步骤
查看>>
简述JAVA运算符
查看>>
简易ATM源代码及运行结果
查看>>
简述Java中的简单循环
查看>>
用JAVA实现各种乘法表
查看>>
for双重循环实现图形
查看>>
Java类和对象基础
查看>>
简述Java继承和多态
查看>>
Java中Arrays工具类的用法
查看>>
简述JAVA抽象类和接口
查看>>
JAVA常用基础类
查看>>
简述Java异常处理
查看>>
简述Java集合框架
查看>>
jQuery+ajax实现省市区(县)下拉框三级联动
查看>>
Spring中的AOP 面向切面编程
查看>>
简述Spring中的JDBC框架
查看>>
MyBatis 动态SQL
查看>>