【问题标题】:can SSL encrypt and decrypt with one key in javaSSL可以用java中的一个密钥加密和解密吗
【发布时间】:2012-11-26 03:17:20
【问题描述】:

我有将数据从客户端传输到服务器的项目,我在 java 中使用 ssl,我使用一个密钥来加密和解密 我使用 keytool 创建密钥

服务器 Security.addProvider(new Provider());

        //Specifying the Keystore details
        System.setProperty("javax.net.ssl.keyStore","testkeystore.ks");
        System.setProperty("javax.net.ssl.keyStorePassword","mypass");

        // Enable debugging to view the handshake and communication which happens between the SSLClient and the SSLServer
        // System.setProperty("javax.net.debug","all");
    }


            // Initialize the Server Socket
            SSLServerSocketFactory sslServerSocketfactory = (SSLServerSocketFactory)SSLServerSocketFactory.getDefault();
            sslServerSocket = (SSLServerSocket)sslServerSocketfactory.createServerSocket(intSSLport);

客户 System.setProperty("javax.net.ssl.trustStore", "/home/lap/NetBeansProjects/Dionaea-001/testkeystore.ks");

    {
        // Registering the JSSE provider
        Security.addProvider(new Provider());
    }

    try {
        // Creating Client Sockets
        SSLSocketFactory sslsocketfactory = (SSLSocketFactory)SSLSocketFactory.getDefault();
        SSLSocket sslSocket = (SSLSocket)sslsocketfactory.createSocket(strServerName,intSSLport);

我的问题 可以在 SSL 中使用一个密钥吗? 我如何知道加密 AES 或 DES 的类型?

【问题讨论】:

    标签: java ssl aes des


    【解决方案1】:

    服务器密钥库中的证书和私钥仅用于验证服务器。

    使用 SSL/TLS,加密密钥是握手期间协商的共享密钥。

    您可以从cipher suites 中查看所使用的加密算法,在建立连接后您可以从SSLSession 中获取。 (您可以从SSLSocket 获取会话。)

    【讨论】:

      猜你喜欢
      • 2021-01-18
      • 1970-01-01
      • 2013-05-15
      • 1970-01-01
      • 1970-01-01
      • 2015-09-23
      • 1970-01-01
      • 2020-04-23
      • 1970-01-01
      相关资源
      最近更新 更多