📜  PHP | md5()、sha1()、hash() 函数(1)

📅  最后修改于: 2023-12-03 15:33:34.181000             🧑  作者: Mango

PHP | md5()、sha1()、hash() 函数

在 PHP 中,加密算法是不可分割的一部分。加密是通过特定的算法将明文转化为密文,以保证数据的安全性。PHP 提供了多种加密算法,其中 md5()、sha1() 和 hash() 函数是最常用的加密函数。

md5() 函数

md5() 函数以字符串形式返回通过 MD5 加密算法加密后的输入。MD5 加密算法是一种半可逆算法,也就是说在巨大的密文空间内,不同的明文可能会生成相同的密文。

用法
string md5 ( string $str [, bool $raw_output = FALSE ] )
示例
$plain_text = 'My Password';
$encrypted_text = md5($plain_text);
echo $encrypted_text; // 输出 4bc841d32e38432b5c3058f14d9e6234
参数
  • str: 要加密的字符串。
  • raw_output: 如果为 TRUE,则返回二进制数据,否则返回小写字母的十六进制字符串。默认为 FALSE
sha1() 函数

sha1() 函数返回使用 SHA1 算法加密后的字符串。SHA1 加密算法是一种单向不可逆算法,也就是说明文无法从密文中推出,但是同样的明文会产生同样的密文。

用法
string sha1 ( string $str [, bool $raw_output = FALSE ] )
示例
$plain_text = 'My Password';
$encrypted_text = sha1($plain_text);
echo $encrypted_text; // 输出 014d870ebc981f3aa21afdbad93f06f2e6e3c9b5
参数
  • str: 要加密的字符串。
  • raw_output: 如果为 TRUE,则返回二进制数据,否则返回小写字母的十六进制字符串。默认为 FALSE
hash() 函数

hash() 函数返回使用指定算法加密后的字符串。该函数既可以用于加密字符串,也可以用于哈希文件,并返回相应的哈希值。

用法
string hash ( string $algo , string $data [, bool $raw_output = false ] )
示例
$plain_text = 'My Password';
$encrypted_text = hash('sha256', $plain_text);
echo $encrypted_text; // 输出 b8f26e7c7f1fab9e409678b571f03fae258320d343166584a720163dcd7a11c1
参数
  • algo: 所使用的加密算法。支持的算法包括 sha256、sha512、md5 等。
  • data: 要加密或哈希的字符串或文件名。
  • raw_output: 如果为 TRUE,则返回二进制数据,否则返回小写字母的十六进制字符串。默认为 FALSE
总结

以上是 PHP 中常用的加密函数。在实际应用中,为了保证数据的安全性,应根据实际需求使用更加安全的加密算法,避免出现安全漏洞。