A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马罗坚 金牌黑马   /  2012-6-14 20:24  /  2085 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 nailsoul 于 2012-6-15 01:59 编辑

private static void openSSLserver() {
  try {
   String userHome=System.getProperty("user.home");
   System.out.println(userHome);
   System.setProperty("javax.net.ssl.keyStore", userHome+"/.keystore");   javax.net.ssl.keyStore k应该是小写
   System.setProperty("javax.net.ssl.keyStorePassword","123456");
   SSLServerSocket ssl=(SSLServerSocket)SSLServerSocketFactory.getDefault().createServerSocket(9999);
   while(true){
    final Socket s=ssl.accept();
    System.out.println(s.getInetAddress().getHostAddress()+"connecting SSLSERVER");
    new Thread(){
     @Override
     public void run(){
      InputStream in=null;
      OutputStream out=null;
      try {
       in=s.getInputStream();
       out=s.getOutputStream();
       byte[] results=new byte[1024];
       int len=in.read(results);
       System.out.println(new String(results,0,len));
       out.write("Welcome to SSLServer".getBytes());
       in.close();
       out.close();
       s.close();
      } catch (IOException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      }
     }
    }.start();
   }
   
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
}

为什么老是报没有找到证书呢? 我用keytool -genkeypair -alias 127.0.0.1 创建了证书柜啊 密码设置的123456
javax.net.ssl.SSLException: No available certificate or key corresponds to the SSL cipher suites which are enabled.
at com.sun.net.ssl.internal.ssl.SSLServerSocketImpl.checkEnabledSuites(SSLServerSocketImpl.java:307)
at com.sun.net.ssl.internal.ssl.SSLServerSocketImpl.accept(SSLServerSocketImpl.java:253)
at Security.MySSHServerSocket.openSSLserver(MySSHServerSocket.java:26)
at Security.MySSHServerSocket.main(MySSHServerSocket.java:16)

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马