メインコンテンツまでスキップ
バージョン: Latest-4.0

aes_decrypt

デフォルトでは、AES_128_ECBアルゴリズムを使用して文字列strを暗号化し、バイナリ文字列を返します。

AES は advanced encryption standard の略で、ECB は electronic code book の略です。文字列を暗号化するために使用されるキーは 128 ビットの文字列です。

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 型でなければなりません。

      ECBCBCCFBCFB1CFB8CFB128OFBCTRGCM
      AES_128_ECBAES_128_CBCAES_128_CFBAES_128_CFB1AES_128_CFB8AES_128_CFB128AES_128_OFBAES_128_CTRAES_128_GCM
      AES_192_ECBAES_192_CBCAES_192_CFBAES_192_CFB1AES_192_CFB8AES_192_CFB128AES_192_OFBAES_192_CTRAES_192_GCM
      AES_256_ECBAES_256_CBCAES_256_CFBAES_256_CFB1AES_256_CFB8AES_256_CFB128AES_256_OFBAES_256_CTRAES_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)
Rocky the happy otterStarRocks Assistant

AI generated answers are based on docs and other sources. Please test answers in non-production environments.