Классы Secure Sockets Layer (SSL)
Приведённые ниже классы обеспечивают поддержку защищённого сетевого взаимодействия с использованием протокола Secure Sockets Layer (SSL), применяя OpenSSL Toolkit для выполнения шифрования и обработки протокола.
Начиная с версии Qt 5.2, официально поддерживаемая версия OpenSSL составляет 1.0.0 или более поздние. Версии >= 0.9.7 и < 1.0.0 могут работать, но это не гарантируется.
Объявляет перечисления, общие для всех классов SSL в Qt Network |
|
Удобный API для сертификата X509 |
|
API для доступа к расширениям сертификата X509 |
|
Представляет криптографический шифр SSL |
|
Содержит конфигурацию и состояние подключения SSL |
|
Интерфейс для параметров Diffie-Hellman для серверов |
|
Представляет эллиптическую кривую для использования алгоритмами шифрования с эллиптическими кривыми |
|
Ошибка SSL |
|
Интерфейс для закрытых и открытых ключей |
|
Данные аутентификации для шифров с предварительно заданными ключами (PSK) |
|
SSL-шифрованный сокет для клиентов и серверов |
Включение и отключение поддержки SSL
При компиляции Qt из исходного кода система конфигурации проверяет наличие openssl/opensslv.h заголовка, предоставляемого исходными или разработчиками пакетов OpenSSL.
По умолчанию, Qt-библиотека с поддержкой SSL динамически загружает любую установленную библиотеку OpenSSL во время выполнения. Однако возможно связать библиотеку на этапе компиляции, настроив Qt с помощью опции -openssl-linked.
При создании версии Qt, связанной с OpenSSL, система сборки попытается связать libssl и libcrypt библиотеки, расположенные в стандартном месте на системе разработчика. Это местоположение можно настроить: установите переменную окружения OPENSSL_LIBS для указания параметров компоновщика, необходимых для связи Qt с установленной библиотекой. Например, на системе Unix/Linux:
OPENSSL_LIBS='-L/opt/ssl/lib -lssl -lcrypto' ./configure -openssl-linked
Для отключения поддержки SSL в сборке Qt настройте Qt с опцией -no-openssl.
Ограничения на импорт и экспорт
Из-за ограничений на импорт и экспорт в некоторых частях мира мы не можем предоставить OpenSSL Toolkit вместе с пакетами Qt. Разработчики, желающие использовать SSL-связь в своих приложениях, должны либо убедиться, что их пользователи имеют соответствующие библиотеки, установленные, либо проконсультироваться с квалифицированным юристом, чтобы убедиться, что приложения, использующие код из проекта OpenSSL, должным образом сертифицированы для импорта и экспорта в соответствующих регионах мира.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/ssl.html