AES 加密解密

在线 AES 加解密工具,支持多种模式、填充与编码格式。

0 字符数
运算模式
ECB
填充模式
PKCS5Padding(PKCS7Padding)
密钥长度
128位
输出编码
Base64
密钥
UTF8
16B
偏移量
UTF8
0B
相关知识

AES (Advanced Encryption Standard) 是一种对称加密算法,也是当前最流行的加密算法之一, 由美国国家标准与技术研究所 (NIST) 标准化,已经成为了国际标准。 它的加密密钥长度可以为 128 位、192 位或 256 位,其中 128 位密钥版本最为流行。 AES 是一种分组密码,将明文分成 128 位一组,然后分别进行加密,加密方式包括替换、置换、 线性变换等基本操作。通过多轮迭代加密,在满足密钥安全性的前提下,能够提供很高的加密强度, 以防止恶意攻击者的攻击。在许多场景下,AES 已经被广泛应用,例如数据传输、文件加密、 数据库加密等等。

AES 加密模式对比
模式是否需要 IV特点安全性推荐程度
ECB (Electronic Codebook) 不需要最简单,每个分组独立加密 极低不推荐
CBC (Cipher Block Chaining) 需要每个分组依赖上个分组,常用 推荐
CTR (Counter) 需要将 AES 变成流式加密,支持并行 推荐
CFB (Cipher Feedback) 需要类似流加密,能处理小于分组的数据 较高一般
OFB (Output Feedback) 需要与 CFB 类似,易受同步攻击 较低一般,不推荐
AES 填充方式对比
填充方式说明优点缺点推荐程度
PKCS#7用缺少字节数 N 填充 N 个字节 通用,几乎所有库默认 占用额外字节推荐
ZeroPadding用 0x00 填充 简单 末尾有 0x00 时可能解密不准特殊场景
NoPadding不填充,需手动保证数据长度是 16 的倍数 无额外字节 使用受限仅限固定长度