Sample code for 30+ languages & platforms
Dart Requires Chilkat v11.0.0+

FTP Connect, Examine Server Certificate, and then Authenticate

See more FTP Examples

Demonstrates how to connect to an FTP server, examine the server's SSL/TLS certificate, and then, if it meets the application's security requirements, proceed to authenticate.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // This example assumes Chilkat Ftp2 to have been previously unlocked.
  // See Unlock Ftp2 for sample code.

  final ftp = CkFtp2();

  ftp.hostname = 'www.authtls-ftps-server.com';
  ftp.username = 'FTP_LOGIN';
  ftp.password = 'FTP_PASSWORD';
  ftp.authTls = true;
  ftp.port = 21;

  // Connect to the FTP server using explicit TLS (AUTH TLS).
  try {
    ftp.connectOnly();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Get the FTP server's certificate.
  final serverCert = CkCert();
  try {
    ftp.getServerCert(serverCert);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Now that we have the certificate, we can check it in any way we desire.
  // (See the online reference documentation for the certificate object's methods
  // and properties)...

  // Assuming the certificate is OK, proceed to authenticate with the FTP server.
  try {
    ftp.loginAfterConnectOnly();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Proceed with uploading/download files, etc...
  // 

  ftp.disconnect();
  print('Success.');
}