Maison > Article > développement back-end > Quelle est la méthode de cryptage et de décryptage php ?
Comment implémenter le cryptage et le décryptage PHP : 1. Vous pouvez utiliser la méthode "openssl_encrypt" pour implémenter le cryptage ; 2. Utilisez la méthode "openssl_decrypt" pour implémenter le décryptage.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
Articles connexes recommandés : "Comment crypter et décrypter PHP ? Méthodes de cryptage et de décryptage PHP》《Quels sont les outils de cryptage et de décryptage PHP》《Classes de traitement de cryptage et de décryptage implémentées par PHP》
Quelles sont les méthodes de cryptage et de décryptage de PHP ?
php implémente le cryptage et le décryptage AES
En php, nous utilisons openssl_encrypt pour implémenter le cryptage et openssl_decrypt pour implémenter le décryptage
1 : Explication détaillée de la méthode openssl_encrypt :
openssl_encrypt($data, $method, $key, $options = 0, $iv = "", &$tag = NULL, $aad = "", $tag_length = 16)
Paramètres :
1.$data : crypté brut text
2.$method : Méthode de cryptage : Vous pouvez obtenir les méthodes de cryptage via openssl_get_cipher_methods()
3.$passwd : Clé de cryptage [mot de passe]
4.$options : Options de format de données (facultatif) [Les options sont : ] : 0, OPENSSL_RAW_DATA=1, OPENSSL_ZERO_PADDING=2, OPENSSL_NO_PADDING=3
5.$iv : Vecteur d'initialisation dense (facultatif), attention : si la méthode est DES−ECB, iv n'a pas besoin d'être renseigné
6.$tag : Transmettez la balise d'authentification référencée lors de l'utilisation du mode de chiffrement AEAD (GCM ou CCM) (facultatif)
7.$aad : Données d'authentification supplémentaires. (Facultatif)
8.$tag_length : Vérifiez la longueur de la balise. En mode GCM, sa plage est de 4 à 16 (facultatif)
2 : Explication détaillée de la méthode openssl_decrypt
openssl_decrypt($data, $method, $password, $options = 1, $iv = "", $tag = "", $aad = "")
Paramètres :
1.$data : Le message crypté à déchiffrer.
2.$method : Méthode de décryptage : Vous pouvez obtenir les méthodes de décryptage via openssl_get_cipher_methods()
3.$passwd : Clé de décryptage [mot de passe]
4.$options : Options de format de données (facultatif) [Les options sont :] : 0, OPENSSL_RAW_DATA=1, OPENSSL_ZERO_PADDING=2, OPENSSL_NO_PADDING=3
5.$iv : Vecteur d'initialisation dense (facultatif), attention : si la méthode est DES−ECB, iv n'a pas besoin d'être renseigné
6 .$ tag : Balise d'authentification en mode mot de passe AEAD (facultatif)
7.$aad : Données d'authentification supplémentaires. (Facultatif)
Trois : implémenter le cryptage et le décryptage AES
1 : cryptage AES
// 要加密的字符串 $data = 'test'; // 密钥 $key = '123456'; // 加密数据 'AES-128-ECB' 可以通过openssl_get_cipher_methods()获取 $encrypt = openssl_encrypt($data, 'AES-128-ECB', $key, 0); echo (($encrypt));
2 : décryptage AES
//解密字符串 $encrypt = '***'; //密钥 $key = '123456'; // 解密数据 $decrypt = openssl_decrypt($encrypt, 'AES-128-ECB', $key, 0); echo $decrypt;
Selon ce qui précède, vous pouvez implémenter la fonction de cryptage et de décryptage AES
Apprentissage recommandé : "PHP tutoriel vidéo 》
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!