当前位置: 首页 > news >正文

TLS1.3协议分析(2)

1.  握手协议

1.1  ClientHello

当client第一次连接一个server时,它需要发送ClientHello作为第一个消息。

由于TLS 1.3禁止重协商,如果server已经协商完成了TLS 1.3,在任何其它时间收到了ClientHello,必须用"unexpected_message"警报中止连接。

如果server用以前版本的TLS建立了连接并在重协商时接收了一个TLS1.3的ClientHello,它必须保持以前的协议版本,不能协商TLS 1.3。

1.1.1  消息结构

uint16 ProtocolVersion;

      opaque Random[32];

      uint8 CipherSuite[2];    /* Cryptographic suite selector */

      struct {

          ProtocolVersion legacy_version = 0x0303;    /* TLS v1.2 */

          Random random;

          opaque legacy_session_id<0..32>;

          CipherSuite cipher_suites<2..2^16-2>;

          opaque legacy_compression_methods<1..2^8-1>;

          Extension extensions<8..2^16-1>;

      } ClientHello;

本次从握手的第一步开始分析,即ClientHello,下面是ClientHello的报文内容:

 

1.1.2  常规消息

Handshake Type:ClientHello,表示握手消息类型,此处是ClientHello;

Length:1814,即长度为1814字节;

Version:TLS1.2(0x0303),表示版本号为1.2,在TLS1.3的草案当中规定此处必须置为0x0303,即TLS1.2,起到向后兼容的作用。1.3版本用来协商版本号的部分在扩展当中,而之前的版本就在此处进行。

Random,随机数,是由安全随机数生成器生成的32个字节。

Session ID Length:会话ID的长度。

Session ID,会话ID,TLS 1.3之前的版本支持“会话恢复”功能,该功能已与1.3版本中的预共享密钥合并。为了兼容以前的版本,该字段必须是非空的,因此不提供TLS 1.3之前会话的客户端必须生成一个新的32字节值。该值不必是随机的,但应该是不可预测的,以避免实现固定在特定值,否则,必须将其设置为空。

Cipher Suites Length,即下面Cipher Suites的长度;

Cipher Suites:密码套件,如图所示

 

client支持的对称密码族选项列表,每个加密套件一般包含密钥交换、签名算法、加密算法以及哈希算法。

Compression Methons (1 method)表示压缩方法,长度为1,内容为空。

------------------------------扩展消息下一章哦-----------------

http://www.jsqmd.com/news/39167/

相关文章:

  • 2025年北京医疗事故案件律师权威推荐榜单:医疗侵权案/医疗事故鉴定案/医疗事故赔偿案律师团队精选
  • 2025年靠谱的生态红茶厂家最新权威推荐榜
  • 2025年火力发电教学模型生产厂家权威推荐榜单:教学发电模型/核电厂模型/港口动态沙盘模型源头厂家精选
  • 2025年中国十大WMS仓库管理系统权威排名
  • 2025年深圳子女抚养权律师权威推荐榜单:股权分割/离婚房产/继承律师服务专家精选
  • 领嵌iLeadE-588智能网关设备物联网应用中重要的设备
  • 2025年质量好的帆布布袋定制定制定做
  • 2025年优质的离婚财产分割律师高评价榜
  • 分类样本不平衡问题
  • 2025年优质的郑州注册公司行业权威推荐
  • 家用洗地机哪种好用?2025年度最新TOP榜实测全解及选购全攻略
  • 2025年质量好的专利评估高信赖度企业
  • 2025年有实力青年鸡高评价榜
  • 2025年深圳股权分割律师权威推荐榜单:离婚房产/子女抚养权/继承律师服务专家精选
  • 2025年可靠的建筑业体系认证三体系认证服务实力榜
  • 2025年口碑好的陕西白水苹果采购首选榜
  • 2025项目管理软件测评指南:11款海内外系统排名及选购建议
  • 2025年深圳继承律师权威推荐榜单:婚姻/股权分割/离婚房产律师团队精选
  • Python代码规范:如何写出符合PEP8的代码
  • 2025年知名的防砸防刺穿劳保鞋厂家最新权威推荐榜
  • OpenCV Python 绑定:原理与实战 - 教程
  • C语言入门教程(第6讲):函数——让应用学会“分工合作”的魔法
  • 【转载】ACM MM 投稿论文模板修改成投稿模式
  • QOJ 1086 Bank Security Unification 题解
  • 禅道本地环境搭建
  • 2025年比较好的会议室舞台灯光厂家最新推荐榜
  • 2025年热门的盐城短视频拍摄本地服务TOP推荐
  • 2025年知名的展厅设计施工专业设计团队实力榜
  • 2025年耐用的宠物托运精选优质榜
  • cesium加载天地图影像地图与影像注记