Модуль базовый модуль

Модуль ssl

модуль ssl / tls, псевдоним модуля: tls

Объект

Socket

Создайте объект SslSocket , см. SslSocket

1
SslSocket ssl.Socket;

Handler

Создайте объект SslHandler , см. SslHandler

1
SslHandler ssl.Handler;

Server

Создайте объект SslServer , см. SslServer

1
SslServer ssl.Server;

Статическая функция

connect

Создайте объект SslSocket и установите соединение

1 2
static Stream ssl.connect(String url, Integer timeout = 0) async;

Параметры звонка:

  • url : String, укажите протокол подключения, это может быть: ssl: // host: port
  • timeout : Integer, укажите время ожидания, единица измерения - миллисекунды, по умолчанию - 0

Результат возврата:

  • Stream , возвращает успешно подключенный объект SslSocket

Создайте объект SslSocket и установите соединение

1 2 3 4
static Stream ssl.connect(String url, X509Cert crt, PKey key, Integer timeout = 0) async;

Параметры звонка:

  • url : String, укажите протокол подключения, это может быть: ssl: // host: port
  • crt : X509Cert , сертификат X509Cert , используемый для сервера аутентификации клиента
  • key : PKey , закрытый ключ PKey , используемый для разговора с клиентом
  • timeout : Integer, укажите время ожидания, единица измерения - миллисекунды, по умолчанию - 0

Результат возврата:

  • Stream , возвращает успешно подключенный объект SslSocket

setClientCert

Установить сертификат клиента по умолчанию

1 2
static ssl.setClientCert(X509Cert crt, PKey key);

Параметры звонка:

  • crt : X509Cert , сертификат X509Cert , используемый для сервера аутентификации клиента
  • key : PKey , закрытый ключ PKey , используемый для разговора с клиентом

loadClientCertFile

Загрузить сертификат клиента по умолчанию из файла

1 2 3
static ssl.loadClientCertFile(String crtFile, String keyFile, String password = "");

Параметры звонка:

  • crtFile : String, X509Cert сертификата X509Cert , используемый для сервера аутентификации клиента
  • keyFile : String, PKey закрытого ключа PKey , используемый для связи с клиентом.
  • password : строка, расшифровать пароль

loadRootCerts

Загрузите прилагаемый к нему корневой сертификат по умолчанию, который эквивалентен ssl.ca .loadRootCerts

1
static ssl.loadRootCerts();

Содержимое этого сертификата взято из: http : //hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt

Статические свойства

ca

X509Cert , глобальный сертификат, используемый для сертификата сервера проверки режима клиента ssl

1
static readonly X509Cert ssl.ca;

verification

Целое число, установить режим проверки сертификата, по умолчанию VERIFY_REQUIRED

1
static Integer ssl.verification;

min_version

Целое число, установить минимальную поддержку версии, по умолчанию ssl3

1
static Integer ssl.min_version;

max_version

Целое число, установить поддержку самой высокой версии, по умолчанию tls1_1

1
static Integer ssl.max_version;

постоянный

VERIFY_NONE

Режим проверки сертификата, без проверки

1
const ssl.VERIFY_NONE = 0;

VERIFY_OPTIONAL

Режим проверки сертификата, дополнительная проверка, допускающая сбой проверки

1
const ssl.VERIFY_OPTIONAL = 1;

VERIFY_REQUIRED

Режим проверки сертификата, проверка обязательна, если проверка не удалась, она будет прервана

1
const ssl.VERIFY_REQUIRED = 2;

BADCERT_EXPIRED

Результат проверки сертификата, время ожидания сертификата

1
const ssl.BADCERT_EXPIRED = 1;

BADCERT_REVOKED

Результат проверки сертификата, сертификат отозван

1
const ssl.BADCERT_REVOKED = 2;

BADCERT_CN_MISMATCH

Результат проверки сертификата, неверное название сертификата

1
const ssl.BADCERT_CN_MISMATCH = 4;

BADCERT_NOT_TRUSTED

Результат проверки сертификата, сертификат не доверенный

1
const ssl.BADCERT_NOT_TRUSTED = 8;

ssl3

Версия протокола ssl ssl 3.0

1
const ssl.ssl3 = 0;

tls1

Версия протокола ssl tls 1.0

1
const ssl.tls1 = 1;

tls1_1

Версия протокола ssl tls 1.1

1
const ssl.tls1_1 = 2;

tls1_2

Версия протокола ssl tls 1.2

1
const ssl.tls1_2 = 3;