"v4.0.30319" not a version of Rebex SFTP - it's the version of .NET Framework it targets. However, if the assembly file name is
Rebex.Net.Sftp.dll, this indicates that you use Rebex SFTP v2.0.4086 or earlier (we changed DLL names in the subsequent release).
That version is now more than 8 year and although it already had support for the three AES/CTR ciphers, it didn't support any of the SHA-2 HMAC ciphers. Those have only been supported since Rebex SFTP 2014 R1 (released 5 years ago). To learn more about these ciphers, check out theese cipher charts.
And to address your findings:
1) DLLs in Rebex SFTP v2.0.4086 and earlier were named differently and there was no
Rebex.Common.dll. See this blogpost for details.
2) The old
Sftp class lacked the
Settings property. Instead, it had
Options property and a
Connect method overload that accepts an instance of
SshParameters. These could be used to specify many of the settings that are now accessible via the
3) The old version doesn't support any SHA-2 HMAC ciphers yet, so this behavior is as expected. To make it work, you would need to upgrade to a more recent version that supports contemporary SSH ciphers.