サーバーとクライアントの通信が SSL 経由で行われるようにしたかったのです。このリンクをたどりました。鍵ペアを生成してから、server.private と server.public を生成します。サーバーとクライアント プログラムを実行すると、サーバー プログラムは次のように終了します。
*** ServerHelloDone
main, WRITE: TLSv1 Handshake, length = 679
main, READ: TLSv1 Alert, length = 2
main, RECV TLSv1 ALERT: fatal, certificate_unknown
main, called closeSocket()
main, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: certificate_unknown
javax.net.ssl.SSLHandshakeException: Received fatal alert: certificate_unknown
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
SOに関する多くの質問を読み、実行する必要があると推測しました:keytool -import -alias example -keystore cacerts -file root.cer.
しかし、上記のコマンドにどのような値を指定すればよいでしょうか? サーバーとクライアントの秘密鍵と公開鍵は、server.public、server.private、client.public、client.private です。