SFTPBlackbox

Connect to existing and create SFTP servers

SFTPBlackbox
  • Supported Platforms

  • .NET.NET

    Pure managed and integrated components, carefully optimized to achieve maximum performance comparable to native processor code. The .NET edition can be used on .NET and Mono server and desktop platforms, in ASP.NET applications, and on mobile devices.

  • .NETJava

    Highly integrated Java security library including numerous classes to enable support for a wide range of application-level protocols, security algorithms, and standards. You can use Java security libraries to develop software for desktop and server platforms, mobile devices, and Web applications.

  • .NETC++

    A shared library (.dll on Windows and .so on Linux / macOS) and set of C++ classes. Used in C++ applications for Windows, Linux, macOS, and iOS platforms. Supported compilers include Visual C++, MinGW, gcc, and Xcode.

  • .NETVCL

    Highly integrated and blazingly fast native Delphi (Pascal) components for building native Windows, Linux, and macOS applications. All components are native Delphi, have no third-party binaries or references, and no reliance on Windows CryptoAPI. Also includes Delphi components for building Android and iOS apps.

  • .NETPHP

    Integrated components for PHP scripts running on Linux and Windows servers.

Overview

Use SFTPBlackbox to connect to remote servers via SFTP protocol and also create your own SFTP servers (server-side components are available in VCL and .NET editions).

Implement Complete SFTP Connections

SFTPBlackbox includes features that help you build connections in minutes and that let you access and control every single function defined by the SFTP (SSH File Transfer Protocol) specification plus more.

Strong Encryption Support

As the protocol is built on top of SSH connection, SFTPBlackbox includes SSH transport technology and supports strong encryption with keys up to 16,384 bits.

No External Dependencies

SFTPBlackbox includes its own implementation of SSH/STP protocol family and doesn't include any external code like OpenSSL, OpenSSH etc.

Full Feature List

Key Features

  • SFTP versions 3-6 support by SFTP server class
  • Support for SFTP protocol versions 2-6 in SFTP client class
  • Low-level methods (ReadFile, WriteFile, Seek, Block/Unblock) that give you fine-grain control over contents of the remote filesystem
  • Attribute retrieval and modification, including the attributes defined by SFTP 4 to 6
  • Operations with symlinks and hardlinks
  • Custom commands can be sent (by the client) and handled (by the server) to provide extended capabilities
  • (optional) ZLib compression to reduce network load and increase security
  • Text and binary transfer modes including support for text mode in SFTP versions before SFTP 4
  • Support for Unicode file names via UTF8
  • Upload and download of any information represented as Streams - disk files, in-memory streams, database records, or any other custom streams
  • (optional) Work with remote file data using convenient SFTPStream class (descendant of .NET Stream and VCL TStream)
  • All possible authentication methods supported: public-key, host-based, password-based, keyboard-interactive, GSS-API (Kerberos, NTLM, custom schemes), OpenPGP key, and X.509 certificate
  • (optional) Public-key authentication using Pageant (part of PuTTY) and ssh-agent (part of OpenSSH)
  • Keyboard-interactive authentication that is handled internally or passed to the application via event
  • Asynchronous and synchronous operation modes which let you easily build synchronous and asynchronous applications
  • Handling of files over 4 GB
  • Possibility to use SFTP over custom data transport (not just SSH)
  • Data transfer using events/callbacks, i.e. possibility to secure not only socket-based, but also other types of data exchange
  • (optional) FIPS-compliant operation mode

ElSimpleSFTPClient

  • Batch operations - methods for uploading, downloading, and deleting one or several files and directories with one method call
  • Batch operations using wildcards and regular expressions
  • Possibility to dynamically exclude files from batch transfer
  • Overwrite, resume, append, and skip modes of file upload and download
  • Events to track operation progress (both for single-file and batch operations) and stop the operation if needed
  • All SFTP operations available in easy-to-use synchronous interface
  • Possibility to execute SSH commands over established SSH connection when there's a need to perform remote shell operation before or after transfer
  • Access to all SSH features via included SSHBlackbox package
  • Virtual file system support - provide access to existing file system or access your virtual file hierarchies
  • Built-in TCP socket with support for SOCKS and HTTP CONNECT (Web tunneling) proxies with various authentication mechanisms
  • Bandwidth control to avoid overloading of slow networks
  • IPv6 and International Domain Names (IDN) support for maximum network connectivity
  • Support for custom DNS servers and DNSSEC for even more security and network stability
  • Possibility to use application-provided low-level transport allows to perform communication over any carrier and not just TCP socket
  • Port knocking support for advanced security