JSch Changelog

What's new in JSch 0.1.52

Mar 20, 2015
  • bugfix: resource leak: duplicate keys in LocalIdentityRepository.
  • feature: added the support for SSH ECC defined in RFC5656, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521. This functionality requires Java7 or later.
  • feature: added the support for server host keys in ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521
  • feature: generating key-pairs in ecdh-sha2-nistp256, ecdh-sha2-nistp384,
  • ecdh-sha2-nistp521
  • change: aes192-ctr, aes256-ctr and diffie-hellman-group-exchange-sha256 have been enabled by the default.
  • change: key exchange methods, ecdh-sha2-nistp256, ecdh-sha2-nistp384 and ecdh-sha2-nistp521 have been enabled by the default.
  • change: the support for host keys in ecdsa-sha2-nistp256, ecdsa-sha2-nistp384 and ecdsa-sha2-nistp521 have been enabled by the default.
  • change: 'examples/KeyGen.java' demonstrates how to generate ecdsa-sha2-* key-pairs.
  • change: updating copyright messages; 2014 -> 2015
  • TODO: The ECC support is not functional on Java6 with BouncyCastle.

New in JSch 0.1.51 (Mar 18, 2014)

  • bugfix: reproducibility of "verify: false". FIXED.
  • bugfix: resource leaks at the failure of making local port forwarding. FIXED.
  • bugfix: NPE in connecting to the non-standard TCP port. FIXED.
  • bugfix: TCP connection may not be dropped if error messages from the remote are too long. FIXED.
  • bugfix: SftpATTRS#getAtimeString() returns the wrong string. FIXED.
  • bugfix: bytes to be added by SSH_MSG_CHANNEL_WINDOW_ADJUST must be in unsigned integer. FIXED.
  • bugfix: Util#checkTilde() should not convert a tilde in "C:\PROGRA~1\". FIXED.
  • bugfix: A long long command for ChannelExec will cause an ArrayIndexOutOfBoundsException. FIXED.
  • bugfix: ChannelSftp should not send bulk request greedily even if the remote window has the enough space.FIXED.
  • bugfix: Util.createSocket() should throw an exception with 'cause'. FIXED.
  • bugfix: failed to parse .ssh/config in the EBCDIC environment. FIXED.
  • bugfix: com.jcraft.jsch.jcraft.HMACSHA1(used only for MacOSX) is not reusable.FIXED.
  • bugfix: NPE caused by the delayed response for channel opening requests. FIXED.
  • bugfix: hung-up in uploading huge data to ProFTPd without the config 'SFTPClientMatch "JSCH.*" channelWindowSize 1GB'FIXED.
  • bugfix: Cipher#init() may cause an infinite loop with 100% cpu use due to https://bugs.openjdk.java.net/browse/JDK-8028627 fixed.
  • bugfix: in some case, JSche#setKnowHosts(InputStream stream) may fail to close the given stream.FIXED
  • change: com.jcraft.jsch.jcraft.HMAC* will not be used.
  • change: updating copyright messages; 2013 -> 2014
  • change: allowed to create the symbolic/hard link to the relative path by ChannelSftp#symlink(String oldpath, String newpath) ChannelSftp#hardlink(String oldpath, String newpath)
  • change: the availability of ciphers listed in "CheckCiphers" config will not be checked if they are not used.
  • change: Util#fromBase64() will throw JSchException in stead of RuntimeException, if the given string is not in base64 format.
  • feature: added the support for private keys in PKCS#8 format.
  • feature: introduced the interface com.jcraft.jsch.PBKDF to abstract the implementation of Password-Based Key Derivation Function, and added its implementation com.jcraft.jsch.jce.PBKDF by using JCE.

New in JSch 0.1.49 (Oct 12, 2012)

  • bugfix: Some sftp servers will sometimes fail to handle bulk requests, and whenever detecting such failures, we should re-send requests again and again. FIXED
  • bugfix: KeyPair#getFingerPrint() should return a fingerprint instead of keysize + " " + fingerprint. FIXED
  • bugfix: KeyPair#getKeySize() should return its key size. FIXED
  • bugfix: SftpATTRS#isDir() should return false for unix domain socket files.FIXED
  • change: improved the heuristics for the password prompt in the keyboard-interactive authentication. It may not be started with "password:".
  • change: ChannelSftp#put(InputStream src, String dst) will not check if dst is directory or not, and if an exception is thrown, the check will be done.
  • change: if the compression is enabled without jzlib.jar, an exception will be thrown.
  • feature: JSch#addIdentity() and KeyPair#load() methods will accept Putty's private key files. Note that Putty encrypts its private key with "aes256-cbc". So, to handle such key files, "Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files" must be installed.
  • feature: hmac-sha2-256 defined in RFC6668 is supported.
  • feature: added following methods to KeyPair class, byte[] getSignature(byte[] data), Signature getVerifier(), byte[] forSSHAgent(), void setPublicKeyComment(String comment)
  • feature: added following methods to SftpATTR class, boolean isChr(), boolean isBlk(), boolean isFifo(), boolean isSock()