PHP 8.2.0でmcrypt拡張機能をサポートしていますか?


代替手段として、PHP 7.2.0以降では、openssl拡張機能を使用することが推奨されています。openssl拡張機能は、暗号化や復号化のためのさまざまな関数を提供しており、より安全な選択肢となっています。

以下に、openssl拡張機能を使用した暗号化と復号化の基本的なコード例を示します。

// データを暗号化する例
function encryptData($data, $key, $iv) {
    $encryptedData = openssl_encrypt($data, 'AES-256-CBC', $key, 0, $iv);
    return base64_encode($encryptedData);
}
// データを復号化する例
function decryptData($encryptedData, $key, $iv) {
    $decodedData = base64_decode($encryptedData);
    return openssl_decrypt($decodedData, 'AES-256-CBC', $key, 0, $iv);
}
// 使用例
$dataToEncrypt = 'This is a secret message.';
$key = '0123456789abcdef';
$iv = 'abcdef9876543210';
$encrypted = encryptData($dataToEncrypt, $key, $iv);
echo "暗号化されたデータ: " . $encrypted . "\n";
$decrypted = decryptData($encrypted, $key, $iv);
echo "復号化されたデータ: " . $decrypted . "\n";

上記の例では、AES-256-CBC暗号方式を使用してデータを暗号化および復号化しています。$key$ivは暗号化のためのキーと初期化ベクトルを表しています。実際の使用においては、よりランダムでセキュアなキーと初期化ベクトルを生成する必要があります。

このように、mcrypt拡張機能が削除された場合でも、openssl拡張機能を使用することで安全にデータを暗号化および復号化することができます。