What would cause com.jcraft.jsch.KeyExchange.verify throws null pointer when calling session.connect()

52 Views Asked by At

java.lang.NullPointerException at com.jcraft.jsch.KeyExchange.verify(KeyExchange.java:368) at com.jcraft.jsch.DHECN.next(DHECN.java:178) at com.jcraft.jsch.Session.connect(Session.java:330)

        JSch jsch = new JSch();
        
        if (sshKeyData != null) {
            jsch.addIdentity(null, sshKeyData.getBytes(), null, sshPassphrase != null ? sshPassphrase.getBytes() : null);
        } else if (sshKeyPath != null) {
            jsch.addIdentity(sshKeyPath, sshPassphrase != null ? sshPassphrase.getBytes() : null);
        }
        
        session = jsch.getSession(userName, host, port);
        if (password != null) {
            session.setPassword(password);
        }
        session.setConfig("kex", JSCH_COMPAT_KEX);
        session.setConfig("server_host_key", JSCH_COMPAT_SERVER_HOST_KEY);
        session.setConfig("cipher.s2c", JSCH_COMPAT_CIPHER_S2C);
        session.setConfig("cipher.c2s", JSCH_COMPAT_CIPHER_C2S);
        session.setConfig("mac.s2c", JSCH_COMPAT_MAC_S2C);
        session.setConfig("mac.c2s", JSCH_COMPAT_MAC_C2S);
        session.setConfig("CheckCiphers", JSCH_COMPAT_CHECK_CIPHERS);
        session.setConfig("CheckSignatures", JSCH_COMPAT_CHECK_SIGNATURES);
        session.setConfig("CheckKexes", JSCH_COMPAT_CHECK_KEX);
        session.setConfig("CheckMacs", JSCH_COMPAT_CHECK_MACS);
        session.setConfig("PreferredAuthentications", "publickey,keyboard-interactive,password");            
        session.setConfig("StrictHostKeyChecking", "no");
        session.connect(60000);
0

There are 0 best solutions below