(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
mhash_keygen_s2k — 生成密钥
此函数自 PHP 8.1.0 起已弃用。强烈建议不要依赖此函数。
$algo
,$password
,$salt
,$length
根据给定的 algo
生成密钥,使用用户提供的 password
。
这是 OpenPGP 文档中指定的加盐 S2K 算法(» RFC 2440)。
请记住,用户提供的密码并不真正适合用作加密算法中的密钥,因为用户通常选择他们可以在键盘上键入的密钥。这些密码每个字符仅使用 6 到 7 位(或更少)。强烈建议对用户提供的密钥进行某种转换(如本函数)。
algo
用于创建密钥的哈希 ID。MHASH_hashname
常量之一。
password
用户提供的密码。
salt
对于您生成的每个密钥都必须不同且足够随机,以便创建不同的密钥。因为在检查密钥时必须知道 salt
,所以将其附加到密钥是一个好主意。Salt 的长度固定为 8 字节,如果提供的字节数少于 8 字节,则将用零填充。
length
密钥长度(以字节为单位)。
返回生成的密钥作为字符串,或在发生错误时返回false
。