java-信息安全(七)-基于非对称加密,对称加密等理解HTTPS

概述

java-信息安全(一)-BASE64,MD5,SHA,HMAC

java-信息安全(二)-对称加密算法DES,3DES,AES,Blowfish,RC2,RC4

java-信息安全(四)-数据签名、数字证书

java-信息安全(五)-非对称加密算法RSA

如果想要理解好https,请尽量了解好以上信息等。文章来源地址:https://www.yii666.com/article/764279.html

参看文章:

http://www.ruanyifeng.com/blog/2014/09/illustration-ssl.html

https://cattail.me/tech/2015/11/30/how-https-works.html

http://www.cnblogs.com/binyue/p/4500578.html

基本概念

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

  Https是一种基于SSL/TLS的Http协议,所有的http数据都是在SSL/TLS协议封装之上传输的。网址:yii666.com

  Https协议在Http协议的基础上,添加了SSL/TLS握手以及数据加密传输,也属于应用层协议。

  ——>HTTP协议运行在TCP之上,所有传输的内容都是明文,客户端和服务器端都无法验证对方的身份。文章地址https://www.yii666.com/article/764279.html

  ——>HTTPS是运行在SSL/TLS之上的HTTP协议,SSL/TLS运行在TCP之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。

  TLS/SSL中使用了非对称加密,对称加密以及HASH算法

图例【基于RSA模型】

java-信息安全(七)-基于非对称加密,对称加密等理解HTTPS

第一步

  浏览器给出协议版本号、一个客户端生成的随机数(Client random),以及客户端支持的一套加密规则发送给网站服务器。

第二步

  服务器从中选出一组加密算法与HASH算法,并将自己的身份信息以证书的形式发回给浏览器、以及一个服务器生成的随机数(Server random)。证书里面包含了网站地址,加密公钥,以及证书的颁发机构等信息。

第三步

  浏览器确认数字证书有效,然后生成一个新的随机数(Premaster secret),并使用数字证书中的公钥,加密这个随机数,发给服务器。

  获得网站证书之后浏览器要做以下工作:

    a) 验证证书的合法性(颁发证书的机构是否合法,证书中包含的网站地址是否与正在访问的地址一致等),如果证书受信任,则浏览器栏里面会显示一个小锁头,否则会给出证书不受信的提示。

    b) 如果证书受信任,或者是用户接受了不受信的证书,浏览器会生成一串随机数的密码,并用证书中提供的公钥加密。

    c) 使用约定好的HASH计算握手消息,并使用生成的随机数对消息进行加密,最后将之前生成的所有信息发送给网站。

第四步

  服务器使用自己的私钥,获取浏览器发来的随机数(即Premaster secret)。网址:yii666.com<

  网站接收浏览器发来的数据之后要做以下的操作:

    a) 使用自己的私钥将信息解密取出密码,使用密码解密浏览器发来的握手消息,并验证HASH是否与浏览器发来的一致。

    b) 使用密码加密一段握手消息,发送给浏览器。

第五步

  浏览器和服务器根据约定的加密方法,使用前面的三个随机数,生成"对话密钥"(session key),用来加密接下来的整个对话过程。

HTTPS一般使用的加密与HASH算法

  非对称加密算法:RSA,DSA/DSS

  对称加密算法:AES,RC4,3DES

  HASH算法:MD5,SHA1,SHA256

java-信息安全(七)-基于非对称加密,对称加密等理解HTTPS文章来源地址https://www.yii666.com/article/764279.html

版权声明:本文内容来源于网络,版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。文本页已经标记具体来源原文地址,请点击原文查看来源网址,站内文章以及资源内容站长不承诺其正确性,如侵犯了您的权益,请联系站长如有侵权请联系站长,将立刻删除

java-信息安全(七)-基于非对称加密,对称加密等理解HTTPS-相关文章

  1. java-信息安全(七)-基于非对称加密,对称加密等理解HTTPS

  2. https处理的一个过程,对称加密和非对称加密

  3. Nginx系列6:对称加密与非对称加密各自的应用场景

    强推:推荐一篇通俗易懂的对称加密和非对称加密的文章:https://segmentfault.com/a/1190000004461428推荐一篇文章:对称加密算法与非对称加密算法的优缺点:https://zhuanlan.zhihu.com/p/383078991.对称加密2.非对称加密

  4. 理解SSL、HTTPS原理中的对称加密与非对称加密

    1.对称性加密双方使用的同一个密钥,既可以加密又可以解密,这种加密方法称为对称加密,也称为单密钥加密。简单来说就是:加密与解密都是同一个秘钥。 优点:通常在消息发送方需要加密大量数据时使用,算法公开,计算量小,加密速度快,加密效率高。 缺点:在数

  5. https原理及其中所包含的对称加密、非对称加密、数字证书、数字签名

    声明:本文章已授权公众号Hollis转载,如需转载请标明转载自https://www.cnblogs.com/wutianqi/p/10654245.html(安静的boy)一、为什么要使用https使用https的原因其实很简单,就是因为http的不安全。当我们往服务器发送比较隐私的数据(比如说你的银行卡,身份证)时,如果使用http进行

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信图片_20190322181744_03.jpg

微信扫一扫打赏

请作者喝杯咖啡吧~

支付宝扫一扫领取红包,优惠每天领

二维码1

zhifubaohongbao.png

二维码2

zhifubaohongbao2.png