Spec-Zone.ru › Qt 6.0

Классы Secure Sockets Layer (SSL)

Нижеприведенные классы обеспечивают поддержку защищенной сетевой связи с использованием протокола Secure Sockets Layer (SSL), используя OpenSSL Toolkit для выполнения шифрования и обработки протокола.

Начиная с версии Qt 5.6, официально поддерживаемая версия OpenSSL — 1.0.0 или более поздняя.

QDtls

Этот класс обеспечивает шифрование для сокетов UDP

QDtlsClientVerifier

Этот класс реализует генерацию и проверку куки DTLS на стороне сервера

QDtlsClientVerifier::GeneratorParameters

Этот класс определяет параметры генератора куки DTLS

QOcspResponse

Этот класс представляет ответ протокола Online Certificate Status Protocol

QSsl

Объявляет перечисления, общие для всех классов SSL в Qt Network

QSslCertificate

Удобный API для сертификата X509

QSslCertificateExtension

API для доступа к расширениям сертификата X509

QSslCipher

Представляет криптографический шифр SSL

QSslConfiguration

Содержит конфигурацию и состояние подключения SSL

QSslDiffieHellmanParameters

Интерфейс для параметров Diffie-Hellman для серверов

QSslEllipticCurve

Представляет эллиптическую кривую для использования алгоритмами шифрования с эллиптическими кривыми

QSslError

Ошибка SSL

QSslKey

Интерфейс для закрытых и открытых ключей

QSslPreSharedKeyAuthenticator

Данные аутентификации для шифров с предварительно объявленными ключами (PSK)

QSslSocket

Защищенный SSL сокет для клиентов и серверов

QSslSocket::AlertLevel

Описывает уровень сообщения об ошибке

QSslSocket::AlertType

Перечисляет возможные коды, которые может иметь сообщение об ошибке

QDtls::HandshakeState

Описывает текущее состояние рукопожатия DTLS

QDtls::QDtlsError

Описывает ошибки, которые могут быть найдены QDtls и QDtlsClientVerifier

QOcspResponse::QOcspCertificateStatus

Описывает состояние онлайн-сертификата

QOcspResponse::QOcspRevocationReason

Описывает причину аннулирования

Включение и отключение поддержки SSL

При сборке Qt из исходного кода система конфигурации проверяет наличие заголовка openssl/opensslv.h, предоставленного исходными или разработчиками пакетов OpenSSL.

По умолчанию, Qt-библиотека с поддержкой SSL динамически загружает любую установленную библиотеку OpenSSL во время выполнения. Однако, можно связать библиотеку на этапе компиляции, настроив Qt с опцией -openssl-linked.

При построении версии Qt, связанной с OpenSSL, система сборки Qt будет использовать команду CMake FindOpenSSL для поиска OpenSSL в нескольких стандартных расположениях. Можно установить переменную CMake OPENSSL_ROOT_DIR, чтобы принудительно указать определенное расположение.

Например:

configure -openssl-linked -- -D OPENSSL_ROOT_DIR=<openssl_dir>

Чтобы отключить поддержку SSL в сборке Qt, настройте Qt с опцией -no-openssl.

Защита транспортного уровня для датаграмм

Datagram Transport Layer Security (DTLS) — это протокол, который обеспечивает безопасность для приложений на основе датаграмм, защищая их от перехвата, подмены или подделки сообщений. Протокол DTLS основан на протоколе Transport Layer Security (TLS) для потоковых данных. QtNetwork позволяет использовать DTLS с протоколом User Datagram Protocol (UDP), как определено в RFC 6347.

Ограничения импорта и экспорта

Бинарные установщики Qt включают библиотеки OpenSSL, используемые QtNetwork. Однако эти библиотеки не автоматически развертываются с приложениями, которые построены с помощью Qt. Ограничения импорта и экспорта применяются для некоторых типов программного обеспечения и в некоторых частях мира. Разработчики, желающие использовать SSL-связь в своих развернутых приложениях, должны либо убедиться, что у их пользователей установлены соответствующие библиотеки, либо обратиться к квалифицированному юристу, чтобы убедиться, что приложения, использующие код из проекта OpenSSL, правильно сертифицированы для импорта и экспорта в соответствующих регионах мира.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/ssl.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API