Heim > Backend-Entwicklung > PHP-Tutorial > PHP berechnet den MD5-Hash der Zeichenfolge

PHP berechnet den MD5-Hash der Zeichenfolge

黄舟
Freigeben: 2023-03-16 22:22:01
Original
1590 Leute haben es durchsucht

Beispiel

Berechnen Sie den MD5-Hash der Zeichenfolge „Hallo“:

<?php
$str = "Hello";
echo md5($str);
?>
Nach dem Login kopieren

Definition und Verwendung

Die Funktion md5() berechnet den MD5-Hash der Zeichenfolge .

Die md5()-Funktion nutzt RSA-Datensicherheit, einschließlich des MD5-Message-Digest-Algorithmus.

Erklärung aus RFC 1321 – MD5-Message-Digest-Algorithmus: Der MD5-Message-Digest-Algorithmus nimmt Informationen beliebiger Länge als Eingabewert und wandelt sie in einen 128-Bit langen „Fingerabdruck-Informationen“ oder „Nachrichtenzusammenfassung“-Wert um um diesen Eingabewert und den konvertierten Wert als Ergebnis darzustellen. Der MD5-Algorithmus ist in erster Linie für digitale Signaturanwendungen konzipiert, bei denen größere Dateien mit einem öffentlichen Schlüssel in einem kryptografischen System wie RSA verschlüsselt werden (durch Festlegen eines privaten Schlüssels), bevor sie auf sichere Weise komprimiert werden.

Um den MD5-Hash einer Datei zu berechnen, verwenden Sie die Funktion md5_file().

Syntax

md5(string,raw)
Nach dem Login kopieren

Parameter         Beschreibung

Zeichenfolge    Erforderlich. Gibt die zu berechnende Zeichenfolge an.  

roh                                                      Gibt das hexadezimale oder binäre Ausgabeformat an:

                      TRUE – rohes 16-stelliges Binärformat                                                                                                                                                                         zur Ausgabe im Hexadezimal- oder Binärformat: 32-stellige Hexadezimalzahl

Technische Details

Rückgabewert:                           Gibt bei Erfolg den berechneten MD5-Hash zurück, andernfalls wird FALSE zurückgegeben.

PHP-Version: 4+

Änderungsprotokoll: In PHP 5.0 Rohparameter werden optional.

Weitere Beispiele

Instanz 1

Das Ergebnis von md5() ausgeben:

Instanz 2
<?php 
$str = "Hello"; 
echo "The string: ".$str."<br>"; 
echo "TRUE - Raw 16 character binary format: ".md5($str, TRUE)."<br>"; 
echo "FALSE - 32 character hex number: ".md5($str)."<br>"; 
?>
Nach dem Login kopieren

Geben Sie das Ergebnis von md5() aus und testen Sie es:

<?php
$str = "Hello";
echo md5($str);

if (md5($str) == "8b1a9953c4611296a827abf8c47804d7")
{
echo "<br>Hello world!";
exit;
}
?>
Nach dem Login kopieren

一般来说,一个提供会员注册的网站必定需要采集用户的密码,如何保存用户密码就是个问题。我们当然不能将密码以明文的方式储存在数据库中,因为这样的话,一般的管理员就可以查看到用户密码,显然对用户来说是件相当危险的事情。

那如何解决这个问题呢,我们可以采取这样的策略。

首先介绍一下PHP中MD5函数的使用方法:

<?php  
$pswd1=md5("cenusdesign");  
echo $pswd1;     //运行结果为:fc60ec37d1c08d5b0fb67a8cd934d5ba  

$pswd2=md5("Cenusdesign");  
echo $pswd2;     //运行结果为:067577d9fc109c80538c81d6f02bd293  
?>
Nach dem Login kopieren


    显然,经过md5加密后,原本“cenusdesign”转变成了一组32位的字符串,而且,即使是一个字母的大小写变化,这组字符串就会发生巨大的变化。 

    Cenus Design建议把用户注册时,将密码首先经过MD5转换,然后将转换加密后的数据库。在用户登陆时,也将密码先进行MD5转化,再和数据库中那组经过MD5加密的字符串进行比较。这样,就可以做到在不知道用户确切密码的情况下完成密码的比对操作。 

Das obige ist der detaillierte Inhalt vonPHP berechnet den MD5-Hash der Zeichenfolge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage