ホームページ  >  記事  >  バックエンド開発  >  PHP 暗号化関数 - sha1() 関数暗号化のインスタンスの使用法

PHP 暗号化関数 - sha1() 関数暗号化のインスタンスの使用法

黄舟
黄舟オリジナル
2017-06-18 14:19:497556ブラウズ

PHP暗号化関数—sha1()関数暗号化

まず、sha1とは何なのかを紹介しましょう。

sha の正式名称は次のとおりです。 セキュア ハッシュ アルゴリズム (Secure Hash Algorithm) は、主にデジタル署名標準 (デジタル署名標準 DSS) で定義されているデジタル署名アルゴリズム DSA に適用されます。長さが 2^64 ビット未満のメッセージの場合、SHA1 は 160 ビットのメッセージ ダイジェストを生成します。メッセージを受信すると、このメッセージ ダイジェストを使用してデータの整合性を検証できます。送信プロセス中にデータが変更される可能性があり、その時点で異なるメッセージ ダイジェストが生成されます。 PHP が提供する sha1() 関数は SHA アルゴリズムを使用します。

前の 2 つの記事「PHP 暗号化関数 - crypt() 関数の暗号化」と「PHP 暗号化関数 - md5() 関数の暗号化」で、皆さんは暗号化についてある程度の理解ができたと思います。引き続き、MD5() 関数と同様の sha1() 関数アルゴリズムを紹介します。

sha1() 関数の構文形式は次のとおりです:

string sha1 ( string $str [, bool $raw_output = false ] )
Parameters Description
string 必須。計算する文字列を指定します。
はオプションです。 16 進数またはバイナリの出力形式を指定します。 TRUE - 生の 20 文字のバイナリ形式 FALSE - デフォルト。 40 文字の 16 進数

関数は、パラメータ raw_output が true の場合、20 桁の 2 進数を返します。デフォルトでは、raw_output は false です。

ここで強調したいのは、

shaの後の1はアラビア数字(123456)の1であり、多くの人はそれを文字とみなすでしょうが、それは文字です。アラビア数字、皆さんもここに注意して間違えないようにしましょう!

以下は sha1() 関数の例です。 具体的なコードは次のとおりです。

<?php
header("Content-Type:text/html; charset=utf-8");
$str = "中文网";
echo "字符串:".$str."<br>";
echo "TRUE - 原始 20 字符二进制格式:".sha1($str, TRUE)."<br>";
echo "FALSE - 40 字符十六进制数:".sha1($str)."<br>";
?>

出力結果は次のとおりです。

PHP 暗号化関数 - sha1() 関数暗号化のインスタンスの使用法

次の例は、sha1() と を出力した結果です。テスト:

<?php
header("Content-Type:text/html; charset=utf-8");
$str = "中文网";
echo sha1($str);
if (sha1($str) == "b1d5e6240057f21930892531def6597f135252ca ")
{
    echo "<br>I love 中文网!";
    exit;
}
?>

出力結果は次のとおりです:

PHP 暗号化関数 - sha1() 関数暗号化のインスタンスの使用法

次の例は、MD5 と SHA 暗号化操作の比較です。具体的なコードは次のとおりです:

<?php
header("Content-Type:text/html; charset=utf-8");
$str = "中文网";
echo "MD5的加密结果:".md5($str)."<br>";
echo "<br>";
echo "sha1的加密结果:".sha1($str)."<br>";
?>

出力結果は次のとおりです。

PHP 暗号化関数 - sha1() 関数暗号化のインスタンスの使用法PHP の主要な 3 つのデータ暗号化関数これで、crypt()、md5()、sha1() の紹介は完了です。次の記事では、PHP 暗号化ライブラリ、Mcrypt と Mhash の 2 つの拡張ライブラリを紹介します。


【関連する推奨事項】

1. 関連トピックの推奨事項:「

PHP暗号化関数

2.

PHP暗号化関数—crypt()関数の暗号化使用例

3.

PHP暗号化関数— md5()関数暗号化の使用例

4.

PHP暗号化技術ビデオチュートリアル

以上がPHP 暗号化関数 - sha1() 関数暗号化のインスタンスの使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。