QCryptographicHash Class
The QCryptographicHash class provides a way to generate cryptographic hashes. More...
Header: | #include <QCryptographicHash> |
qmake: | QT += core |
Since: | Qt 4.3 |
This class was introduced in Qt 4.3.
Note: All functions in this class are reentrant.
Public Types
enum | Algorithm { Md4, Md5, Sha1, Sha224, Sha256, …, Keccak_512 } |
Public Functions
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 |
Static Public Members
QByteArray | hash(const QByteArray &data, Algorithm method) |
int | hashLength(Algorithm method) |
Detailed Description
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.
Member Type Documentation
enum QCryptographicHash::Algorithm
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 |
Member Function Documentation
QCryptographicHash::QCryptographicHash(Algorithm method)
Constructs an object that can be used to create a cryptographic hash from data using method.
QCryptographicHash::~QCryptographicHash()
Destroys the object.
void QCryptographicHash::addData(const char *data, int length)
Adds the first length chars of data to the cryptographic hash.
void QCryptographicHash::addData(const QByteArray &data)
This function overloads addData().
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, Algorithm method)
Returns the hash of data using method.
[static]
int QCryptographicHash::hashLength(Algorithm method)
Returns the size of the output of the selected hash method in bytes.
This function was introduced in Qt 5.12.
void QCryptographicHash::reset()
Resets the object.
QByteArray QCryptographicHash::result() const
Returns the final hash value.
See also QByteArray::toHex().