Heim > Artikel > Backend-Entwicklung > PHP-Verschlüsselungsfunktion – Anwendungsbeispiel für die Verschlüsselung der Funktion crypt()
PHP-Verschlüsselungsfunktion – crypt()-Funktionsverschlüsselung
Bevor wir die Verschlüsselungsfunktion vorstellen, stellen wir zunächst das Prinzip der Datenverschlüsselung vor: Es handelt sich um Dateien oder Daten werden nach einem bestimmten Algorithmus verarbeitet und in einen unlesbaren Code umgewandelt, der üblicherweise als „Chiffretext“ bezeichnet wird. Durch diese Methode wird der Zweck erreicht, Daten vor illegalem Diebstahl und Lesen zu schützen!
Die Hauptfunktionen, die Daten in PHP verschlüsseln können, sind: crypt(), md5() und sha1() sowie die Verschlüsselungserweiterungsbibliotheken Mcrpyt und Mash. In diesem Artikel stellen wir zunächst die Verwendung der crpyt()-Funktion zur Verschlüsselung vor!
crypt()-Funktion kann die Einweg-Verschlüsselungsfunktion vervollständigen, bei der es sich um einen Einweg-String-Hash handelt!
Das Syntaxformat der crypt()-Funktion lautet wie folgt: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(以$开头) |
Hier ist eine Erklärung:
Standardmäßig verwendet PHP ein oder zwei Zeichen des DES-Interferenzstrings. Wenn das System MD5 verwendet, werden 12 Zeichen verwendet. Sie können die Länge des aktuell verwendeten Interferenzstrings über die Variable CRYPT_SALT_LENGTH überprüfen.
Verwendung der Crypto()-Funktionsinstanz:
Um es auf einen Blick zu verdeutlichen, sehen wir uns das folgende Beispiel an:<?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; //输出加密后的变量 ?>Die Ausgabeergebnisse lauten wie folgt: Nachdem Sie das obige Beispiel ausgeführt haben, aktualisieren Sie den Browser ständig. Sie werden feststellen, dass die Verschlüsselungsergebnisse jedes Mal generiert werden sind unterschiedlich, was soll ich also tun? Die Beurteilung verschlüsselter Daten wird zum Problem. Die Funktion crypt() ist eine Einwegverschlüsselung, der Chiffretext kann nicht in Klartext wiederhergestellt werden und die Daten nach der Verschlüsselung sind jedes Mal anders. Dies ist das Problem, das der Salt-Parameter lösen soll. Die Funktion crypt() verwendet den Salt-Parameter, um den Klartext zu verschlüsseln. Bei der Beurteilung werden die Ausgabeinformationen erneut mit demselben Salt-Parameter verschlüsselt und die Beurteilung erfolgt durch Vergleich der Ergebnisse nach den beiden Verschlüsselungen! Das folgende Beispiel überprüft den eingegebenen Benutzernamen. Der spezifische Code lautet wie folgt:
<?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 = '".$usr."'";//生成查询语句 $rst = mysqli_query($link,$sql); //执行语句,返回结果集 if($rst){ echo "用户名存在"; }else{ echo "用户名可以使用"; } } ?>Das Ausgabeergebnis lautet wie folgt:
Als nächstes stellen wir vor, wie Sie die MD5()-Funktion zur Verschlüsselung verwenden. Weitere Informationen finden Sie unter „
PHP-Verschlüsselungsfunktion – MD5()-Funktionsverschlüsselung“!
[Verwandte Empfehlungen] 1. Empfohlene verwandte Themen: „PHP-Verschlüsselungsfunktion“
2.PHP-Verschlüsselungsfunktion – Beispiel für die Verwendung der md5()-Funktionsverschlüsselung
3.PHP-Verschlüsselungsfunktion – Instanzverwendung der sha1()-Funktionsverschlüsselung
4.Video-Tutorial zur PHP-Verschlüsselungstechnologie
Das obige ist der detaillierte Inhalt vonPHP-Verschlüsselungsfunktion – Anwendungsbeispiel für die Verschlüsselung der Funktion crypt(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!