从HTTP到HTTPS
2016-12-19 16:03
190 查看
TLS(传输层安全协议)的前身是SSL(安全套接层),于1999年,被标准化并改名为TLS
SSL的出现的背景:http协议传输过程中为明文方式,也导致了在传输的过程中很容易被嗅探和更改。
Chrome、火狐、Safari、Opera、IE和Edge都要求使用HTTPS加密连接,才能使用HTTP2.0
http(超文本传输协议)从1.0版本开始在世界范围内流行,到目前为止最为流行的为http1.1,虽然http2.0已经于去年正式发布,但目前来看,使用广度仍然较小。即将于2017年发布的java9也将对http2.0提供支持,相信http2.0会逐渐显现出它的优势。http有两种连接方式:长连接,短连接。1.1之后开始默认长连接。
https(超文本传输安全协议)简单理解就是http+ssl/tls
https的几个特性:
兼容性:完美兼容http,实现原有http项目完美迁移至https
可扩展性:SSL/TLS 可以跟很多常用的应用层协议(比如:FTP、SMTP、POP、Telnet)搭配,来强化这些应用层协议的安全性
保密性:传输的数据均是采用session key加密,保证了保密性;
真实性:双方握手时对对方的身份均有验证,因此可以保证对方的真实性
完整性:每部分数据均有mac验证,验证时计算数据的mac然后与接收到的mac比较,即可确定数据是否完整,确保 HTTP 协议的内容不被篡改
不可否认性:session key只有通信双方有,并且不在网络上传输,因此攻击者无法伪造使用session key加密的数据,所以具有不可否认性。
尽管https如此牛逼,但由于CA证书的成本加之https因为要加密解密等操作造成的服务器压力成本,使得一些小的站点依然采用http传输方式,当然对于看看新闻这种没有隐私信息的可以原谅,但是涉及到登录,支付等私密信息时,传输必须要使用https。据传,ios的应用将在2017年开始不再支持使用http传输协议的接口,强制使用https传输协议
在tomcat中配置SSL
https://waylau.com/tomcat-ssl-tls/
背景知识、协议的需求、设计的难点
http://program-think.blogspot.com/2014/11/https-ssl-tls-1.html?q=ssl&scope=all
可靠密钥交换的难点,以及身份认证的必要性
https://program-think.blogspot.com/2014/11/https-ssl-tls-2.html?q=ssl&scope=all
密钥交换(密钥协商)算法及其原理
https://program-think.blogspot.com/2016/09/https-ssl-tls-3.html
SSL的出现的背景:http协议传输过程中为明文方式,也导致了在传输的过程中很容易被嗅探和更改。
Chrome、火狐、Safari、Opera、IE和Edge都要求使用HTTPS加密连接,才能使用HTTP2.0
http(超文本传输协议)从1.0版本开始在世界范围内流行,到目前为止最为流行的为http1.1,虽然http2.0已经于去年正式发布,但目前来看,使用广度仍然较小。即将于2017年发布的java9也将对http2.0提供支持,相信http2.0会逐渐显现出它的优势。http有两种连接方式:长连接,短连接。1.1之后开始默认长连接。
https(超文本传输安全协议)简单理解就是http+ssl/tls
https的几个特性:
兼容性:完美兼容http,实现原有http项目完美迁移至https
可扩展性:SSL/TLS 可以跟很多常用的应用层协议(比如:FTP、SMTP、POP、Telnet)搭配,来强化这些应用层协议的安全性
保密性:传输的数据均是采用session key加密,保证了保密性;
真实性:双方握手时对对方的身份均有验证,因此可以保证对方的真实性
完整性:每部分数据均有mac验证,验证时计算数据的mac然后与接收到的mac比较,即可确定数据是否完整,确保 HTTP 协议的内容不被篡改
不可否认性:session key只有通信双方有,并且不在网络上传输,因此攻击者无法伪造使用session key加密的数据,所以具有不可否认性。
尽管https如此牛逼,但由于CA证书的成本加之https因为要加密解密等操作造成的服务器压力成本,使得一些小的站点依然采用http传输方式,当然对于看看新闻这种没有隐私信息的可以原谅,但是涉及到登录,支付等私密信息时,传输必须要使用https。据传,ios的应用将在2017年开始不再支持使用http传输协议的接口,强制使用https传输协议
在tomcat中配置SSL
https://waylau.com/tomcat-ssl-tls/
背景知识、协议的需求、设计的难点
http://program-think.blogspot.com/2014/11/https-ssl-tls-1.html?q=ssl&scope=all
可靠密钥交换的难点,以及身份认证的必要性
https://program-think.blogspot.com/2014/11/https-ssl-tls-2.html?q=ssl&scope=all
密钥交换(密钥协商)算法及其原理
https://program-think.blogspot.com/2016/09/https-ssl-tls-3.html
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- Debian 7.x 安装Oracle JAVA
- springmvc实现url路由功能
- spring boot 配置 druid/** * 配置druid * Created by adam on 4/11/16. */ @Configuration public class D
- api接口rsa加密
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法