Java NIO SSL - SSLEngine session 重用

标签 java ssl java-8 nio jsse

我正在使用 Java 8 NIO 和 SSL 实现客户端和服务器部分。 我对创建 SSLEngine 有一些疑问。

SSLContext中有一个方法

public final SSLEngine createSSLEngine(String peerHost,
                                   int peerPort)

Applications using this factory method are providing hints for an internal session reuse strategy.

在客户端创建 SSLEngine 时,我必须提供服务器的 IP 和端口。 但是在服务器端创建 SSLEngine 时,我应该给出哪个 IP 和端口?

根据 RFC2246,客户端必须在 ClientHello 消息中发送“ session ID”,服务器将检查其“ session 缓存”是否匹配。 我该如何对服务器的 SSLEngine 启用“ session 缓存”?

最佳答案

While creating the SSLEngine at client side, I have to give server's ip and port. But while creating SSLEngine at server side, which IP and port I should give ?

客户的。

As per RFC2246, the client has to send "Session ID" in ClientHello Message, and Server will check its "Session Cache" for its match. How would I say to server's SSLEngine to enable "Session cache"?

只要服务器端 SSLEngine 知道客户端 IP:端口,它就会默认开启。

关于Java NIO SSL - SSLEngine session 重用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29935644/

相关文章:

android - 证书固定不适用于 Android 上的 OkHttp

java - 共享库 - 64 位 Ubuntu 上的 Java 32 位

java - 如何使用 Java 8 收集器对三重嵌套映射求和

java - 有没有同时兼容Android和Java的Base64库

ssl - 如果访问网站时未选择 x509 证书,是否可以重定向用户?

ssl - 如何使用 Java 连接到支持 TLS 1.2 的 URL

lambda - 如何使用lambda过滤具有二级列表中对象属性的列表?

针对不同上下文的 Java 序列化

java - WebSphere 应用程序服务器/java.lang.ClassCastException

java - 通过 JAVA 访问 C++ 原生 DLL(带命名空间)