Класс QCryptographicHash
Класс QCryptographicHash предоставляет способ генерации криптографических хешей. Подробнее...
| Заголовок: | #include <QCryptographicHash> |
| CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
Примечание: Все функции в этом классе являются реентерабельными.
Типы общедоступного доступа
| Перечисление | Algorithm { Md4, Md5, Sha1, Sha224, Sha256, …, Blake2s_256 } |
Общедоступные функции
| QCryptographicHash(QCryptographicHash::Algorithm method) | |
| ~QCryptographicHash() | |
| void | addData(const char *data, qsizetype length) |
| void | addData(const QByteArray &data) |
| bool | addData(QIODevice *device) |
| void | reset() |
| QByteArray | result() const |
Статические общедоступные члены
| QByteArray | hash(const QByteArray &data, QCryptographicHash::Algorithm method) |
| int | hashLength(QCryptographicHash::Algorithm method) |
Подробное описание
QCryptographicHash может использоваться для генерации криптографических хешей двоичных или текстовых данных.
Обратитесь к документации перечисления QCryptographicHash::Algorithm для получения списка поддерживаемых алгоритмов.
Документация по типам членов
Перечисление QCryptographicHash::Algorithm
Примечание: В версиях Qt до 5.9, когда требовалось сгенерировать хеш SHA3, QCryptographicHash фактически вычислял Keccak. Если вам нужна совместимость с хешами SHA-3, сгенерированными этими версиями Qt, используйте перечислители Keccak_. В качестве альтернативы, если требуется совместимость с исходным кодом, определите макрос QT_SHA3_KECCAK_COMPAT.
| Константа | Значение | Описание |
|---|---|---|
QCryptographicHash::Md4 |
0 |
Генерирует хеш MD4 |
QCryptographicHash::Md5 |
1 |
Генерирует хеш MD5 |
QCryptographicHash::Sha1 |
2 |
Генерирует хеш SHA-1 |
QCryptographicHash::Sha224 |
3 |
Генерирует хеш SHA-224 (SHA-2). Введено в Qt 5.0 |
QCryptographicHash::Sha256 |
4 |
Генерирует хеш SHA-256 (SHA-2). Введено в Qt 5.0 |
QCryptographicHash::Sha384 |
5 |
Генерирует хеш SHA-384 (SHA-2). Введено в Qt 5.0 |
QCryptographicHash::Sha512 |
6 |
Генерирует хеш SHA-512 (SHA-2). Введено в Qt 5.0 |
QCryptographicHash::Sha3_224 |
RealSha3_224 |
Генерирует хеш SHA3-224. Введено в Qt 5.1 |
QCryptographicHash::Sha3_256 |
RealSha3_256 |
Генерирует хеш SHA3-256. Введено в Qt 5.1 |
QCryptographicHash::Sha3_384 |
RealSha3_384 |
Генерирует хеш SHA3-384. Введено в Qt 5.1 |
QCryptographicHash::Sha3_512 |
RealSha3_512 |
Генерирует хеш SHA3-512. Введено в Qt 5.1 |
QCryptographicHash::Keccak_224 |
7 |
Генерирует хеш Keccak-224. Введено в Qt 5.9.2 |
QCryptographicHash::Keccak_256 |
8 |
Генерирует хеш Keccak-256. Введено в Qt 5.9.2 |
QCryptographicHash::Keccak_384 |
9 |
Генерирует хеш Keccak-384. Введено в Qt 5.9.2 |
QCryptographicHash::Keccak_512 |
10 |
Генерирует хеш Keccak-512. Введено в Qt 5.9.2 |
QCryptographicHash::Blake2b_160 |
15 |
Генерирует хеш BLAKE2b-160. Введено в Qt 6.0 |
QCryptographicHash::Blake2b_256 |
16 |
Генерирует хеш BLAKE2b-256. Введено в Qt 6.0 |
QCryptographicHash::Blake2b_384 |
17 |
Генерирует хеш BLAKE2b-384. Введено в Qt 6.0 |
QCryptographicHash::Blake2b_512 |
18 |
Генерирует хеш BLAKE2b-512. Введено в Qt 6.0 |
QCryptographicHash::Blake2s_128 |
19 |
Генерирует хеш BLAKE2s-128. Введено в Qt 6.0 |
QCryptographicHash::Blake2s_160 |
20 |
Генерирует хеш BLAKE2s-160. Введено в Qt 6.0 |
QCryptographicHash::Blake2s_224 |
21 |
Генерирует хеш BLAKE2s-224. Введено в Qt 6.0 |
QCryptographicHash::Blake2s_256 |
22 |
Генерирует хеш BLAKE2s-256. Введено в Qt 6.0 |
Документация по функциям-членам
QCryptographicHash::QCryptographicHash(QCryptographicHash::Algorithm method)
Конструирует объект, который может быть использован для создания криптографического хеша из данных, используя method.
QCryptographicHash::~QCryptographicHash()
Уничтожает объект.
void QCryptographicHash::addData(const char *data, qsizetype length)
Добавляет первые length символов из data к криптографическому хешу.
void QCryptographicHash::addData(const QByteArray &data)
Эта функция перегружает addData().
bool QCryptographicHash::addData(QIODevice *device)
Считывает данные из открытого QIODevice device до его конца и хеширует их. Возвращает true , если чтение прошло успешно.
Эта функция была введена в Qt 5.0.
QByteArray QCryptographicHash::hash(const QByteArray &data, QCryptographicHash::Algorithm method)
Возвращает хеш data, используя method.
int QCryptographicHash::hashLength(QCryptographicHash::Algorithm method)
Возвращает размер выходных данных выбранного алгоритма хеширования method в байтах.
Эта функция была введена в Qt 5.12.
void QCryptographicHash::reset()
Сбрасывает объект.
QByteArray QCryptographicHash::result() const
Возвращает окончательное значение хеша.
См. также QByteArray::toHex().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qcryptographichash.html