2010-12-02 30 views
1

我想要一个简单的方法来创建一个SSLServerSocket。我希望在运行时生成和使用自签名证书,因为数据需要受到保护,但它非常非常安全并不是非常重要。SSLSocketServer最简单的方法(在运行时生成证书)

我找到了关于制作SSLServerSocket的教程,但他们认为你有一个合适的证书。

伪代码,代码示例和一个简单的段落都是可接受的答案。

+1

为什么你必须在运行时创建它?您在服务器的整个生命周期中只需要一个模数ciertifcate到期。 – EJP 2010-12-02 06:27:34

+0

当然,但它必须在运行时至少一次... – 2010-12-02 21:17:40

回答

0

最简单的方法可能是调用外部程序。 openssl是许多加密的东西一个伟大的工具...让使用自签名的证书:

openssl req -new -newkey rsa:1024 -days 365 -nodes -x509 -keyout www.example.com.pem -out www.example.com.pem 

您可以用Runtime.exec()运行这样产生或使用ProcessBuilder

0

正常情况下,自签名证书在服务器的每次运行中都生成时根本没有意义。最好创建一次自签名证书(例如,在服务器设置期间),就这些了。

关于保护通信的自签名证书有很好的描述和讨论in this StackOverflow topic。请阅读它,因为它也解决您的问题。

相关问题