Rebex File Transfer Pack 2017 R4

Released: Jun 30, 2017

Updates in 2017 R4

Features

  • Custom file system support - Rebex File Server now features a rich custom file system provider API. This can be used to implement virtual file systems, or custom file systems that store data in a database, in the cloud, or elsewhere. Additionally, the built-in mount-capable virtual file system provider makes it possible to construct virtual file systems composed from multiple unrelated providers.
  • Support for CNG Key Storage Providers - Rebex Certificate class now fully supports RSA, DSA and ECDSA private keys stored in Windows CNG Key Storage Providers.
  • Native support for Brainpool (P-256 R1, P-384 R1, P-512 R1) and secp256k1 elliptic curves on Windows 10 - Windows 10 (and Windows Server 2016) added native support for additional Elliptic Curve DSA (ECDSA) / Elliptic Curve Diffie-Hellman (ECDH) curves including secp256k1, Brainpool P-256 R1, P-384 R1 and P-512 R1, and Rebex classes can take advantage of them now (in addition to NIST P-256/P-384/P-521 curves).
  • All: Lots of improvements in experimental .NET Core / .NET Standard edition.
  • SFTP: Enhanced error reporting of failed SFTP subsystem request.
  • SFTP: Added workaround for Titan SFTP server which incorrectly handles uploaded blocks of 65535/65534 bytes.
  • File Server: Added Rebex.FileSystem assembly with support for custom file system providers.
  • File Server: Added GetInputStream/GetOutputStream/GetErrorStream methods to SshConsole. This makes it possible to implement advanced custom commands.
  • File Server: Added Unix-like 'cp' (copy) command to virtual shell.
  • File Server: Enhanced handling of ShellCommand event handler errors.
  • File Server: Added DisconnectedEventArgs.User property.
  • File Server: Implemented IDisposable in FileServer/Server classes.
  • File Server: Enhanced logging of info requests for non-existent items.
  • File Server: Added ServerSession.GetCurrent() static method.
  • File Server: Added FileServer.Settings.GetItemInfoRequiresListPermission option to make it possible to specify whether item info retrieval requires List permission or Read permission.
  • File Server: Enhanced handling of failed channel requests.
  • File Server: Virtual root accessibility is checked before initializing the SFTP subsystem now.
  • File Server: Added workaround for wrong error code reported as last error when deleting non-existent file.
  • SSH: Added SshParameters.CompressionLevel option to make it possible to specify the desired compression level for SSH.
  • SSH: Deprecated SshPrivateKey.CreateSignature, VerifySignature and an old variant of the SshPrivateKey.Save method.
  • SSH: Added SshPublicKey.GetPublicKeyInfo() method.
  • Cryptography: Added support for certificates with private keys stored in CNG Key Storage Providers.
  • Cryptography: Compatibility enhancements in Certificate public/private key operations and AsymmetricKeyAlgorithm class.
  • Cryptography: Added Certificate.GetPublicKeyInfo() method.
  • Cryptography: Added native support for secp256k1, Brainpool P-256 R1, P-384 R1 and P-512 R1 on Windows 10 and Windows Server 2016.
  • Cryptography: Experimental support for CMS (PKCS #7) decryption with RSA/OAEP/SHA-1 (RSAES-OAEP defined by RFC 3447).
     

Fixes

  • All: Deprecated .NET Compact Framework 2.0, Windows (Store) 8.0 and Windows (Store/Phone) 8.1 platforms.
  • Cryptography: Fixed PublicKeyInfo.GetKeySize() method that used to throw an exception for ECDSA and ED keys.
  • Cryptography: Fixed default hash algorithm detection in SignMessage/VerifyMessage methods in Certificate and AsymmetricKeyAlgorithm classes.
  • Cryptography: Fixed 'Unexpected PFX length' error when exporting 4096-bit RSA certificates into PFX/P12 file.