Класс QMaskGenerator
Класс QMaskGenerator предоставляет абстрактный базовый класс для пользовательских генераторов 32-битных масок. Подробнее...
| Заголовок: | #include <QMaskGenerator> |
| qmake: | QT += websockets |
| С момента: | Qt 5.3 |
| Наследует: | QObject |
Этот класс был представлен в Qt 5.3.
Открытые функции
| QMaskGenerator(QObject *parent = nullptr) | |
| virtual | ~QMaskGenerator() override |
| virtual quint32 | nextMask() = 0 |
| virtual bool | seed() = 0 |
Подробное описание
Спецификация WebSockets, описанная в RFC 6455, требует, чтобы все данные от клиента к серверу были замаскированы. Это для предотвращения атак со стороны вредоносных скриптов на неправильно работающие прокси-сервера. Дополнительную информацию о важности хорошей маскировки можно найти в "Talking to Yourself for Fun and Profit" by Lin-Shung Huang et al. По умолчанию QWebSocket использует относительно безопасную функцию QRandomGenerator::global()->generate(). Лучшее средство защиты от атак, упомянутых в документе выше, — использование QWebSocket через защищенное соединение (wss://). В общем случае всегда будьте осторожны, чтобы скрипты третьих лиц не получили доступ к QWebSocket в вашем приложении.
Документация по функциям-членам
QMaskGenerator::QMaskGenerator(QObject *parent = nullptr)
Создаёт новый объект QMaskGenerator с указанным необязательным родителем QObject parent.
[override virtual] QMaskGenerator::~QMaskGenerator()
Уничтожает объект QMaskGenerator.
[pure virtual] quint32 QMaskGenerator::nextMask()
Возвращает новую случайную 32-битную маску. Случайность зависит от используемого генератора псевдослучайных чисел для создания маски.
[pure virtual] bool QMaskGenerator::seed()
Инициализирует QMaskGenerator с помощью инициализации генератора случайных чисел. Когда seed() не вызывается, конкретная реализация подкласса определяет, используется ли по умолчанию seed или он вообще не используется. Возвращает true, если инициализация успешна, в противном случае — false.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qmaskgenerator.html