QMessageAuthenticationCode 类提供生成基于哈希的消息身份验证代码的办法。 更多...
| 头: | #include <QMessageAuthenticationCode> |
| qmake: | QT += core |
| Since: | Qt 5.1 |
该类在 Qt 5.1 引入。
注意: 此类的所有函数 可重入 .
| QMessageAuthenticationCode (QCryptographicHash::Algorithm method , const QByteArray & key = QByteArray()) | |
| ~QMessageAuthenticationCode () | |
| void | addData (const char * data , int 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 () 和 addData () functions. Result can be acquired by result () 函数。
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 () 方法。
QMessageAuthenticationCode::hash(message, key, QCryptographicHash::Sha1).toHex();
另请参阅 QCryptographicHash .
Constructs an object that can be used to create a cryptographic hash from data using method method and key key .
销毁对象。
Adds the first length chars of data to the message.
此函数重载 addData()。
读取数据,从打开
QIODevice
device
until it ends and adds it to message. Returns
true
若读取是成功的。
注意: 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.
另请参阅 QByteArray::toHex ().
Sets secret key . Calling this method automatically resets the object state.