Wenn Client und Server kommunizieren, kommt es sehr häufig vor, dass eine ID als URL-Parameter hin und her übergeben wird. Unter der Annahme, dass das aktuelle Unternehmen nur über diese ID-Kennung verfügt, ist eine etwas sicherere Kommunikation erforderlich, um diese ID zu verschlüsseln und zu übertragen und sie anschließend an den Server zu entschlüsseln. Hierfür benötigen Sie einen vom Server geheim gehaltenen Schlüssel, der zur Ver- und Entschlüsselung dient. In diesem Artikel wird hauptsächlich vorgestellt, wie PHP benutzerdefinierte Schlüssel zum Verschlüsseln und Entschlüsseln von Daten verwendet. Es geht um die Implementierung von Verschlüsselungs- und Entschlüsselungsfunktionen für die Zeichenfolgenkonvertierung, das Abfangen und andere Vorgänge. Ich hoffe, es kann jedem helfen.
Die Verschlüsselungs- und Entschlüsselungsmethoden lauten wie folgt: $str ist die Zeichenfolge, die verschlüsselt und entschlüsselt werden muss, $key ist ein von Ihnen selbst definierter Schlüssel
// 加密 function encryptStr($str, $key){ $block = mcrypt_get_block_size('des', 'ecb'); $pad = $block - (strlen($str) % $block); $str .= str_repeat(chr($pad), $pad); $enc_str = mcrypt_encrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB); return base64_encode($enc_str); } // 解密 function decryptStr($str, $key){ $str = base64_decode($str); $str = mcrypt_decrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB); $block = mcrypt_get_block_size('des', 'ecb'); $pad = ord($str[($len = strlen($str)) - 1]); return substr($str, 0, strlen($str) - $pad); }
Es ist erwähnenswert:
Wenn es auf das ID-Szenario in der URL angewendet wird, handelt es sich nach der Verschlüsselung um eine Base64-Codierung. Es wird empfohlen, urlencode()
den Einfluss von zu entfernen + Zeichen.
Verwandte Empfehlungen:
PHP-String-Verschlüsselung und Entschlüsselung, gemeinsame Nutzung des Implementierungsprozesses
MySQL-Funktionen zur Verschlüsselung und Entschlüsselung
Tutorial zur Verwendung verschiedener Methoden der PHP-Verschlüsselung und -Entschlüsselung
Das obige ist der detaillierte Inhalt vonWie verwendet PHP einen benutzerdefinierten Schlüssel zum Ver- und Entschlüsseln von Daten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!