Maison > Article > développement back-end > Comment utiliser PHP pour un cryptage et un décryptage fiables ?
Comment utiliser PHP pour un cryptage et un décryptage fiables ?
À l’ère numérique d’aujourd’hui, la sécurité des données est devenue de plus en plus importante. Pour certaines informations sensibles, telles que les mots de passe des utilisateurs, les numéros de carte de crédit, etc., nous ne pouvons pas simplement les stocker dans la base de données. Au lieu de cela, nous devons chiffrer ces informations à l’aide d’algorithmes de chiffrement pour protéger leur sécurité. PHP est un langage de script côté serveur populaire qui offre de riches capacités de cryptage et de décryptage. Apprenons ensuite comment utiliser PHP pour un cryptage et un déchiffrement fiables.
// 加密 function encrypt($data, $key) { $iv = openssl_random_pseudo_bytes(openssl_cipher_iv_length('AES-256-CBC')); $encrypted = openssl_encrypt($data, 'AES-256-CBC', $key, 0, $iv); return base64_encode($iv.$encrypted); } // 解密 function decrypt($data, $key) { $data = base64_decode($data); $iv_length = openssl_cipher_iv_length('AES-256-CBC'); $iv = substr($data, 0, $iv_length); $encrypted = substr($data, $iv_length); return openssl_decrypt($encrypted, 'AES-256-CBC', $key, 0, $iv); } // 使用示例 $key = 'your_secret_key'; $data = 'Hello, world!'; $encryptedData = encrypt($data, $key); echo $encryptedData; // 输出加密后的数据 $decryptedData = decrypt($encryptedData, $key); echo $decryptedData; // 输出解密后的数据
// 生成密钥对 $keyPair = openssl_pkey_new(array( 'private_key_bits' => 2048, 'private_key_type' => OPENSSL_KEYTYPE_RSA, )); // 获取私钥 openssl_pkey_export($keyPair, $privateKey); // 获取公钥 $publicKey = openssl_pkey_get_details($keyPair)['key']; // 加密 function encrypt($data, $publicKey) { openssl_public_encrypt($data, $encrypted, $publicKey); return base64_encode($encrypted); } // 解密 function decrypt($encryptedData, $privateKey) { openssl_private_decrypt(base64_decode($encryptedData), $decrypted, $privateKey); return $decrypted; } // 使用示例 $data = 'Hello, world!'; $encryptedData = encrypt($data, $publicKey); echo $encryptedData; // 输出加密后的数据 $decryptedData = decrypt($encryptedData, $privateKey); echo $decryptedData; // 输出解密后的数据
Il s'agit d'un exemple de code de base pour un cryptage et un décryptage fiables à l'aide de PHP. Dans les applications pratiques, nous devons prêter attention aux points suivants :
Pour résumer, en utilisant les fonctions de cryptage et de décryptage fournies par PHP, nous pouvons protéger la sécurité des informations sensibles et améliorer l'intégrité et l'authenticité des données. Cependant, la sécurité est un défi permanent et nous devons prêter une attention particulière aux dernières technologies de sécurité et aux meilleures pratiques pour garantir la sécurité de nos données.
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!