PHP sha1() 函数
定义和用法
sha1() 函数计算字符串的 SHA-1 散列。
sha1() 函数使用美国 Secure Hash 算法 1。
来自 RFC 3174 的解释 - 美国 Secure Hash 算法 1:SHA-1 产生一个名为报文摘要的 160 位的输出。报文摘要可以被输入到一个可生成或验证报文签名的签名算法。对报文摘要进行签名,而不是对报文进行签名,这样可以提高进程效率,因为报文摘要的大小通常比报文要小很多。数字签名的验证者必须像数字签名的创建者一样,使用相同的散列算法。
提示:如需计算文件的 SHA-1 散列,请使用 sha1_file() 函数。
语法
sha1(string,raw)
参数 | 描述 |
---|---|
string | 必需。规定要计算的字符串。 |
raw | 可选。规定十六进制或二进制输出格式:
|
技术细节
返回值: | 如果成功则返回已计算的 SHA-1 散列,如果失败则返回 FALSE。 |
---|---|
PHP 版本: | 4.3.0+ |
更新日志: | 在 PHP 5.0 中,raw 参数变成可选的。 |
更多实例
实例 1
输出 sha1() 的结果:
<?php
$str = "Hello";
echo "The string: ".$str."<br>";
echo "TRUE - Raw 20 character binary format: ".sha1($str, TRUE)."<br>";
echo "FALSE - 40 character hex number: ".sha1($str)."<br>";
?>
$str = "Hello";
echo "The string: ".$str."<br>";
echo "TRUE - Raw 20 character binary format: ".sha1($str, TRUE)."<br>";
echo "FALSE - 40 character hex number: ".sha1($str)."<br>";
?>
运行实例 »
实例 2
输出 sha1() 的结果并对它进行测试:
<?php
$str = "Hello";
echo sha1($str);
if (sha1($str) == "f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0")
{
echo "<br>Hello world!";
exit;
}
?>
$str = "Hello";
echo sha1($str);
if (sha1($str) == "f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0")
{
echo "<br>Hello world!";
exit;
}
?>
运行实例 »
PHP String 参考手册
元卅
yua***@yuansasi.cn
参考地址
不推荐使用 sha1() 给密码加密。因为根据目前的计算机性能,很容易暴力破解通过 MD5、SHA1、SHA256 加密的信息。
要对安全加密,可以使用 PHP 5.5 之后有原生的密码 HASH 函数,或者使用 crypt() 函数。
元卅
yua***@yuansasi.cn
参考地址