Heim >Backend-Entwicklung >PHP-Tutorial >Installation und Beispiele der PHP-Verschlüsselungserweiterungsbibliothek Mcrypt
PHP-Verschlüsselungserweiterungsbibliotheken umfassen Mcrypt und Mhash. Unter ihnen kann die Mcrypt-Erweiterungsbibliothek Verschlüsselungs- und Entschlüsselungsfunktionen implementieren
Eine kurze Einführung in mcrypt 🎜>PHP-Programmierer Beim Schreiben von Codeprogrammen ist neben der Gewährleistung der hohen Leistung des Codes auch die Sicherheit des Programms ein sehr wichtiger Punkt. Zusätzlich zu mehreren eigenen Verschlüsselungsfunktionen verfügt PHP auch über die umfassenderen PHP-Verschlüsselungserweiterungsbibliotheken Mcrypt und Mhash.
Unter anderem kann die Mcrypt-Erweiterungsbibliothek Verschlüsselungs- und Entschlüsselungsfunktionen realisieren, das heißt, sie kann Klartext verschlüsseln und Chiffretext wiederherstellen.
mcrypt ist eine wichtige Erweiterungsbibliothek zur Verschlüsselungsunterstützung in PHP. In Linux-Umgebungen ist diese Bibliothek standardmäßig nicht aktiviert. In der Windows-Umgebung: PHP>=5.3 ist die mcrypt-Erweiterung standardmäßig aktiviert.
1. Installation der Mcrypt()-Bibliothek
mcypt ist eine sehr leistungsstarke Erweiterungsbibliothek für Verschlüsselungsalgorithmen. Mcrypt wird während des Standard-PHP-Installationsprozesses nicht installiert, aber die Datei libmcrypt.dll ist im PHP-Home-Verzeichnis enthalten, sodass wir nur das Semikolon vor extension=php_mcrypt.dll in dieser Zeile in der PHP-Konfigurationsdatei entfernen müssen. , und starten Sie dann den Server neu, um diese Erweiterungsbibliothek zu verwenden.
Unterstützte Algorithmen und Verschlüsselungsmodi
Die Mcrypt-Bibliothek unterstützt mehr als 20 Verschlüsselungsalgorithmen und 8 Verschlüsselungsmodi, die über die Funktionen
mcrypt_list_algorithms() und mcrypt_list_modes( ) Zeige [1] Verschlüsselungsalgorithmus Die von Mcrypt unterstützten Algorithmen sind:
cast-128
gost
rijndael-128
twofish
arcfour
cast-256
loki97
rijndael-192
saferplus
wake
blowfish-compat
des
rijndael-256
serpent
xtea
blowfish
enigma
rc2
Tripledes
Verschlüsselungsmodus
Die von Mcrypt unterstützten Verschlüsselungsmodi sind:
cbc
cfb
ctr
ecb
ncfb
nofb
ofb
stream
Diese Algorithmen und Modi sollten durch Konstanten in der Anwendung dargestellt werden. Fügen Sie beim Schreiben die Präfixe MCRYPT_ und MCRYPT_ hinzu, um sie darzustellen, wie im folgenden
Verschlüsselter Chiffretext: 鍍??]??q???L Lachen??"? ?
Wiederherstellen: Mein Name ist? Ich werde es gewöhnlichen Leuten nicht sagen!
f35d6e602fd7d0f0edfa6f7d103c1b57Aus dem Beispiel Es ist ersichtlich, dass vor der Verwendung der PHP-Verschlüsselungserweiterungsbibliothek Mcrypt zum Verschlüsseln und Entschlüsseln von Daten zunächst ein Initialisierungsvektor erstellt wird, der als iv bezeichnet wird. Der Initialisierungsvektor wird als $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes) erstellt. ,MCRYPT_RAND); Es sind zwei Parameter erforderlich: size gibt die Größe von iv an; der Wert MCRYPT_RAND ist die Systemzufallszahl
5bdf4c78156c7953567bb5a0aef2fc53 ; Die fünf Parameter dieser Funktion sind wie folgt: Verschlüsselungsalgorithmus, Schlüssel – Schlüssel, Daten (str) – zu verschlüsselnde Daten, Modus – Algorithmusmodus, iv – Initialisierungsvektor
23889872c2e8594e0f446a471a78ec4c ($cipher,$key,$str_encrypt ,$modes,$iv); Die Parameter dieser Funktion und der Verschlüsselungsfunktion<?php $str = "我的名字是?一般人我不告诉他!"; //加密内容 $key = "key:111"; //密钥 $cipher = MCRYPT_DES; //密码类型 $modes = MCRYPT_MODE_ECB; //密码模式 $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);//初始化向量 echo "加密明文:".$str."<p>"; $str_encrypt = mcrypt_encrypt($cipher,$key,$str,$modes,$iv); //加密函数 echo "加密密文:".$str_encrypt." <p>"; $str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv); //解密函数 echo "还原:".$str_decrypt; ?>sind nahezu identisch. Der einzige Unterschied besteht in den Daten, was bedeutet, dass Daten die Daten sind das muss entschlüsselt werden $str_encrypt, nicht die Originaldaten $str 🎜>Hinweis: Die Parameter Chiffre, Schlüssel und Modus in den Verschlüsselungs- und Entschlüsselungsfunktionen müssen eins zu eins übereinstimmen, sonst können die Daten nicht wiederhergestellt werden
Zusammenfassung
mcrypt-Bibliothekskonstanten
Die Mcrypt-Bibliothek unterstützt mehr als 20 Verschlüsselungsalgorithmen. Und 8 Verschlüsselungsmodi können über die Funktionen mcrypt_list_algorithms() und mcrypt_list_modes() angezeigt werden.
Das obige ist der detaillierte Inhalt vonInstallation und Beispiele der PHP-Verschlüsselungserweiterungsbibliothek Mcrypt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!