sshlib: The C++ SSH2 Library on Windows

The SSH2 library which forms the core of WinSSHD and Tunnelier is available for licensing. It is suitable for use in server as well as client SSH applications, and at its core is platform independent. Based on Crypto++, it is elegant, efficient, and well-designed. The sshlib library has been thoroughly tested, and the SSH2 protocol has been publicly reviewed.

If you are developing an application that must support SSH2: Thousands of experts' man-hours have gone into development of sshlib so that you can spend your time productively on what you do best. So speed up your development - take a proven SSH implementation that will immediately do what you want.

If you are designing proprietary client/server application: You can take the rocky road: develop your own security protocol, and then, as months go by, learn from your own mistakes. But then you can also use SSH: a time-tested solution with a readily available implementation. It is very flexible and will easily adapt to the specific needs of your application.

Features

  • Excellence of implementation: sshlib is fast, robust, and flexible. Our code does things right and it does them well. You can use our library in even the most demanding circumstances.
  • User interface: sshlib comes with a user authentication library that leverages Tunnelier's host key and user keypair settings and provides a graphical user interface for user authentication. The Global Client Settings utility included in Tunnelier for managing host key and user keypair settings can also be redistributed if you are writing an SSH client application. (*)
  • SFTP: sshlib includes a sophisticated SFTP client library with high-level, high-performance transfer methods. (*)
  • Tunneling: sshlib includes ready-made TCP/IP port forwarding channels which can serve either as an example for other channel types or can be directly deployed in practice.
  • Key exchange: modular and extensible; already included: DH group 1 (most common), DH group 14, DH group exchange, gss-group1 (*) and gss-gex (*) with Kerberos 5
  • Host key algorithms: ssh-rsa (any size), ssh-dss (1024)
  • User authentication: 'password', 'publickey' (ssh-rsa, ssh-dss), 'keyboard-interactive', 'gssapi-with-mic' (*) and 'gssapi-keyex' (*) with NTLM as well as Kerberos 5
  • Encryption algorithms: aes256-cbc, twofish-cbc, blowfish-cbc, 3des-cbc, arcfour, cast128-cbc, none
  • MAC algorithms: hmac-sha1, hmac-sha1-96, hmac-md5, hmac-md5-96, none
  • Compression: zlib, none
  • Interoperability: sshlib works well with all SSH2 implementations that we are aware of, even older ones and faulty ones (e.g. SSH.com <= 2.3.0, older versions of F-Secure SSH, WS_FTP).
  • Modularity: sshlib has a highly modular, state-of-the-art C++ design, which makes it very suitable for use in multithreaded applications.
  • Portability: The core of sshlib is highly portable - virtually all platforms that implement Windows-style or Berkeley-style sockets are supported. The library has even been ported by a customer to the HP NonStop GUARDIAN platform with only a small number of changes.

* Windows-specific.

Cost

The current sshlib license fee is US$3000 for marketed applications and $1000 for internal use. This price is available on the condition that your programs do not directly compete with our WinSSHD and Tunnelier applications. Direct online-forum support provided by our developers is included with the license. For more information, please contact us here.

Existing Users

Among others, sshlib is already being used in the following products:

Preview Package

To make it easier for you to compare sshlib with other solutions, we are making some of the most important header files, as well as sample SSH client source code, available for your perusal.

By accessing the publicly available sshlib header files and sample client source code (the 'Preview Files'), you agree to the following terms:

  • The Preview Files are Copyright (C) 2000-2005 by Bitvise Limited, portions Copyright (C) 1995-2003 by Wei Dai. All rights not explicitly granted are reserved by the authors.
  • The sole right you are granted with regard to the Preview Files is the right to view the contents of these files and to execute the sample programs for evaluation. You are not granted any other right with regard to the Preview Files.
  • You are explicitly not granted the right to use the Preview Files or their content in any way other than for evaluation; to modify any of the Preview Files; or to make a copy of any the Preview Files available to a third party.

Note again that by accessing the Preview Files, you agree to be bound by the above conditions. Read them carefully.

Then, you can download the files by clicking on the below button: