Класс QCryptographicHash
Класс QCryptographicHash предоставляет способ генерации криптографических хешей. Подробнее...
| Заголовок: | #include <QCryptographicHash> |
| qmake: | QT += core |
| С тех пор: | Qt 4.3 |
Примечание: Все функции в этом классе являются перевходоустойчивыми.
Типы public
| перечисление | Algorithm { Md4, Md5, Sha1, Sha224, ..., Keccak_512 } |
Функции public
| QCryptographicHash(QCryptographicHash::Algorithm method) | |
| ~QCryptographicHash() | |
| void | addData(const char *data, int length) |
| void | addData(const QByteArray &data) |
| bool | addData(QIODevice *device) |
| void | reset() |
| QByteArray | result() const |
Статические члены public
| QByteArray | hash(const QByteArray &data, QCryptographicHash::Algorithm method) |
| int | hashLength(QCryptographicHash::Algorithm method) |
| const QMetaObject | staticMetaObject |
Подробное описание
Класс QCryptographicHash предоставляет способ генерации криптографических хешей.
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::QCryptographicHash(QCryptographicHash::Algorithm method)
Конструирует объект, который может использоваться для создания криптографического хеша из данных, используя method.
QCryptographicHash::~QCryptographicHash()
Уничтожает объект.
void QCryptographicHash::addData(const char *data, int length)
Добавляет первые length символов из data к криптографическому хешу.
void QCryptographicHash::addData(const QByteArray &data)
Эта функция перегружает addData().
bool QCryptographicHash::addData(QIODevice *device)
Считывает данные из открытого устройства QIODevice device до конца и хеширует их. Возвращает true если чтение прошло успешно.
Эта функция была введена в Qt 5.0.
[static] QByteArray QCryptographicHash::hash(const QByteArray &data, QCryptographicHash::Algorithm method)
Возвращает хеш data, используя method.
[static] 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-5.12/qcryptographichash.html