AES在线加密

收藏状态

AES在线加密工具

AES(Advanced Encryption Standard)是一种对称加密算法,是当前最流行的加密标准之一。本工具支持AES加密和解密功能,支持多种加密模式,提供便捷的在线加解密服务。

相关知识

AES(高级加密标准)是一种由美国国家标准与技术研究院(NIST)发布的对称分组密码算法,已成为全球加密技术的核心国际标准(如ISO/IEC 18033-3)。它采用128位固定分组,支持128、192或256位三种密钥长度,通过多轮代换、置换和线性变换操作实现高强度的加密。 凭借其公开、坚实的设计和卓越的效率,AES被广泛用于保护最高机密信息,并应用于网络安全、金融交易、数据存储和通信加密等几乎所有需要可靠数据保护的领域。该算法至今仍能有效抵御已知的密码攻击,是目前世界上最可信赖和广泛部署的加密标准。

AES模式参数对比(按推荐程度排序)

模式 密钥 IV / 初始化向量 填充 特点 安全性 备注 推荐程度
CBC (Cipher Block Chaining) 必填(128/192/256位) ✅ 必填(16字节) 需要(如PKCS7) 每个分组依赖上个分组,常用 ✅ 高 最常用,安全性较好 ⭐⭐⭐⭐ 推荐
CTR (Counter) 必填(128/192/256位) ✅ 必填(Nonce+Counter) 不需要(流模式) 将 AES 变成流加密,支持并行 ✅ 高(若计数器不重复) 支持并行,常用 ⭐⭐⭐⭐ 推荐
CFB (Cipher Feedback) 必填(128/192/256位) ✅ 必填(16字节) 不需要(流模式) 类似流加密,能处理小于分组的数据 ✅ 较高 可转为流密码 ⭐⭐ 一般
OFB (Output Feedback) 必填(128/192/256位) ✅ 必填(16字节) 不需要(流模式) 与 CFB 类似,易受同步攻击 ⚠️ 较低 可转为流密码 ⭐ 一般,不推荐
ECB (Electronic Codebook) 必填(128/192/256位) ❌ 不需要 需要(如PKCS7) 最简单,每个分组独立加密 极低(同块明文→同块密文) 简单但不推荐(缺乏随机性) 🚫 不推荐

AES 填充方式对比

填充方式 说明 优点 缺点 推荐程度
PKCS#7 用缺少字节数 N 填充 N 个值为 N 的字节 ✅ 通用,几乎所有库默认 占用额外字节 ⭐⭐⭐⭐ 推荐
ZeroPadding 用 0x00 填充到块长度 ✅ 简单 末尾有 0x00 时可能解密不准 ⭐⭐ 特殊场景
NoPadding 不填充,需手动保证数据长度是 16 的倍数 ✅ 无额外字节 使用受限 ⭐ 仅限固定长度
ANSI X9.23 最后1字节为填充长度,其余填充随机值 ✅ 安全性高 实现稍复杂,需随机数生成 ⭐⭐⭐ 安全性要求高时
ISO10126 类似 ANSI X9.23,最后1字节为填充长度,其余随机值 ✅ 安全性高,部分标准推荐 需随机数生成,实现复杂度略高 ⭐⭐⭐ 特定标准场景
ISO/IEC 9797-1 先填充 0x80,后面补 0x00 到块长度 ✅ 较早标准中常见,实现简单 数据中不能包含 0x80 或 0x00 ⭐⭐ 历史系统或特定设备
侧边栏开关