PHP 7.2 での Mcrypt の非推奨への準備
PHP 7.2 が目前に迫っており、mcrypt 拡張機能は削除される予定です。 openssl は代替手段を提供しますが、mcrypt から openssl への移行は、特に AES 256 CBC 暗号化を維持し、IV を保存することを目的とする場合に課題を引き起こす可能性があります。
Mcrypt から Openssl へのギャップを埋める
核心的な問題は、mcrypt で採用されている Rijndael-256 が、 AES-256 は openssl によって処理されます。 openssl は Rijndael-256 をサポートしていないため、直接変換はできません。
これに対処するには、Rijndael-256 を使用して暗号化されたすべてのデータを openssl の AES-256 を使用して再暗号化する必要があります。このプロセスには、データの損失や破損を避けるための慎重な計画が必要です。
潜在的な脆弱性への対処
技術的な違いを超えて、提供されている mcrypt コードには、軽減する必要があるいくつかの脆弱性も示されています。新しい実装では:
安全な暗号化慣行の採用
openssl は自動化された PKCS#5 パディングを提供しますが、堅牢な暗号化を利用することをお勧めします。 defuse/php-encryption などのライブラリ。このライブラリは特定された脆弱性に対処し、包括的な暗号化ソリューションを提供します。これらのベスト プラクティスを実装することで、openssl に効果的に移行し、データのセキュリティを維持できます。
以上がPHP 7.2 以降で MCrypt から OpenSSL に安全に移行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。