如何在java中使用SSL实现NIO?

时间:2011-10-01 06:21:41

标签: java ssl nio

我想使用NIO在我的Java应用程序上实现SSL。已搜索互联网相同但无法继续。示例实现代码将是一个很大的帮助。

3 个答案:

答案 0 :(得分:2)

使用SSLEngine,但要警告它不是开玩笑。 JDK中有一些示例代码,但它会产生一些相当难以维持的假设,例如每个连接只有一次握手,只有客户端模式等。与选择器集成特别成问题。

答案 1 :(得分:0)

像弗里克说的那样,从Jboss看看netty。 在他们的documentation section中有一个涉及SSL的例子。

答案 2 :(得分:0)

SSLEngine是使用Java中的NIO执行SSL / TLS的标准方法。

但它严重难以使用,不推荐用于只需要安全套接字的应用程序。

幸运的是,至少有一个库替代方案:TLS Channel包装SSLContext(或SSLEngine)并暴露ByteChannel接口,在内部进行繁重的工作。

(免责声明:我是图书馆的主要作者)