微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

与使用 Californium Scandium 核心的 DTLS 客户端和服务器之间的连接 ID 交换相关的查询

如何解决与使用 Californium Scandium 核心的 DTLS 客户端和服务器之间的连接 ID 交换相关的查询

我正在使用 californium-Scandium 演示应用程序项目探索 DTLS 1.2。 Scandium-core https://ng-bootstrap.github.io/#/components/datepicker/examples#range-popup 似乎支持 README.md 的最新草案。 根据 Connection Identifiers for DTLS 1.2,如果客户端和服务器想要基于连接 ID 进行通信,则客户端和服务器之间会发生 CID 交换。 Connection Identifiers for DTLS 1.2 当我运行

enter image description here

Scandium Server 的演示应用程序时,我看不到客户端和服务器之间发生的 CID 交换。虽然我可以在客户端和 DTLS 的服务器端看到连接 ID 生成。我在 Scandium Client添加了记录器,但记录器中的连接 ID 始终为空。 我的问题是DTLS Server和DTLS客户端之间的CID交换逻辑是否是在scandium-core API中实现的?如果是,请帮我找出用于此的类。

解决方法

对于 2.6.0 版,ExampleDTLSClient 和 ExampleDTLSServer 都不是“开箱即用”并启用了 CID(但我会在 3.0 中更改它:-))。

如果您想看到“开箱即用”,请使用“cf-secure”演示。以“CID:0”为“支持CID”启动客户端,以“CID:6”启动服务器以使用6字节的CID。

要为 ExampleDTLSClient 和 ExampleDTLSServer 启用 CID,请在 DtlsConfigurationBuilder 中添加一个

builder.setConnectionIdGenerator(new SingleNodeConnectionIdGenerator(cidLength));

对客户端使用 cidLength 0(支持),对服务器使用 6(使用 6 个字节)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。