如何解决WolfSSL 中的 DTLS `HelloVerifyRequest`/`HelloRetryRequest`
由 section 4.2.1 of RFC 6347 中描述的 HelloverifyRequest
发起的 cookie 交换对于 DTLS 中的 DoS 保护至关重要。除非我忽略了一些东西,否则 WolfSSL 文档并没有真正描述如何通过其 DTLS 实现启用此 cookie 交换。
我能找到的最接近的是函数 wolfSSL_send_hrr_cookie
,手册中提到:
在服务器端调用这个函数来表明一个 HelloRetryRequest 消息必须包含一个 Cookie。 Cookie 包含一个 当前成绩单的散列,以便另一个服务器进程可以 处理 ClientHello 作为回复。该秘密在生成 对 Cookie 数据进行完整性检查。
据我所知,HelloRetryRequest
(比较 HelloverifyRequest
)是 TLS 1.3 术语。 DTLS 1.3 尚未最终确定。如何在 WolfSSL 中启用和控制 DTLS 1.0/1.2 cookie 交换?
解决方法
默认启用 DTLS Hello Cookie。 wolfSSL 服务器代码使用文件 src/wolfio.c 中的回调函数 EmbedGenerateCookie()
根据 RFC 6347 §4.2.1 中的建议生成 cookie。
TLSv1.3 的 hrr_cookie 是其他无关的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。