The QMessageAuthenticationCode class provides a way to generate hash-based message authentication codes. More...
Header: | #include <QMessageAuthenticationCode> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Since: | Qt 5.1 |
Note: All functions in this class are reentrant.
QMessageAuthenticationCode(QCryptographicHash::Algorithm method, const QByteArray &key = QByteArray()) | |
~QMessageAuthenticationCode() | |
void | addData(const char *data, qsizetype length) |
void | addData(const QByteArray &data) |
bool | addData(QIODevice *device) |
void | reset() |
QByteArray | result() const |
void | setKey(const QByteArray &key) |
QByteArray | hash(const QByteArray &message, const QByteArray &key, QCryptographicHash::Algorithm method) |
QMessageAuthenticationCode supports all cryptographic hashes which are supported by QCryptographicHash.
To generate message authentication code, pass hash algorithm QCryptographicHash::Algorithm to constructor, then set key and message by setKey() and addData() functions. Result can be acquired by result() function.
QByteArray key = "key"; QByteArray message = "The quick brown fox jumps over the lazy dog"; ... QMessageAuthenticationCode code(QCryptographicHash::Sha1); code.setKey(key); code.addData(message); code.result().toHex(); // returns "de7c9b85b8b78aa6bc8a7a36f70a90701c9db4d9"
Alternatively, this effect can be achieved by providing message, key and method to hash() method.
QMessageAuthenticationCode::hash(message, key, QCryptographicHash::Sha1).toHex();
See also QCryptographicHash.
Constructs an object that can be used to create a cryptographic hash from data using method method and key key.
Destroys the object.
Adds the first length chars of data to the message.
This function overloads addData().
Reads the data from the open QIODevice device until it ends and adds it to message. Returns true
if reading was successful.
Note: device must be already opened.
[static]
QByteArray QMessageAuthenticationCode::hash(const QByteArray &message, const QByteArray &key, QCryptographicHash::Algorithm method)Returns the authentication code for the message message using the key key and the method method.
Resets message data. Calling this method doesn't affect the key.
Returns the final authentication code.
See also QByteArray::toHex().
Sets secret key. Calling this method automatically resets the object state.
As part of the free Business evaluation, we offer a free welcome call for companies, to talk about your requirements, and how the Felgo SDK & Services can help you. Just sign up and schedule your call.
Sign up now to start your free Business evaluation: