目录
一:什么是HTTPS协议?
二:客户端与服务端如何建立HTTPS协议连接?
三:证书、加密协议、信息摘要、签名算法概念解释与关系梳理
四:低版本操作系统作为客户端发送HTTPS失败分析
五:参考资料
 
 
一:什么是HTTPS协议?
HTTPS协议有两部分组成:HTTP + SSL / TLS,一般来说,SSL主要完成两件事:身份认证和数据加密 ,身份认证保证客户端请求服务端是真实可信的,数据加密保证数据传递的安全性,SSL协议在TCP协议和HTTP协议之间(HTTP->SSL->TCP->IP),第一次身份认证采用非对称加密,后续握手环节采用对称加密机制(节省性能开支)。
 
二:客户端与服务端如何建立HTTPS协议连接?
1:Server部署HTTPS(通过WEB服务器导入证书),这份证书包含了一对公钥和私钥,Client请求 Server,Server响应给Client证书信息;
2:Client的TLS验证证书信息(颁发机构、有效期、公钥有效性),验证失败做安全提示,验证成功 则生成一个随机值,然后用证书对随机值加密,传给Server(随机值用于后续连接的加解密凭证);
3:Server用私钥解密得到随机值,然后把需要传递的数据通过该值做对称加密,后续的数据交换采 用同样方式处理;
 
三次握手相当于混合试用了非对称加密(生成签名密钥)和对称加密,再保证数据一致性和安全性的前提下减少性能开支。

三:证书、加密协议、信息摘要、签名算法概念解释与关系梳理
1:数字证书
CA证书颁发机构颁发的用于签名验证的文件,主要用于客户端和服务端建立HTTPS连接的身 份认证过程,证书中包含了颁发机构、合法域名来源、有效期,如果该证书不是CA授信机构颁发的,客户端会有安全提醒弹窗,证书本质上是服务端给客户端提供了公钥,客户端用来生成随机串传给服务端 ;
2:SSL/TSL协议
Netscape公司设计的主要用于WEB安全传输协议,提供身份认证和数据加密的规则,TSL1.0是建立在SSLV3版本的新协议,;

3:SHA/SHA2

信息摘要算法,用于签名验证(对称加密)保证数据一致性;
RSA256:
数据加密算法(非对称加密),用于保护数据安全;

4:关系梳理
客户端证书和TLS协议在WEB服务器配置,客户端证书也可以用程序自定义生成和使用,信息摘算法在操作系统的组件中(WIN系统:Win32 crypto service CryptSignHash 函数)。
 
四:低版本操作系统作为客户端发送HTTPS失败分析:
国际惯例是2016年1月1日起停止签发SHA1签名算法的各种证书,低版本操作系统(XP2003 SP2内、 Server2003 SP2内)不支持SHA256信息摘要算法,客户端请求服务端(使用SHA2)就会超时错误,解决方案是给客户端系统打补丁(KB968730或KB938397或SP3补丁);
 
五:参考资料

 
 HTTPS连接的前几毫秒发生了什么(http://blog.jobbole.com/48369

HTTPS协议学习总结的更多相关文章

  1. HTTPS协议学习笔记

    在前一段时间准备面试的时候,面试官反复提到了HTTPS这个协议.我只是单纯的知道,HTTPS是安全的应用层协议 是HTTP更安全的版本,通过对称密钥加密.但是具体的其他的,可能我不太了解.今天就专门抽 ...

  2. HTTPS协议学习

    http的缺点:(其他一些未加密的协议中也存在) 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,因此有可能遭遇伪装 无法证明报文的完整性,所以有可能已遭篡改 TCP/IP是可能被窃听的 ...

  3. 网络协议学习笔记(六)http和https

    概述 之前讲解了传输层的相关知识,现在讲解一下关于应用层的知识,主要是大家所熟悉的http和https,这2中是咱们最熟悉的协议了,但是也是最不熟悉的协议. HTTP协议:看个新闻原来这么麻烦 HTT ...

  4. https、ssl、tls协议学习

    一.知识准备 1.ssl协议:通过认证.数字签名确保完整性:使用加密确保私密性:确保客户端和服务器之间的通讯安全 2.tls协议:在SSL的基础上新增了诸多的功能,它们之间协议工作方式一样 3.htt ...

  5. 深入理解http/https协议

    深入理解HTTP协议(转) http协议学习系列 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(Wo ...

  6. HTTP协议学习

    面试过程中又一个常见的问题,http协议,因为做服务器开发如果用http协议的话,现在各种开源软件都封装好了,python中只需要简单的继承定义好的类,重写get或者post等方法,几行代码就可以搭建 ...

  7. http协议学习系列

    深入理解HTTP协议(转)  http://www.blogjava.net/zjusuyong/articles/304788.html http协议学习系列   1. 基础概念篇 1.1 介绍 H ...

  8. HTTPS的学习

    HTTPS的学习总结   HTTPS学习总结 简述 HTTPS对比HTTP就多了一个安全层SSL/TLS,具体就是验证服务端的证书和对内容进行加密. 先来看看HTTP和HTTPS的区别 我用AFN访问 ...

  9. 关于HTTP协议学习(三)

    一,目录结构 HTTPS HTTP/2 HTTP 安全 HTTP 面试 HTTP 爬虫 HTTP 资源 HTTP 抓包工具及教程 Chrome HTTP 插件 HTTP 代理服务器 HTTP 图书 二 ...

随机推荐

  1. mybatis系列-03-入门程序

    3.1     需求 根据用户id(主键)查询用户信息 根据用户名称模糊查询用户信息 添加用户 删除 用户 更新用户 3.2     环境 java环境:jdk1.7.0_79 eclipse mys ...

  2. mybatis系列-01-JDBC

    1.1     环境 java环境:jdk1.7.0_79 eclipse mysql:5.7 1.2     创建mysql数据 导入下边的脚本: 导入之后数据库: sql_table.sql:记录 ...

  3. 【转载】shell中的特殊变量$

    shell中的特殊变量:变量名含义$0shell或shell脚本的名字$*以一对双引号给出参数列表$@将各个参数分别加双引号返回$#参数的个数$_代表上一个命令的最后一个参数$$代表所在命令的PID$ ...

  4. POJ3016-K-Monotonic(左偏树+DP)

    我觉得我要改一下签名了……怎么会有窝这么啰嗦的人呢? 做这题需要先学习左偏树<左偏树的特点及其应用> 然后做一下POJ3666,这题的简单版. 思路: 考虑一下维护中位数的过程原数组为A, ...

  5. zzuoj 10409 10409: D.引水工程

    10409: D.引水工程 Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 96  Solved: 34[Submit][Status][Web Boar ...

  6. c# sql连接数据库

    using System.Data.SqlClient; private static string connectionString ="Data Source=.\\HS;Initial ...

  7. 一种从JSON数据创建Java类的高效办法

    <一种从JSON数据创建Java类的高效办法> 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs JSON格式的数据经常会遇到,比如调用Web服 ...

  8. 依賴注入入門——Unity(一)

    參考資料http://blog.csdn.net/m13666368773/article/details/7802126 背景介紹 在设计模式中,尤其是结构型模式很多时候解决的就是对象间的依赖关系, ...

  9. ilitek的电容屏驱动程序ilitek_aimvx.c的分析

    本文记录了ili驱动程序. 参考  http://linhui.568.blog.163.com/blog/static/962652682011786352856/ 后记:现在的情况是,在win上是 ...

  10. utf8乱码解决方案[适合tomcat部署的jsp应用]

    转:http://blog.csdn.net/cn_gaowei/article/details/6673539 1.       java类: CharacterEncodingFilter  im ...