The QCryptographicHash class provides a way to generate cryptographic hashes. More...
Header: | #include <QCryptographicHash> |
CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Note: All functions in this class are reentrant.
enum | 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 can be used to generate cryptographic hashes of binary or text data.
Refer to the documentation of the QCryptographicHash::Algorithm enum for a list of the supported algorithms.
Note: In Qt versions before 5.9, when asked to generate a SHA3 hash sum, QCryptographicHash actually calculated Keccak. If you need compatibility with SHA-3 hashes produced by those versions of Qt, use the Keccak_
enumerators. Alternatively, if source compatibility is required, define the macro QT_SHA3_KECCAK_COMPAT
.
Constant | Value | Description |
---|---|---|
QCryptographicHash::Md4 |
0 |
Generate an MD4 hash sum |
QCryptographicHash::Md5 |
1 |
Generate an MD5 hash sum |
QCryptographicHash::Sha1 |
2 |
Generate an SHA-1 hash sum |
QCryptographicHash::Sha224 |
3 |
Generate an SHA-224 hash sum (SHA-2). Introduced in Qt 5.0 |
QCryptographicHash::Sha256 |
4 |
Generate an SHA-256 hash sum (SHA-2). Introduced in Qt 5.0 |
QCryptographicHash::Sha384 |
5 |
Generate an SHA-384 hash sum (SHA-2). Introduced in Qt 5.0 |
QCryptographicHash::Sha512 |
6 |
Generate an SHA-512 hash sum (SHA-2). Introduced in Qt 5.0 |
QCryptographicHash::Sha3_224 |
RealSha3_224 |
Generate an SHA3-224 hash sum. Introduced in Qt 5.1 |
QCryptographicHash::Sha3_256 |
RealSha3_256 |
Generate an SHA3-256 hash sum. Introduced in Qt 5.1 |
QCryptographicHash::Sha3_384 |
RealSha3_384 |
Generate an SHA3-384 hash sum. Introduced in Qt 5.1 |
QCryptographicHash::Sha3_512 |
RealSha3_512 |
Generate an SHA3-512 hash sum. Introduced in Qt 5.1 |
QCryptographicHash::Keccak_224 |
7 |
Generate a Keccak-224 hash sum. Introduced in Qt 5.9.2 |
QCryptographicHash::Keccak_256 |
8 |
Generate a Keccak-256 hash sum. Introduced in Qt 5.9.2 |
QCryptographicHash::Keccak_384 |
9 |
Generate a Keccak-384 hash sum. Introduced in Qt 5.9.2 |
QCryptographicHash::Keccak_512 |
10 |
Generate a Keccak-512 hash sum. Introduced in Qt 5.9.2 |
QCryptographicHash::Blake2b_160 |
15 |
Generate a BLAKE2b-160 hash sum. Introduced in Qt 6.0 |
QCryptographicHash::Blake2b_256 |
16 |
Generate a BLAKE2b-256 hash sum. Introduced in Qt 6.0 |
QCryptographicHash::Blake2b_384 |
17 |
Generate a BLAKE2b-384 hash sum. Introduced in Qt 6.0 |
QCryptographicHash::Blake2b_512 |
18 |
Generate a BLAKE2b-512 hash sum. Introduced in Qt 6.0 |
QCryptographicHash::Blake2s_128 |
19 |
Generate a BLAKE2s-128 hash sum. Introduced in Qt 6.0 |
QCryptographicHash::Blake2s_160 |
20 |
Generate a BLAKE2s-160 hash sum. Introduced in Qt 6.0 |
QCryptographicHash::Blake2s_224 |
21 |
Generate a BLAKE2s-224 hash sum. Introduced in Qt 6.0 |
QCryptographicHash::Blake2s_256 |
22 |
Generate a BLAKE2s-256 hash sum. Introduced in Qt 6.0 |
Constructs an object that can be used to create a cryptographic hash from data using method.
Destroys the object.
Adds the first length chars of data to the cryptographic hash.
This function overloads addData().
[since 5.0]
bool QCryptographicHash::addData(QIODevice *device)
Reads the data from the open QIODevice device until it ends and hashes it. Returns true
if reading was successful.
This function was introduced in Qt 5.0.
[static]
QByteArray QCryptographicHash::hash(const QByteArray &data, QCryptographicHash::Algorithm method)
Returns the hash of data using method.
[static, since 5.12]
int QCryptographicHash::hashLength(QCryptographicHash::Algorithm method)
Returns the size of the output of the selected hash method in bytes.
This function was introduced in Qt 5.12.
Resets the object.
Returns the final hash value.
See also 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