Sorry for the confusion – the product you need is Rebex SFTP – you can download a trial here.
(Rebex SSH Pack includes Rebex SSH Shell component in addition to Rebex SFTP).
Both Rebex STP and Eldos SFTPBlackBox are mature products that will undoubtedly cover 99% of usage scenarios. If any features are missing in either one, it's most likely those that are rarely needed.
If unsure which product to choose, then my advice is – instead of comparing the feature lists, give both components a try and choose the one that works and whose API you actually like more! :-)
And if there are any missing features you actually need, both Rebex and Eldos are friendly vendors that will happily add them for you unless it's something tricky (but beware, not all vendors are like this).
This said, let me point out few inaccuracies in the Eldos's comparison chart. I'm sure this is unintentional – naturally, their component is the one they are most familiar with, and although we have an extensive feature list, some of these features were hard to find in the previous version of our website. So here goes:
Price – The starting price of Rebex SFTP is $349, not $449. Although you won't get the source code, you can distribute the DLLs to your clients without any additional royalty fees, which you can't do with Eldos's cheapest licensing schemes.
Also, I'm unsure about Eldos' claimed starting price of $294. Using their calculator, the lowest quote I managed to get (.NET edition / SFTPBlackBox client / In-House / 1 Developer / USD) was $339, and you can't distribute the DLLs to your clients with that license – you would need to get 'Vendor' license, which costs $465.
Evaluation – I bet one can easily convince the other vendors to extend their evaluation periods as well. It's just usually not advertised as a feature... But still, if you do need to extend Rebex SFTP's trial period, just ask! :-)
Platforms – Rebex SFTP works with ASP.NET as well (with necessary permissions – it uses TCP sockets). We support Mono, Xamarin.iOS, Xamarin.Android, Xamarin.Mac, Windows Store 8.0 Apps, Windows Store 8.1 PCL (Windows 8.1 and Windows Phone 8.1), Universal Windows Platform (Windows 10, Windows 10 Mobile and Windows 10 IoT) and have experimental support for .NET Core.
SSH server component – We now have SFTP Server component as well.
Transport layer (sockets/custom) – We do support any custom transport as well.
Proxy support – In addition to what's in the chart, we support using an SSH server as a proxy. We also support NTLM authentication for HTTP CONNECT proxies (optionally with single sign-on).
SFTP versions supported – This is a tricky one! The SFTP protocol is no longer evolving and is currently described by "IETF draft documents" that have been "expired" for years. One of the reasons for this unfortunate state is that it was getting somewhat out of hand and the IETF working group responsible for SSH decided to cease working on it. In words of OpenSSH (which includes the most commonly used SFTP server) developers, "more recent versions of the [...] drafts [... are hopelessly bloated and broken" and OpenSSH won't even be supporting those more recent versions (v4 to v6). We mostly agree with them, but we still implemented v4 which actually still includes useful features such as mandatory UTF-8 charset support, text-file support and string-based owner/group attributes support, and v4 is actually supported by a lot of servers. On the other hand, we agree that v5 and v6 are not even worth supporting. As for v2 support - this version is not even defined by the expired IETF drafts (the first one already defined v3) and we believe it to be extinct. No one ever asked for it since the first release of Rebex SFTP in 2006. In fact, no one even mentioned it... But it's almost identical to v3, which means we can add support it within hours if you need it and if any server actually supports it (and doesn't support v3).
SSH authentication schemes – Yes, it's true that we don't support some of those authentication schemes at the moment. There seems to be no demand for them, so we concentrated instead on more useful features. However, adding support for custom GSS-API modules or host-based schemes would be trivial, it's just that no one ever asked. If you need any of the missing schemes, just let us know and you might be pleasantly surprised soon. Also, as far as I know, Pageant or ssh-agent are not really "authentication schemes", but rather means of storing and accessing the actual private keys.
SSH key management – we do support DSS and RSA keys as well (you can use .NET's
DSACryptoServiceProvider with Rebex SFTP).
Low-level SFTP methods – we do support low-level
GetStream method. We don't support
lock because it was introduced in SFTP v5 (see point 7).
But frankly, what's most interesting is not what is in the chart, but rather what is not there. Some highlights from our feature list:
- High-level API featuring powerful yet simple-to-use methods such as Upload/Download.
- Common API for SFTP and FTP (includes FTP/SSL). If you plan to ever support the FTP protocol as well, you will find our IFtp interface very useful.
- Rebex SFTP includes support for the SCP "protocol" (through a separate object). This is very useful when working with SSH servers that don't support SFTP.
- Rebex SFTP integrates nicely with Rebex SSH Shell which adds terminal emulation capabilities – it's even possible to share a single SSH session for both SFTP and SSH terminal emulation.
- We have .NET 4.0-style asynchronous API that greatly simplifies asynchronous programming when use