Maison  >  Article  >  développement back-end  >  Fonction de chiffrement PHP : exemple d'utilisation du chiffrement de la fonction crypt()

Fonction de chiffrement PHP : exemple d'utilisation du chiffrement de la fonction crypt()

黄舟
黄舟original
2017-05-25 16:08:264584parcourir

Fonction de chiffrement PHP — chiffrement de la fonction crypt()

Avant d'introduire la fonction de chiffrement, introduisons d'abord le principe du chiffrement des données : il s'agit de fichiers ou les données sont traitées selon un certain algorithme, les transformant en un morceau de code illisible, généralement appelé « texte chiffré ». Grâce à cette méthode, l'objectif de protection des données contre le vol et la lecture illégaux est atteint !

Les principales fonctions permettant de chiffrer des données en PHP sont : crypt(), md5() et sha1(), ainsi que les bibliothèques d'extensions de chiffrement Mcrpyt et Mash. Dans cet article, nous présentons d’abord l’utilisation de la fonction crpyt() pour le cryptage !

La fonction crypt() peut compléter la fonction de cryptage unidirectionnel, qui est un hachage de chaîne unidirectionnel !

Le format de la syntaxe de la fonction crypt() est le suivant :

string crypt ( string $str [, string $salt ] )
算法 salt长度
CRYPT_STD_DES 2-character(默认)
CRYPT_EXT_DES 9-character
CRYPT_MD5  12-character(以$开头)
CRYPT_BLOWFISH  16-character(以$开头)

Voici une explication :

Par défaut, PHP utilise un ou deux caractères de chaîne d'interférence DES Si le système utilise MD5, alors 12 caractères seront utilisés. Vous pouvez vérifier la longueur de la chaîne d'interférence actuellement utilisée via la variable CRYPT_SALT_LENGTH !

Utilisation de l'instance de fonction Crypt() :

Utilisons un exemple ci-dessous pour que ce soit clair pour tout le monde. Le code spécifique est le suivant :

<?php
header("Content-Type:text/html; charset=utf-8");
$atr = "php中文网 www.php.cn";  //声明字符串变量$atr
echo "加密之前atr的值为:".$atr;
$atr1 = crypt($atr);              //对变量$str 加密
echo "<br>加密之后str的值为:".$atr1; //输出加密后的变量
?>
Les résultats de sortie sont les suivants :

Fonction de chiffrement PHP : exemple dutilisation du chiffrement de la fonction crypt()

Après avoir exécuté l'exemple ci-dessus, continuez à actualiser le navigateur, vous constaterez que les résultats de cryptage générés à chaque fois sont différent, alors que dois-je faire ? Porter des jugements sur les données cryptées devient un problème. La fonction crypt() est un cryptage unidirectionnel, le texte chiffré ne peut pas être restauré en texte brut et les données après cryptage sont différentes à chaque fois. C'est le problème que le paramètre salt doit résoudre.

La fonction crypt() utilise le paramètre salt pour crypter le texte en clair. Lors du jugement, les informations de sortie sont à nouveau cryptées en utilisant le même paramètre salt, et le jugement est effectué en comparant les résultats après les deux cryptages !

L'exemple suivant vérifie le nom d'utilisateur saisi. Le code spécifique est le suivant :

<?php
header("Content-Type:text/html; charset=utf-8");
$link=mysqli_connect("localhost","root","");
$db_selected = mysqli_select_db($link,"my_db");
?>
    <form name="form1" action="" method="post">
    <input type="text" name="username" id="username" size="15">
    <input type="submit" name="Submit" value="检测">
    </form>
<?php
if(isset($_POST["username"])!=""){ 
    $usr=crypt(isset($_POST["username"]),"tm");             //对用户名进行加密
    $sql = "select * from tb_user where user = &#39;".$usr."&#39;";//生成查询语句
    $rst = mysqli_query($link,$sql);                          //执行语句,返回结果集
    if($rst){
        echo "用户名存在";
    }else{
        echo "用户名可以使用";
    }
}
?>
Le résultat de sortie est le suivant :

Fonction de chiffrement PHP : exemple dutilisation du chiffrement de la fonction crypt()

Suivant Dans cet article, nous présenterons comment utiliser la fonction MD5() pour le cryptage. Pour plus de détails, veuillez lire «

Fonction de cryptage PHP—Cryptage de la fonction md5() » !

[Recommandations associées]

1. Sujets connexes recommandés : "

Fonction de cryptage PHP"

2.

Fonction de cryptage PHP—exemple d'utilisation de cryptage de la fonction md5()

3.

Fonction de cryptage PHP – Utilisation de l'instance de cryptage de la fonction sha1()

4.

Tutoriel vidéo sur la technologie de cryptage PHP

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