Maison  >  Article  >  développement back-end  >  php calcule le hachage MD5 de la chaîne

php calcule le hachage MD5 de la chaîne

黄舟
黄舟original
2017-11-02 13:22:291521parcourir

Exemple

Calculer le hachage MD5 de la chaîne "Bonjour" :

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

Définition et utilisation

La fonction md5() calcule le hachage MD5 de la chaîne .

La fonction md5() utilise la sécurité des données RSA, y compris l'algorithme de résumé de message MD5.

Explication de la RFC 1321 - Algorithme de résumé de message MD5 : L'algorithme de résumé de message MD5 prend des informations de n'importe quelle longueur comme valeur d'entrée et les convertit en une valeur d'"informations d'empreinte digitale" ou de "Résumé de message" de 128 bits en représentent cette valeur d'entrée et la valeur convertie comme résultat. L'algorithme MD5 est principalement conçu pour les applications de signature numérique dans lesquelles les fichiers plus volumineux sont cryptés à l'aide d'une clé publique dans un système cryptographique tel que RSA (effectué en définissant une clé privée) avant d'être compressés de manière sécurisée.

Pour calculer le hachage MD5 d'un fichier, utilisez la fonction md5_file().

Syntaxe

md5(string,raw)

Paramètres         Description

chaîne    Obligatoire. Spécifie la chaîne à calculer.  

cru                                                   Spécifiez le format de sortie hexadécimal ou binaire :

True -Le format binaire original à 16 caractères

False -par défaut. Nombre hexadécimal de 32 caractères

Détails techniques

Valeur de retour :                           Renvoie le hachage MD5 calculé en cas de succès, sinon renvoie FALSE.

Version PHP : 4+

Journal des modifications : Dans PHP 5.0, paramètres bruts deviennent facultatifs.

Plus d'exemples

Instance 1

Afficher le résultat de md5() :

<?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>"; 
?>

Instance 2

Sortez le résultat de md5() et testez-le :

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

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

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

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

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

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

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


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

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn