PySide6.QtNetwork.QPasswordDigestor

class QPasswordDigestor

QPasswordDigestor 命名空间包含可用于生成哈希或密钥的函数。更多

概要

静态函数

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

static deriveKeyPbkdf1(algorithm, password, salt, iterations, dkLen)
Parameters:
Return type:

QByteArray

返回使用RFC 8018第5.1节中定义的PBKDF1算法计算的哈希值。

该函数接收datasalt,然后使用指定的哈希algorithm重复哈希iterations次。如果生成的哈希长度超过dkLen,则在返回之前将其截断。

此函数仅支持SHA-1和MD5!使用SHA-1时,最大输出大小为160位(20字节),使用MD5时,最大输出大小为128位(16字节)。如果为dkLen指定的值大于此值,将导致警告并返回空的QByteArray。要以编程方式检查此限制,可以使用QCryptographicHash::hashLength。此外:salt必须始终为8字节长!

注意

此函数是为与旧版应用程序一起使用而提供的,所有新应用程序建议使用 PBKDF2

另请参阅

deriveKeyPbkdf2 hashLength

static deriveKeyPbkdf2(algorithm, password, salt, iterations, dkLen)
Parameters:
Return type:

QByteArray

使用RFC 8018第5.2节中定义的PBKDF2算法派生密钥。

此函数接收datasalt,然后重复应用HMAC-X,其中X是algorithm。它在内部将中间结果连接到最终输出,直到至少计算了dkLen字节,并且每次需要连接时都会执行HMAC-X iterations次。执行HMAC-X的总次数取决于iterationsdkLenalgorithm,可以计算为iterations * ceil(dkLen / QCryptographicHash::hashLength(algorithm))

另请参阅

deriveKeyPbkdf1 QMessageAuthenticationCodeQCryptographicHash