https原理:证书传递、验证和数据加密、解密过程解析

目录(?)[-]

  1. HTTPS简介
  2. 客户端发起HTTPS请求
  3. 服务端的配置
  4. 传送证书
  5. 客户端解析证书
  6. 传送加密信息
  7. 服务段解密信息
  8. 传输加密后的信息
  9. 客户端解密信息

写的太好了,就是我一直想找的内容,看了这个对https立马明白多了

http://www.cnblogs.com/zhuqil/archive/2012/07/23/2604572.html

我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议。

HTTPS简介

HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的,且看下图。

1. 客户端发起HTTPS请求

这个没什么好说的,就是用户在浏览器里输入一个https网址,然后连接到server的443端口。

2. 服务端的配置

采用HTTPS协议的服务器必须要有一套数字证书,可以自己制作,也可以向组织申请。区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面(startssl就是个不错的选择,有1年的免费服务)。这套证书其实就是一对公钥和私钥。如果对公钥和私钥不太理解,可以想象成一把钥匙和一个锁头,只是全世界只有你一个人有这把钥匙,你可以把锁头给别人,别人可以用这个锁把重要的东西锁起来,然后发给你,因为只有你一个人有这把钥匙,所以只有你才能看到被这把锁锁起来的东西。

3. 传送证书

这个证书其实就是公钥,只是包含了很多信息,如证书的颁发机构,过期时间等等。

4. 客户端解析证书

这部分工作是有客户端的TLS来完成的,首先会验证公钥是否有效,比如颁发机构,过期时间等等,如果发现异常,则会弹出一个警告框,提示证书存在问题。如果证书没有问题,那么就生成一个随即值。然后用证书对该随机值进行加密。就好像上面说的,把随机值用锁头锁起来,这样除非有钥匙,不然看不到被锁住的内容。

5. 传送加密信息

这部分传送的是用证书加密后的随机值,目的就是让服务端得到这个随机值,以后客户端和服务端的通信就可以通过这个随机值来进行加密解密了。

6. 服务段解密信息

服务端用私钥解密后,得到了客户端传过来的随机值(私钥),然后把内容通过该值进行对称加密。所谓对称加密就是,将信息和私钥通过某种算法混合在一起,这样除非知道私钥,不然无法获取内容,而正好客户端和服务端都知道这个私钥,所以只要加密算法够彪悍,私钥够复杂,数据就够安全。

7. 传输加密后的信息

这部分信息是服务段用私钥加密后的信息,可以在客户端被还原

8. 客户端解密信息

客户端用之前生成的私钥解密服务段传过来的信息,于是获取了解密后的内容。整个过程第三方即使监听到了数据,也束手无策。

时间: 2024-12-17 05:06:31

https原理:证书传递、验证和数据加密、解密过程解析的相关文章

RSA加密算法加密与解密过程解析

1.加密算法概述 加密算法根据内容是否可以还原分为 可逆加密和非可逆加密 . 可逆加密根据其加密解密是否使用的同一个密钥而可以分为 对称加密和非对称加密. 所谓对称加密即是指在加密和解密时使用的是同一个密钥:举个简单的例子,对一个字符串C做简单的加密处理,对于每个字符都和A做异或,形成密文S.解密的时候再用密文S和密钥A做异或,还原为原来的字符串C.这种加密方式有一个很大的缺点就是不安全,因为一旦加密用的密钥泄露了之后,就可以用这个密钥破解其他所有的密文. 非对称加密在加密和解密过程中使用不同的

转: 数字证书原理 https 完整过程解析

点评: 讲的非常的详细与全面,值得一看. 转: http://www.cnblogs.com/JeffreySun/archive/2010/06/24/1627247.html 文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用.接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理,最后演示使用makecert生成数字证书.如果发现文中有错误的地方,或者有什么地方说得不够清楚,欢迎指出! 1.基础知识

HTTPS原理解析-转

这篇文章关于Https的讲解真的是太透彻了,转过来备忘. 来源:腾讯bugly 基于此文章的学习总结:下一篇文章 1.HTTPS 基础 HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息.它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版,是使用 TLS/SSL 加密的 HTTP 协议. HTTP 协议采用明文传输信息,存在信息窃听.信息篡改和信息

HTTPS原理

(美团2016研发工程师模拟笔试题 )8.浏览器和服务器在基于https进行请求链接到数据传输过程中,用到了如下哪些技术:(ABCD) A.非对称加密技术 B.对称加密技术 C.散列(哈希)算法 D.数字证书 解析:HTTPS原理(原文链接:http://www.guokr.com/post/114121/) 谣言粉碎机前些日子发布的<用公共WiFi上网会危害银行账户安全吗?>,文中介绍了在使用HTTPS进行网络加密传输的一些情况,从回复来看,争议还是有的.随着网络越来越普及,应用越来越广泛,

HTTPS那个东西(一)-HTTPS原理

HTTPS那个东西(一) 最近看了<http权威指南>几个章节,对HTTPS随着节,了一些资料,遂打算记录一下心得.写的仓促,肯定有非常多错误的地方,欢迎大家指正. 1.HTTP是什么 那么在介绍https之前,有必要先解释下http.http是一个非常easy又非常复杂的协议.说其简单,是我们每天都在用它.并且又浑然不觉.貌似非常easy的样子.可是真正可以把http全然了解清楚.并非非常容易的事情.<http权威指南>诺厚的一本书,都是http相关内容,可知有多么复杂了. 简单

[转]HTTPS那些事(一)HTTPS原理

[转]HTTPS那些事(一)HTTPS原理 http://www.guokr.com/post/114121/ 楔子谣言粉碎机前些日子发布的<用公共WiFi上网会危害银行账户安全吗?>, 文中介绍了在使用HTTPS进行网络加密传输的一些情况,从回复来看,争议还是有的.随着网络越来越普及,应用越来越广泛,一些网络安全问题也会越来越引 起网民的关注,在这里和大家一起聊聊TLS/SSL也就是我们常说的HTTPS,从原理到实际应用看清它到底是怎么一回事,以及在使用HTTPS要注意哪 些问题以及相关的安

https原理及实践

转自 https://www.cnblogs.com/lyq863987322/p/8424253.html 作者 酷酷的二连长 目录 网络安全问题 数据机密性 数据完整性 身份验证 网络安全证书由来 获取公钥信息的证书 证书信息所包含内容 OpenSSL软件详细说明 OpenSSL软件建立私有CA 创建私钥与公钥信息 生成自签署的证书 nginx配置文件 设置自动跳转https 利用地址重写功能(方法1) 利用error_page识别错误码信息进行跳转(方法2) 利用反向代理服务器进行http

HTTPS协议、TLS协议、证书认证过程解析

一.HTTPS 协议 HTTPS协议其实就是HTTP over TSL,TSL(Transport Layer Security) 传输层安全协议是https协议的核心. TSL可以理解为SSL (Secure Socket Layer)安全套接字层的后续版本. TSL握手协议如下图所示 (注:图片来源于google图片) 在建立TCP连接后,开始建立TLS连接.下面抓包分析TLS握手过程,抓包图片来源于传输层安全协议抓包分析之SSL/TLS (自己没抓到这么完整的包,只能搬运过来了,摔) (1

网络知识杂谈 - https - 原理简述

概述 简单描述 https 尽量介绍它的原理 实际的机制, 可能会更加复杂一些... 背景 这玩意, 困扰我好多年了 今天开始, 想做个了断 之前工作也接触过, 但从我的角度来说, 认识很浅 会配置 给个证书, 放好位置, 调一下选项 会抓包 开个 charles, 配置几下, 手机挂代理, 安装证书 具体干啥 只知道是个 加密的体系 因为抓包知道, 这不是明文 机制的理解和思考 看过 图解http, 没理解就放过去了... 最后, 将这个东西的时候, 如果你忍无可忍想说一句, 禁止套娃...