mysql - AES_ENCRYPT 是否减少了加密文本的字节大小?

标签 mysql sql aes

我知道 base64 将特定图像或文本的总“大小”增加了 1/3,但是 AES_ENCRYPT 呢?

最佳答案

AES 是一种 block 密码,因此只处理指定 block 大小的倍数的数据。它的输入(结果是输出)用足够的字节填充以将大小向上舍入到 block 大小的倍数。自手册says使用 128 位 key ,我们知道 block 大小为 16 字节。

手册还给出了一个数学上描述这一点的公式:

the result string length may be calculated using this formula:

16 * (trunc(string_length / 16) + 1)

关于mysql - AES_ENCRYPT 是否减少了加密文本的字节大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14594958/

相关文章:

mysql - Django 2.0 SQLite3 到 MySQL 加载数据错误 : "The database backend does not accept 0 as a value for AutoField."

php - MYSQL优化设计规则: PHP method vs MYSQL procedure on local host

node.js - 是否可以使用 node-webkit 文件动态解码 AES 加密视频?

javascript - CryptoJS 不正确的 AES 编码

mysql - 如何在sqlite中只选择最大行?

java - 我是否正确关闭了这个 Oracle 池连接?

sql - Id 或 [TableName]Id 作为主键/实体标识符

c# - 使用 Try Catch 转换值

java - AES/CBC/PKCS5填充问题

mysql - 在mysql workbench中绘制0个或多个基数关系