PHP 中的 crypt() 函数
phpprogrammingserver side programming
crypt() 函数用于使用 DES、Blowfish 或 MD5 等算法对字符串进行哈希处理。
注意 −此函数在不同的操作系统上表现不同。
以下是与 crypt() 函数一起使用的一些常量。
[CRYPT_STD_DES] - 基于 DES 的标准哈希,带有字母表"./0-9A-Za-z"中的两个字符 salt 。
[CRYPT_EXT_DES] - 基于 DES 的扩展哈希,带有九个字符的 salt ,由下划线后跟 4 个字节的迭代计数和 4 个字节的 salt 组成。
[CRYPT_MD5] - MD5 哈希,带有以 $1$ 开头的 12 个字符 salt
[CRYPT_BLOWFISH] - Blowfish 哈希,带有以 $2a$、$2x$ 或$2y$、两位数成本参数"$"和字母表中的 22 个字符"./0-9A-Za-z"。
[CRYPT_SHA_256] - SHA-256 哈希, salt 值为 16 个字符,以 $5$ 开头。
[CRYPT_SHA_512] - SHA-512 哈希, salt 值为 16 个字符,以 $6$ 开头。
语法
crypt(str, salt)
参数
str − 要进行哈希处理的字符串。必填。
salt − 用于哈希计算的 salt 字符串。可选。
返回
crypt() 函数返回编码字符串或少于 13 个字符的字符串,并且保证在失败时与 salt 不同
下面是一个例子 −
示例
<?php if (CRYPT_STD_DES == 1) { echo "DES supported = ".crypt('demo','st')."
"; } else { echo "DES not supported!"; } ?>
以下是输出 −
输出
DES supported = st7zBedJadRn2