电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

使用wireshark分析HTTPS流程的建立VIP免费

使用wireshark分析HTTPS流程的建立_第1页
1/15
使用wireshark分析HTTPS流程的建立_第2页
2/15
使用wireshark分析HTTPS流程的建立_第3页
3/15
使用wireshark分析HTTPS流程的建立摘要:https流程一、概要为了网站以及用户的安全性,现在很多的网站都是https,大家都知道tcp通过三次握手建立连接,并且还有很多的同学对https连接建立的流程不太明白,包括我自己,通过借助于wireshark这种抓包工具,我们可以尝试着了解一下大概的流程。(图1)本图是客户端(10.0.45.103)访问服务端(114.215.88.85)通过wireshark抓包显示出来的双方交互数据,访问是通过https访问服务器上的一台nginx服务器服务。请关注第一列的No。下文中很多时候会用no表示一次交互。图中可以很明显的看出tcp的三次握手以及之后的TLS加密流程的建立。二、tcp的三次握手通过流程图可以看出(也可以看图1的19368到19370这三个编号),首先客户端向服务端发起一个SYN的请求,序号(Seq)为0,确认号(ACK)也为0,这代表是本次是由客户端发起的首次请求。本次请求的数据长度为0然后服务端给客户端响应,此时服务端的Seq也是0,值得是服务端的第一回应,并且给客户端说,你的请求我已经收到了(ACK=1),最后返还给客户端以后,客户端的序号+1,并且对服务端的响应做出确认,最后回给服务端,此时ACK=1,Seq=1tcp的握手过程建立成功。三、ssl连接的建立通过以上可以看出,SSL也是建立在TCP的基础上的,经过tcp的三次握手,接下来才是加密信道的建立。客户端和服务端建立安全连接大致经过以下几个步骤1.客户端:ClientHello2.服务端:ServerHello,Servercertificate,ServerExchange,ServerHelloDone3.客户端:clientExchange4.客户端:ApplicationData5.服务端:NewSession6.服务端:ApplicationData接下来看这几个步骤中具体的每一个步骤传输的内容ClientHelloclient首先给服务端打招呼,对服务端说hello应用层没什么特别的客户端向服务端发送202个字节的数据,并且客户端此时的seqnum为1,tcp三次握手已经通过了,所以客户端acknum确认的是服务端的tcp的最后一次信息。由于这次发送的长度是202个字节,所以给服务端说,下一个字节序列号是从203开始的。标志位为ACK和PSH但是这次多了一个SecureSocketlayer层。协议使用的时候,用的是HandshakeProtocol,给服务端发消息ClientHello详细的信息如下:SecureSocektslayer层使用的是版本是TLS1.0HandShakeType的类型,是客户端打招呼clienthelloHandShakeprotocol协议使用的是TLS1.2发送的信息还有客户端在本地生成的随机码(Random)然后客户端声明自己所支持的加密套件(CipherSuites)这个客户端支持15种加密套件加密套件中表明了使用的对称加密算法,非对称加密算法,摘要算法以及使用的是TLS或者是SSL还有一些其他的信息第一行指明是否进行了压缩以及使用的压缩算法,第二行null表明未进行压缩,以及选用相关的压缩算法或者压缩工具剩下的就是一些扩展的字段了总结下来,客户端向服务端第一次打招呼(clientHello)的时候实际上主要发送了以下主要的信息客户端的随机数客户端所支持的加密套件以及客户端和服务器之间的sessionId接下来就是服务端对客户端Hello的第一次回应,也就是编号19372可以看到服务端使用的是443端口,序列号(Sequencenumber)也是1,并且回应客户端说我已经确认收到你的202个自己的数据(203-1),Flags表明本次是服务端反馈给客户端请求的应答(蓝色的文字也写出来了,这是一个队19371编号的应答)从图1可以看出这是一个TCP连接ServerHello接下来不等客户端反应,服务端又给客户端发送了19373的数据,而这个数据就是使用了TLS1.2协议了。摘要信息中说明了这是服务端的的hello,Serverhello,服务端秘钥交换,服务端hellodone。接下来看服务端发过来的具体都有什么。传输控制层(transmissioncontrolprotocol)和上面一样,主要是一些Flags,端口以及数据长度的确认等等,主要看一下安全套接字层的东西(SecureSocketsLayer)中的东西。通过上图,可以看出服务端主要返回四种内容。ServerHello服务端的回应客户端的hello信息Certificate服务端证书ServerkeyExchange服务器秘钥交换ServerHelloDone服务器信息发送完毕详细看一下各个Recordlayer中的具体内容ServerHello在ServerHe...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

使用wireshark分析HTTPS流程的建立

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部