Standards and platform support

100% managed .NET code with no external dependencies 

  • Rebex SFTP is written in 100% managed C# code.
  • No external dependencies. It only needs .NET Framework.
  • No open source code used.
  • Fully CLS-compliant.
  • Supports any .NET language (C#, VB.NET, C++/CLI, etc.)
  • Platform-independent code. Same assemblies for both 32-bit and 64-bit applications.

.NET Framework on Windows 

Rebex SFTP supports the following .NET Framework platforms:

  • .NET Framework 4.8
  • .NET Framework 4.7.x
  • .NET Framework 4.6.x
  • .NET Framework 4.5.x
  • .NET Framework 4.0
  • .NET Framework 3.5 SP1
  • .NET Framework 3.5
  • .NET Framework 3.0
  • .NET Framework 2.0
  • Both 32-bit and 64-bit versions (same DLLs)

Supported IDE versions:

  • Microsoft Visual Studio 2019
  • Microsoft Visual Studio 2017
  • Microsoft Visual Studio 2015
  • Microsoft Visual Studio 2013
  • Microsoft Visual Studio 2012
  • Microsoft Visual Studio 2010
  • Microsoft Visual Studio 2008

Supported Windows versions:

  • Windows 10
  • Windows Server 2019
  • Windows Server 2016
  • Windows 8.1
  • Windows Server 2012 R2
  • Windows Server 2012
  • Windows Server 2008 R2
  • Windows Server 2008
  • Windows 7

Rebex SFTP is known to work on Windows 8, Windows Vista, Windows XP SP3 and Windows Server 2003 R2. However, these platforms already reached end-of-life, which means we cannot guarantee any kind of support for Rebex SFTP on these operating systems.

.NET Core 

Rebex SFTP supports .NET Core platform.

Supported frameworks:

Supported operating systems:

  • Windows 10
  • Windows 8.1
  • Windows 7 (SP1 and higher)
  • Windows Server 2008 R2 (SP1 and higher)
  • Linux (64-bit)
  • macOS (64-bit)

.NET Standard 

Rebex SFTP supports .NET Standard 1.5/2.0 on .NET Core 2.1 and 2.2. It also supports .NET Standard 2.0 on Mono 5.14 (or higher). Support for .NET Standard 2.0 on Universal Windows Platform (build 16299 or higher) and Xamarin.Mac (version 3.8 or higher) is experimental.

Mono on Linux 

Rebex SFTP supports Mono 4.x/5.x on Linux and Apple macOS (OS X).

Xamarin.iOS 

  • Visual Studio with Xamarin.iOS 10.3 or later
  • iOS 10 or later

Xamarin.Android 

  • Visual Studio with Xamarin.Android 8.0 or later

Xamarin.Mac 

Rebex SFTP features experimental support for Xamarin.Mac 3.8 or later via .NET Standard 2.0.

Universal Windows Platform 

Rebex SFTP features experimental support for Universal Windows Platform (UWP/UAP) applications on Windows 10 via .NET Standard 2.0.

Supported platforms:

  • Windows 10 (version 1709 or higher)
  • Windows 10 IoT (version 1709 or higher)

In order to use Rebex SFTP on these platforms, make sure to specify at least Windows 10 Fall Creators Update (10.0; Build 16299) in your Universal Windows project.

ASP.NET 

Rebex SFTP can be used within an ASP.NET web page. However, you have to keep in mind specific features of the ASP.NET platform (it is stateless, multithreaded, it may be limited by MediumTrust security level...).

For more details, see How to use Rebex SFTP or FTP/SSL in ASP.NET knowledge base article or try the SFTP client in ASP.NET sample.

Legacy platform support 

For details of legacy platforms support see the following articles:

.NET Compact Framework on handhelds and mobiles 

Rebex SFTP supports Microsoft legacy handheld and mobile platforms.

Supported frameworks:

  • .NET Compact Framework 3.5
  • .NET Compact Framework 3.9

Supported mobile operating systems:

  • Windows CE 5.0, 6.x
  • Pocket PC
  • Windows Mobile
  • Windows Embedded Compact 7
  • Windows Embedded Compact 2013

Supported IDE versions:

  • Microsoft Visual Studio 2008
  • Microsoft Visual Studio 2012
  • Microsoft Visual Studio 2013

Internet RFC specifications 

Rebex SFTP supports SSH2 protocol and implements the following specifications:

SSH1 is not supported - it is no longer considered secure and has been considered deprecated more than 15 years ago.

Please note that some non-essential features might not be supported. Let us know if you need to add anything.

SFTP version 3 and 4 

Supported SFTP protocol versions:

  • SFTP protocol version 3.
  • SFTP protocol version 4, which adds:
    • Separate last access time and last modified time file attributes
    • String-based user and group file attributes
    • Mandatory UTF-8 charset
    • Newline extension (automated OS type detection)

FIPS 140-2 mode 

Rebex SFTP can operate in a FIPS 140-2 compliant mode. When enabled, only FIPS-approved cryptographic modules from MS CryptoAPI are used. FIPS mode is activated automatically when Windows is running in FIPS mode. To switch on the FIPS mode manually, set
Rebex.Security.Cryptography.CryptoHelper.UseFipsAlgorithmsOnly to true.

Proxy servers 

  • SOCKS4
  • SOCKS4a (Socks4 with domain name resolving)
  • SOCKS5
  • HTTP proxies with CONNECT method support
  • Tunneling through SSH servers

Learn how to use proxy servers in Rebex SFTP.

Cryptographic algorithms 

  • Diffie-Hellman key exchange
  • RSA
  • DSA (with support of non-standard key sizes of up to 4096 bits)
  • Tripple DES
  • ArcFour (compatible with RC4)
  • AES (Rijndael)
  • Blowfish
  • CTR and CBC block cipher modes
  • SHA-1
  • SHA-2 (SHA-256, SHA-384, SHA-512)
  • MD5

Learn more about SSH security settings.

Private key formats 

  • PKCS #8 keys
  • PuTTY .ppk keys
  • OpenSSH/OpenSSL (SSLeay) keys
  • Keys on smart cards
  • Certificate-based keys

Learn more about private keys in Rebex SFTP.

Scripting platforms 

Rebex SFTP is designed primary for use in .NET framework applications. However, it can be used in several other scripting and hosting environments:

  • Microsoft SQL Server SSIS packages
  • Microsoft SQL Server SQL CLR stored procedures
  • Microsoft PowerShell scripts

See how to use Rebex SFTP in SSIS, SQL CLR and PowerShell environments.

Other technologies