QPasswordDigestor¶
The QPasswordDigestor namespace contains functions which you can use to generate hashes or keys. More…
New in version 5.12.
Synopsis¶
Static functions¶
def
deriveKeyPbkdf1
(algorithm, password, salt, iterations, dkLen)def
deriveKeyPbkdf2
(algorithm, password, salt, iterations, dkLen)
Detailed Description¶
- static PySide6.QtNetwork.QPasswordDigestor.deriveKeyPbkdf1(algorithm, password, salt, iterations, dkLen)¶
- Parameters
algorithm –
Algorithm
password –
PySide6.QtCore.QByteArray
salt –
PySide6.QtCore.QByteArray
iterations – int
dkLen – int
- Return type
Returns a hash computed using the PBKDF1-algorithm as defined in RFC 8018, section 5.1.
The function takes the data
and salt
, and then hashes it repeatedly for iterations
iterations using the specified hash algorithm
. If the resulting hash is longer than dkLen
then it is truncated before it is returned.
This function only supports SHA-1 and MD5! The max output size is 160 bits (20 bytes) when using SHA-1, or 128 bits (16 bytes) when using MD5. Specifying a value for dkLen
which is greater than this results in a warning and an empty QByteArray
is returned. To programmatically check this limit you can use hashLength
. Furthermore: the salt
must always be 8 bytes long!
Note
This function is provided for use with legacy applications and all new applications are recommended to use PBKDF2
.
See also
deriveKeyPbkdf2
QCryptographicHash
hashLength
- static PySide6.QtNetwork.QPasswordDigestor.deriveKeyPbkdf2(algorithm, password, salt, iterations, dkLen)¶
- Parameters
algorithm –
Algorithm
password –
PySide6.QtCore.QByteArray
salt –
PySide6.QtCore.QByteArray
iterations – int
dkLen – int
- Return type
Derive a key using the PBKDF2-algorithm as defined in RFC 8018, section 5.2.
This function takes the data
and salt
, and then applies HMAC-X, where the X is algorithm
, repeatedly. It internally concatenates intermediate results to the final output until at least dkLen
amount of bytes have been computed and it will execute HMAC-X iterations
times each time a concatenation is required. The total number of times it will execute HMAC-X depends on iterations
, dkLen
and algorithm
and can be calculated as iterations * ceil(dkLen / QCryptographicHash::hashLength(algorithm))
.
See also
deriveKeyPbkdf1
QMessageAuthenticationCode
QCryptographicHash
© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.