aes_decrypt
指定された Advanced Encryption Standard (AES) アルゴリズムと暗号化キーを使用して、文字列を復号化します。
Syntax
aes_encrypt(str, key_str[, init_vector][, encryption_mode][, aad_str]);
Parameters
-
str(必要): 復号する文字列。VARCHAR 型でなければなりません。 -
key_str(必要):strを暗号化するために使用されるキー。VARCHAR 型でなければなりません。 -
init_vector(オプション): Initialization Vector (IV) は、AES暗号化において重要なセキュリティパラメータであり、同一の平文が暗号化されるごとに異なる暗号文を生成することを保証します。CBC、CFB、OFB、CTR、GCM モードでのみ有効です。VARCHAR 型でなければなりません。 -
encryption_mode(オプション): 暗号化アルゴリズム。VARCHAR 型でなければなりません。デフォルト値:AES_128_ECB。サポートされているアルゴリズム:
ECB CBC CFB CFB1 CFB8 CFB128 OFB CTR GCM AES_128_ECB AES_128_CBC AES_128_CFB AES_128_CFB1 AES_128_CFB8 AES_128_CFB128 AES_128_OFB AES_128_CTR AES_128_GCM AES_192_ECB AES_192_CBC AES_192_CFB AES_192_CFB1 AES_192_CFB8 AES_192_CFB128 AES_192_OFB AES_192_CTR AES_192_GCM AES_256_ECB AES_256_CBC AES_256_CFB AES_256_CFB1 AES_256_CFB8 AES_256_CFB128 AES_256_OFB AES_256_CTR AES_256_GCM -
aad_str(オプション): 追加認証データ(AAD)を示します。これは認証付き暗号化モード(例:GCM)に固有のパラメータです。完全性(改ざん防止)のために認証が必要だが、機密性(暗号化不要)を必要としないデータを包含することを可能にします。VARCHAR 型でなければなりません。
Return value
VARCHAR 型の値を返します。入力が無効な場合は、NULL が返されます。
Examples
Base64 文字列をデコードし、この関数を使用してデコードされた文字列を元の文字列に復号します。
mysql> select AES_DECRYPT(from_base64('uv/Lhzm74syo8JlfWarwKA== '),'F3229A0B371ED2D9441B830D21A390C3');
+--------------------------------------------------------------------------------------------+
| aes_decrypt(from_base64('uv/Lhzm74syo8JlfWarwKA== '), 'F3229A0B371ED2D9441B830D21A390C3') |
+--------------------------------------------------------------------------------------------+
| starrocks |
+--------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select AES_DECRYPT(from_base64('uv/Lhzm74syo8JlfWarwKA=='),'F3229A0B371ED2D9441B830D21A390C3', NULL, "AES_128_ECB");
+---------------------------------------------------------------------------------------------------------------+
| aes_decrypt(from_base64('uv/Lhzm74syo8JlfWarwKA=='), 'F3229A0B371ED2D9441B830D21A390C3', NULL, 'AES_128_ECB') |
+---------------------------------------------------------------------------------------------------------------+
| starrocks |
+---------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select AES_DECRYPT(from_base64('taXlwIvir9yff94F5Uv/KA=='),'F3229A0B371ED2D9441B830D21A390C3', "abcdefg", "AES_128_CBC");
+--------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(from_base64('taXlwIvir9yff94F5Uv/KA=='), 'F3229A0B371ED2D9441B830D21A390C3', 'abcdefg', 'AES_128_CBC') |
+--------------------------------------------------------------------------------------------------------------------+
| starrocks |
+--------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select AES_DECRYPT(from_base64('YWJjZGVmZ2hpamtsdpJC2rnrGmvqKQv/WcoO6NuOCXvUnC8pCw=='),'F3229A0B371ED2D9441B830D21A390C3', "abcdefghijklmnop", "AES_128_GCM", "abcdefg");
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(from_base64('YWJjZGVmZ2hpamtsdpJC2rnrGmvqKQv/WcoO6NuOCXvUnC8pCw=='), 'F3229A0B371ED2D9441B830D21A390C3', 'abcdefghijklmnop', 'AES_128_GCM', 'abcdefg') |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| starrocks |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)