Préparation de la suppression de Mcrypt dans PHP 7.2
À mesure que PHP 7.2 se rapproche, la dépréciation de l'extension Mcrypt devient imminente. Bien qu'Openssl constitue une alternative viable, naviguer dans cette transition peut s'avérer difficile, en particulier pour ceux qui sont moins familiers avec la cryptographie.
L'un des obstacles à surmonter consiste à convertir le code s'appuyant sur le mode Rijndael-256 CBC de Mcrypt avec préservation IV en L'équivalent d'Openssl. À l’heure actuelle, une telle conversion directe n’est pas réalisable. La raison réside dans la différence fondamentale entre Rijndael-256 et AES-256.
L'implémentation Rijndael-256 de Mcrypt fonctionne sur une taille de bloc de 256 bits, tandis que l'AES-256 d'Openssl adhère à une taille de bloc de 128 bits. En conséquence, cette différence exclut la substitution directe de l’un à l’autre. Cette limitation nécessite le rechiffrement des données pour obtenir la compatibilité avec AES-256.
Au-delà du problème d'incompatibilité, le code existant présente plusieurs problèmes de sécurité supplémentaires :
Heureusement, Openssl prend en charge le remplissage PKCS#5 de manière native. Cependant, il est fortement recommandé d'utiliser des bibliothèques de chiffrement robustes, telles que defuse/php-encryption, qui répondent à ces problèmes et offrent un niveau plus élevé de protection des 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!