توابع sha1() در PHP

مثال

حساب hash SHA-1 رشته "Hello":

<?php
$str = "Shanghai";
echo sha1($str);
?>

运行实例

تعریف و استفاده

توابع sha1() hash SHA-1 یک رشته را محاسبه می‌کند.

توابع sha1() از الگوریتم hash امنیت USA SHA-1 استفاده می‌کند.

توضیحات از RFC 3174 - الگوریتم hash امنیت USA SHA-1 یک خروجی 160 بیتی به نام مختصر پیام تولید می‌کند. مختصر پیام می‌تواند به یک الگوریتم امضای پیام قابل تولید یا تأیید امضا پیام وارد شود. امضای مختصر پیام به جای امضای پیام، می‌تواند بهره‌وری فرآیند را افزایش دهد، زیرا اندازه مختصر پیام معمولاً بسیار کوچکتر از پیام است. تأییدکننده امضای دیجیتال باید مانند ایجاد‌کننده امضای دیجیتال از همان الگوریتم hash استفاده کند.

提示:如需计算文件的SHA-1散列,请使用sha1_file()函数。

语法

sha1(string,raw)
参数 描述
string 必需。规定要计算的字符串。
raw

可选。规定十六进制或二进制输出格式:

  • TRUE - 原始20字符二进制格式
  • FALSE - 默认。40字符十六进制数

技术细节

返回值: 如果成功则返回已计算的SHA-1散列,如果失败则返回FALSE。
PHP版本: 4.3.0+
更新日志: 在PHP 5.0中,raw 参数变成可选的。

更多实例

例子1

输出sha1()的结果:

<?php
$str = "Shanghai";
echo "字符串:".$str."<br>";
echo "TRUE - 原始20字符二进制格式:".sha1($str, TRUE)."<br>";
echo "FALSE - 40字符十六进制数:".sha1($str)."<br>";
?>

运行实例

例子2

输出sha1()的结果并进行测试:

<?php
$str = "Shanghai";
echo sha1($str);
if (sha1($str) == "b99463d58a5c8372e6adbdca867428961641cb51")
  {
  echo "<br>I love Shanghai!";
  exit;
  }
?>

运行实例