Vorbereitung auf die Entfernung von Mcrypt in PHP 7.2
Während PHP 7.2 näher rückt, steht die Abschaffung der Mcrypt-Erweiterung unmittelbar bevor. Während Openssl eine praktikable Alternative darstellt, kann die Bewältigung dieses Übergangs eine Herausforderung darstellen, insbesondere für diejenigen, die mit Kryptographie weniger vertraut sind.
Eine der Hürden, die es zu überwinden gilt, besteht darin, Code, der auf dem CBC-Modus Rijndael-256 von Mcrypt mit IV-Erhaltung basiert, zu konvertieren Openssls Äquivalent. Eine solche direkte Umstellung ist derzeit nicht realisierbar. Der Grund liegt im grundlegenden Unterschied zwischen Rijndael-256 und AES-256.
Mcrypts Rijndael-256-Implementierung arbeitet mit einer 256-Bit-Blockgröße, während Openssls AES-256 eine 128-Bit-Blockgröße einhält. Dieser Unterschied schließt daher eine direkte Substitution des einen durch das andere aus. Diese Einschränkung erfordert die Neuverschlüsselung von Daten, um Kompatibilität mit AES-256 zu erreichen.
Über das Inkompatibilitätsproblem hinaus weist der vorhandene Code mehrere zusätzliche Sicherheitsbedenken auf:
Glücklicherweise unterstützt Openssl das PKCS#5-Padding nativ. Es wird jedoch dringend empfohlen, robuste Verschlüsselungsbibliotheken wie defuse/php-encryption zu verwenden, die diese Bedenken berücksichtigen und ein höheres Maß an Datenschutz bieten.
Das obige ist der detaillierte Inhalt vonWie kann ich meinen Mcrypt-basierten PHP-Code zu Openssl in PHP 7.2 und höher migrieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!