Sample code for 30+ languages & platforms
Dart

Configure a Socket for Server-Side TLS

See more Socket/SSL/TLS Examples

Demonstrates Socket.InitSslServer, which configures the object for server-side TLS using a server certificate that has access to its private key, then listens for and accepts a TLS connection.

The file path is relative to the application's current working directory. An absolute path may also be used. Supply the path appropriate to your own environment.

Background. A TLS listener presents the configured server certificate during the handshake. When client certificates are required, acceptable CA distinguished names are added before InitSslServer.

Chilkat Dart Downloads

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

void main() {
  final socket = CkSocket();

  // The file path is relative to the application's current working directory.  An absolute path
  // may also be used.  Supply the path appropriate to your own environment.
  // The PFX password should come from a secure source rather than being hard-coded.
  final pfxPassword = 'myPfxPassword';
  final cert = CkCert();
  try {
    cert.loadPfxFile('qa_data/server.pfx', pfxPassword);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Configure this object for server-side TLS using the certificate.  The certificate must have
  // access to its corresponding private key.
  try {
    socket.initSslServer(cert);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Listen for connections.  Accepted connections will use TLS.
  try {
    socket.bindAndListen(5000, 25);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final connectedSock = CkSocket();
  try {
    socket.acceptNext(20000, connectedSock);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  print('Accepted a TLS client connection.');
}