如何在 wolfssl 的 TLS1.3 握手的 New Session Ticket 包中添加新的 Key Share 扩展?

问题描述

我正在使用 wolfSSL 库的客户端/服务器示例,特别是我使用的是 TLS 1.3 版本。我想从初始握手中自定义 New Session Ticket 数据包,向其中添加一些额外信息,更具体地说,额外信息是 DH 密钥。

我目前位于 tls13.c 文件SendTls13NewSessionTicket 函数中,正好位于 ret = SendBuffered(ssl); 行之前。我尝试使用以下命令向我的 New Session Ticket 消息添加一个新扩展:

  • wolfSSL_UseKeyShare
  • TLSX_KeyShare_Use
  • TLSX_KeyShare_Parse

但不幸的是,消息中没有添加任何内容

更具体地说,与 description of the standard 类似,但增加一个

          Client                                               Server

   Initial Handshake:
          ClientHello
          + key_share               -------->
                                                          ServerHello
                                                          + key_share
                                                {EncryptedExtensions}
                                                {CertificateRequest*}
                                                       {Certificate*}
                                                 {CertificateVerify*}
                                                           {Finished}
                                    <--------     [Application Data*]
          {Certificate*}
          {CertificateVerify*}
          {Finished}                -------->
                                    <--------      [NewSessionTicket,**DH public Key**]
          [Application Data]        <------->      [Application Data]

DH 公钥,如上所示。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)