1

我已经开发了一个基于 grizzly 的 HTTP 服务器。为了测试我的服务器,我还开发了一个基于 grizzly 的客户端,它可以使用 http-Messages 与我的服务器通信。我使用 grizzly 实例化我的 http-Server,如下所示:

HttpServer server = HttpServer.createSimpleServer();
server.addListener(new NetworkListener("server","127.0.01",8081);
server.getServerConfiguration().addHttpHandler(new Handler());

try {
    server.start();
    Thread.currentThread().join();

} catch (IOException e) {
    e.printStackTrace();
}catch (InterruptedException e) {
    e.printStackTrace();
}

现在我想保护他们之间的通信。当我搜索有关在 grizzly 中可能实现 ssl 的信息时,我发现了这个链接 SSL with Grizzly and Jersey。我注意到我应该结合使用SSLContextConfigurator和Jersey。这对我来说意味着我必须修改我的基于 grizzly 的服务器,它完全基于 grizzly。在执行此步骤之前,我必须确保我可以使用 Jersey 和 grizzly 来实现我的 AES 预共享密钥。到目前为止,我还没有找到展示如何在 Java 中使用 AES-preshared-key 的示例。

根据我对预共享密钥方法的阅读,我知道我应该使用 javax.crypto.Cipher。现在我对将这个功能(带有预共享密钥的 ssl)添加到我的服务器感到困惑。任何想法?

4

1 回答 1

0

你检查过SSLEngineConfigurator 文档吗?您可以将此页面中的 TLS v1.2 密码添加到enabledCipherSuites您的 ssl 配置中。该页面还为您提供了列表,包括与不同 JDK 版本的兼容性。

应该让您了解如何使用 Grizzly 进行 SSL。

于 2015-09-08T08:04:18.780 回答