发表日期:2018-04 文章编辑:小灯 浏览次数:2469
HTTPS常被定义为为HTTP over SSL,超文本传输安全协议。
以往HTTP通讯直接使用的明文传输,容易被人抓包,破解数据包,而HTTPS经由HTTP进行通信,但利用SSL/TLS来加密数据包。
HTTP的URL由“http://”起始且默认使用端口80,
HTTPS的URL由“https://”起始且默认使用端口443。
注意:
SSL是一个介于HTTP协议与TCP之间的一个可选层,为数据通讯提供安全支持。SSL协议可分为两层:
如果用右边的TCP/IP协议来划分,SSL是属于应用层与传输层之间的协议,如果还是用OSI七层协议划分,SSL是属于表示层与会话层的。
SSL协议的大概原理就是通过公钥加密法,也就是说,客户端先向服务器端索要公钥,然后用公钥加密信息,服务器收到密文后,用自己的私钥解密。
以下是SSL协议握手的一个主要过程,主要分为4个阶段。
SSL客户端(也是TCP的客户端)在TCP链接建立之后,发出一个ClientHello来发起握手,这个消息里面包含了
-- Client支持的SSL协议版本;
-- Client生成的随机数c1,稍后用于生成"对话密钥";
-- Client支持的加密方法;
-- Client支持的压缩方法;
SSL的服务器端会回应一个ServerHello,这个消息里面包含了以下内容
-- Server确认使用的加密通信协议版本;
--Server生成的随机数s1,稍后用于生成"对话密钥";
-- Server确认使用的加密方法;
-- Server 的SSL证书。
Client收到服务器回应以后,首先验证Server的证书是否有效,如果没问题,从证书里面取出Server的公钥,然后发送消息给Server,包含以下内容
-- Client生成的随机数c2,需要注意的是,这个随机数c2是经过Server公钥加密过的;
-- 告知Server 握手结束
Server收到Client消息后,使用私钥解密Client发过来的第二个随机数,同时也会发送握手结束的消息给Client。
此时,client和server都持有3个随机数,客户端和服务端用商定的算法利用3个随机数生成一个对话秘钥(session key)
,随后的通信就用这个秘钥进行加密解密。之所以用3个随机数,因为证书是静态的,增加随机数可以使得密钥更加有随机性。SSL协议传输过程中,使用的是由相同的3个随机数生成的对话秘钥(session key)
,而生成的规则是client与server商议好的算法,所以这个对话秘钥(session key)
是相同的,这个加密方法称为对称加密
。
HTTPS通讯也不一定是绝对安全的,有可能会被人劫持,通常是中间人攻击。
服务器向客户端发送公钥。
攻击者截获公钥,保留在自己手上。
然后攻击者自己生成一个【伪造的】公钥,发给客户端。
客户端收到伪造的公钥后,生成加密hash值发给服务器。
攻击者获得加密hash值,用自己的私钥解密获得真秘钥。
同时生成假的加密hash值,发给服务器。
服务器用私钥解密获得假秘钥。
中间人攻击一般发生在SSL握手协议中,协商密钥的时候(非对称加密阶段),而且发生中间人攻击,也就是代表攻击方拿到了证书的公钥和私钥。一旦会话初始化完成,开始进行数据通讯(对称加密阶段),想要完成中间人攻击是非常困难的。
防御中间人攻击的手段是做好证书的校验
http://www.nsfocus.net/index.php?act=magazine&do=view&mid=841
https://www.jianshu.com/p/9c52693a09dc
日期:2018-04 浏览次数:6881
日期:2017-02 浏览次数:3561
日期:2017-09 浏览次数:3812
日期:2017-12 浏览次数:3637
日期:2018-12 浏览次数:4975
日期:2016-12 浏览次数:4703
日期:2017-07 浏览次数:13752
日期:2017-12 浏览次数:3628
日期:2018-06 浏览次数:4382
日期:2018-05 浏览次数:4561
日期:2017-12 浏览次数:3673
日期:2017-06 浏览次数:4089
日期:2018-01 浏览次数:4068
日期:2016-12 浏览次数:4024
日期:2018-08 浏览次数:4528
日期:2017-12 浏览次数:3854
日期:2016-09 浏览次数:6612
日期:2018-07 浏览次数:3319
日期:2016-12 浏览次数:3341
日期:2018-10 浏览次数:3490
日期:2018-10 浏览次数:3600
日期:2018-09 浏览次数:3688
日期:2018-02 浏览次数:3711
日期:2015-05 浏览次数:3635
日期:2018-09 浏览次数:3413
日期:2018-06 浏览次数:3538
日期:2017-02 浏览次数:3976
日期:2018-02 浏览次数:4449
日期:2018-02 浏览次数:4320
日期:2016-12 浏览次数:3680
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.