Rebex FTP/SSL for .NET Releases

Released: Nov 10, 2020

Updates in 2020 R5


  • All: Added support for Microsoft .NET 5.0.
  • FTP: Closing currently connecting sockets when Dispose method is called.
  • TLS Core: Added support for X.509 certificates with Ed25519 keys to TLS 1.3.
  • TLS Core: Improved exception messages in TLS 1.3.
  • Cryptography: Added built-in support for Ed25519 algorithm.
  • Cryptography: Added Rebex.Security.Cryptography.AesGcm class (equivalent to .NET 5.0's AesGcm class, but available on all platforms including .NET Framework 3.5).
  • Cryptography: Added...

Released: Sep 30, 2020

Updates in 2020 R4


  • All: Rebex assemblies targeting Microsoft .NET Standard 2.1 have been fully tested on Microsoft .NET 5.0 RC1 and are suitable to be used in production on Microsoft's latest .NET platform.
  • TLS Core: Updated TlsCipherSuite.Secure/Weak/Fast enum values. Updated TlsParameters.AllowedSuite default.
  • Cryptography: Added Ed25519 support to Certificate class. (Not yet supported by the built-in certificate validator due to lack of support in Microsoft Windows and Microsoft .NET).
  • Cryptography...

Released: Jul 14, 2020

Updates in 2020 R3


  • All: Added binaries targeting Microsoft .NET Standard 2.1.
  • SSH: Enhanced legacy group exchange autodetection.
  • TLS Core: Added TlsSocket.ApplicationProtocol property to make it possible to determine protocol negotiated using ALPN extension.
  • TLS Core: Now always prefers RSA/SHA-2 for client certificate authentication in TLS 1.2.
  • TLS Core: Disabled ciphers based on AES/CBC and SHA-2 in legacy versions of TLS (they are only specified by TLS 1.2).
  • TLS Core: Improved error message when server...

Released: May 24, 2020

Updates in 2020 R2


  • FTP: Added FtpExtensions.ExtendedPassiveMode (enables EPSV if supported by the server).
  • FTP: Added FtpSettings.EnableBrokenShutdownWorkaround option (workaround for FTPS servers that don't handle TLS 1.3 close messages properly).
  • SSH: Added new properties to SshCipher to make it possible to determine IDs of active ciphers.
  • SSH: Added workaround for a weakness in legacy CBC ciphers.
  • TLS Core: Enhanced TlsSocket.Timeout property to apply to subsequent Send, SendAsync, Receive and...

Released: Mar 25, 2020

Updates in 2020 R1.1


  • TLS Core: Improved TLS logging.
  • Common: Added DiffieHellmanNative class to Rebex.Common.Native assembly (speeds up Diffie-Hellman calculations on Xamarin.Android).


  • FTP: Fixed an issue in GetItems() method that caused file system items with an unknown type to not be filtered according to the specified mask.
  • Networking: Fixed rare race condition in TLS and SSH internals.
  • TLS Core: Fixed breaking changes in the behavior of seldom-used parts of TlsSocket API.
  • TLS Core: Fixed handling...

Released: Feb 21, 2020

Updates in 2020 R1


  • .NET Standard 2.0 on Xamarin.Android and Xamarin.iOS - Rebex binaries targeting .NET Standard 2.0 are now supported on Xamarin.Android and Xamarin.iOS. Previously-available binaries targeting specific Xamarin platforms have been deprecated, and .NET Standard 2.0 binaries should be used instead.
  • ChaCha20-Poly1305 support in TLS 1.3 and 1.2 - The TLS 1.3/1.2 core now supports the following ChaCha20-Poly1305 cipher suites:
    • TLS_CHACHA20_POLY1305_SHA256 (TLS 1.3)

Released: Jan 15, 2020

Updates in 2019 R4.2


  • Cryptography: Added workaround for RSA signatures shorter than the key size.
  • Cryptography: Only known external plugins are allowed for enhanced security.
  • Cryptography: Also save public key when saving X25519 private keys.


  • SSH: Fixed possible deadlock during SSH renegotiation (client-side).
  • TLS/SSL: Fixed renegotiation in TLS 1.2.
  • Cryptography: Fixed AsymmetricKeyAlgorithm.GetRawPublicKey() key format when RSA via MS CNG is in use.

Released: Dec 16, 2019

Updates in 2019 R4.1


  • .NET Core 3.1 support - .NET Core 3.1 is now supported on the following platforms:
    • Windows (x64, x86, ARM32)
    • Windows 10 IoT (x64, x86, ARM32)
    • Linux (x64, ARM32)
    • macOS (x64)
  • All: Added support for Mono 6.x.
  • FTP: Using TLS version of the control connection when negotiation the data connection.
  • Networking: Added missing 'buffer' argument check to some Send/Receive methods in ProxySocket/TlsSocket.
  • SSH: Added a workaround for a bug introduced in OpenSSH 8.0 that rejects 'sender channel'...

Released: Oct 31, 2019

Updates in 2019 R3.4


  • Support for TLS 1.3 in FTP - FTP class features support for FTP over TLS 1.3.
  • FTP: Improved behavior of stream-based PutFile methods with DisableProgressPercentage (stream length is no longer determined).
  • TLS/SSL: Added support for ALPN TLS extension to TlsSocket.
  • TLS/SSL: Added TlsBulkCipherMode.AEAD (to replace TlsBulkCipherMode.GCM).
  • TLS/SSL: Removed support for two legacy unsecure anonymous ciphers (DH_anon_EXPORT_WITH_DES40_CBC_SHA and DH_anon_EXPORT_WITH_RC4_40_MD5).
  • Cryptography...

Released: Sep 23, 2019

Updates in 2019 R3.2


  • All: Added support for .NET Core 3.0.
  • All: Added support for Microsoft Windows 10 IoT (via .NET Core 3.0).
  • SSH: Added SshGssApiCredentials.AccountName property to make it possible to specify an account name to be passed to the SSH server.
  • SSH: Added workaround for legacy WS_FTP 7.x servers that encode long SSH packets improperly.
  • Common: Optimized internal Task infrastructure on old .NET platforms.