Может шифровать SSL и дешифровать одним ключом в Java

У меня есть проект для передачи данных от клиента к серверу, и я использую ssl в Java, и я использую один ключ для шифрования и дешифрования, я использую keytool для создания ключа

сервер Security.addProvider(новый поставщик ());

        //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);

client 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?

1 ответ

Сертификат и закрытый ключ в хранилище ключей вашего сервера используются только для аутентификации сервера.

С SSL/TLS ключи шифрования являются общими ключами, согласованными во время рукопожатия.

Вы можете увидеть, какой алгоритм шифрования используется из набора шифров, который вы можете получить из SSLSession как только вы установили соединение. (Вы можете получить сессию из SSLSocket.)

Другие вопросы по тегам