Crypter et décrypter les données entre PHP et JavaScript
Lorsque vous travaillez avec des données sensibles, il est crucial de mettre en œuvre des mécanismes de cryptage pour maintenir leur confidentialité. Dans cet article, nous allons explorer comment chiffrer des données en PHP et les déchiffrer à l'aide de la bibliothèque CryptoJS en JavaScript.
Cryptage en PHP
PHP fournit diverses fonctions de chiffrement , y compris mcrypt_encrypt() et openssl_encrypt(). Dans notre cas, nous utiliserons la fonction openssl_encrypt() d'OpenSSL pour tirer parti de sa prise en charge de divers algorithmes de chiffrement.
Exemple de chiffrement PHP :
<?php $text = "Data to encrypt"; $key = "Encryption key"; $msgEncrypted = openssl_encrypt($text, 'aes-256-cbc', $key, true, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND)); $msgBase64 = trim(base64_encode($msgEncrypted)); echo "<h2>PHP</h2>"; echo "<p>Encrypted:</p>"; echo $msgEncrypted; echo "<p>Base64:</p>"; echo $msgBase64; ?>
Décryptage en JavaScript
Remplacez ce qui suit dans le champ fourni exemple ::
<textarea class="encrypted-data" cols="80" rows="5">&#x3C;?php echo $msgBase64 ?&#x3E;</textarea>
CryptoJS fournit une fonction AES.decrypt() pratique pour décrypter les données cryptées à l'aide de l'algorithme AES. Cette fonction nécessite une phrase secrète et un texte chiffré.
Exemple de décryptage JavaScript :
<script> var encryptedData = document.querySelector(".encrypted-data").value; var key = 'Encryption key'; const decrypted = CryptoJS.AES.decrypt(encryptedData, key); console.log(decrypted.toString(CryptoJS.enc.Utf8)); </script>
Conclusion
En implémentant Avec les techniques ci-dessus, vous pouvez sécuriser efficacement vos données en les chiffrant en PHP et en les déchiffrant en toute sécurité en JavaScript. Gardez à l'esprit que la sécurisation des données nécessite de prendre en compte des facteurs supplémentaires tels que la gestion des clés, le stockage sécurisé et la modélisation des menaces.
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!