zoukankan      html  css  js  c++  java
  • “key_share”和"pre_shared_key" 的区别

    越是基本的问题或者概念越是难解释或者讲清楚,论文写到现在真的好无助的样子 。

       在LTS协议中牵扯到握手的认证和秘钥建立的时候,这连个概念经常混淆,TLS1.3版本协议为参照,区别这两个概念

    1、概念的解释

              key_share是椭圆曲线类型对应的公钥扩展。

              pre_shared_key(对称秘钥)是预共享秘钥认证机制PSK生成的对称秘钥,PSK是一种身份认证机制。

    2、key_share中包含的是椭圆曲线类型对应的公钥

              psk其实即使Session ticket外加一些检验的东西 ,

    3、目前来说已经实现的TLS1.3中并不是不能连接TLS1.2,这就牵扯到TLS协议的降级保护问题。

        在TLS1.3协议版本中定义的时候为了能够兼容TLS1.2,添加了额外的信息

     像 在 ClientHello 结构体中存在的  legancyVersion   legacySessioID   LegacyCompressionMethods 的定义为了兼容TLS1.2,但是,在TLS1.3中的 Support_version的优先级明显高于 legancyVersion

    ClientHello主要通过Extension 传递协商必要的材料(参数,算法),第一次CLientHello 至少包含以下五个Extension :

         ServerName :请求的主机名

         SupportedVersion :支持的协议版本

         SignatureAlgorithms: 所支持的签名算法

         SupportedGroup: 用于秘钥交换

         key_share:秘钥协商对应的公钥,每一个supportgroup需要有对应的keySahre

         key_share:  

    4、HKDF(HMAC_base_key_derivation_function)秘钥导出函数

    5、TLS1.3 定义了多种报文

    6、    

             

             

          

  • 相关阅读:
    java:产生小数位数为2的随机概率,使得和为1
    大数据网络分析规划
    java碎笔
    mysql修改记录
    mysql导入导出数据
    Centos中hive/hbase/hadoop/mysql实际操作及问题总结
    linux后台运行程序
    Centos搭建mysql/Hadoop/Hive/Hbase/Sqoop/Pig
    ARM-LINUX自动采集温湿度传感器数据
    java中枚举类型的使用
  • 原文地址:https://www.cnblogs.com/xinxianquan/p/11129032.html
Copyright © 2011-2022 走看看