暗号化・圧縮機能

TiDB は、 MySQL 5.7で利用可能な暗号化および圧縮関数のほとんどをサポートしています。

対応関数

名前説明
MD5()MD5 チェックサムを計算する
PASSWORD()パスワード文字列を計算して返す
RANDOM_BYTES()ランダムなバイト ベクトルを返す
SHA1(), SHA()SHA-1 160 ビット チェックサムを計算する
SHA2()SHA-2 チェックサムを計算する
SM3()SM3 チェックサムを計算します (現在、MySQL はこの関数をサポートしていません)。
AES_DECRYPT()AES を使用して復号化する
AES_ENCRYPT()AES を使用して暗号化する
COMPRESS()結果をバイナリ文字列として返す
UNCOMPRESS()圧縮された文字列を解凍する
UNCOMPRESSED_LENGTH()圧縮前の文字列の長さを返す
CREATE_ASYMMETRIC_PRIV_KEY()秘密鍵の作成
CREATE_ASYMMETRIC_PUB_KEY()公開鍵の作成
CREATE_DH_PARAMETERS()共有 DH シークレットを生成する
CREATE_DIGEST()文字列からダイジェストを生成
ASYMMETRIC_DECRYPT()秘密鍵または公開鍵を使用して暗号文を復号化する
ASYMMETRIC_DERIVE()非対称鍵から対称鍵を導出する
ASYMMETRIC_ENCRYPT()秘密鍵または公開鍵を使用して平文を暗号化する
ASYMMETRIC_SIGN()ダイジェストから署名を生成
ASYMMETRIC_VERIFY()署名がダイジェストと一致することを確認する

block_encryption_mode変数は、 AES_ENCRYPT()およびAES_DECRYPT()に使用される暗号化モードを設定します。

サポートされていない関数

  • DES_DECRYPT()DES_ENCRYPT()OLD_PASSWORD()ENCRYPT() : これらの関数はMySQL 5.7で廃止され、8.0 で削除されました。
  • VALIDATE_PASSWORD_STRENGTH()
  • MySQL Enterprise 問題#2632でのみ利用可能な機能