AES 加密/解密

我要提建议

AES-GCM 对称加解密,支持 128 / 192 / 256 位密钥并可一键生成;密文格式 base64(iv).base64(ciphertext),全程本地。

相关工具

这个工具是做什么的

AES-GCM 在提供机密性的同时附带认证标签,能检测密文被篡改的情况。密钥长度可选 128 位(16 字节)、192 位(24 字节)或 256 位(32 字节)——256 位是当前的通用推荐,128 位在合规受限或需要与老系统对接时仍很常见,安全性对绝大多数场景依然足够。本工具通过 Web Crypto 在本机用本地算法完成加解密:可一键生成随机密钥(输出十六进制),也可粘贴已有密钥;加密结果形如 base64(IV).base64(密文),IV 每次随机 12 字节。对称加密只有一把密钥、加解密共用,所以「谁拿到密钥谁就能解开」——生成后请立即保存到密码管理器。

使用方法

  1. 没有密钥:先选密钥长度(128 / 192 / 256 位),点「生成密钥」得到对应长度的十六进制密钥,立刻复制保存(丢失后密文无法还原)。
  2. 选择「加密」或「解密」,在密钥框粘贴已有密钥(16 / 24 / 32 字节的十六进制均可)。
  3. 加密:输入明文并执行;解密:粘贴 iv.ciphertext 格式的密文并执行。
  4. 复制输出结果;解密失败时检查密钥是否与加密时一致。

常见问题

AES 有哪几种密钥长度?该选哪个?
AES 标准定义 128、192、256 位三种,对应 16、24、32 字节密钥。256 位是当前通用推荐;128 位在性能与兼容性上仍有优势,且至今没有被实际攻破的记录;192 位用得相对少。注意密钥长度必须与解密端一致——用 256 位加密的密文,拿 128 位密钥解不开。
生成的密钥怎么保存?
它是 32 字节(64 个十六进制字符)的随机值,没有配套的"用户名"之类信息,请直接存进密码管理器或密钥管理系统。对称加密同一把密钥既能加密也能解密,因此密钥泄露等于内容泄露,密钥丢失则密文再也解不开。
和 RSA 的密钥有什么区别?
AES 是对称加密,只有一把密钥、加解密都用它,速度快、适合加密任意长度的正文;RSA 是非对称加密,公钥加密、私钥解密,速度慢且只能加密很短的内容。工程上常见组合是:用 AES 加密正文,再用 RSA 公钥保护这把 AES 密钥。
密钥格式是什么?
32 字节原始密钥的十六进制表示,共 64 个 hex 字符(不含空格)。不足或过长都会报错。
密文格式如何解析?
加密输出为两段 Base64,用英文句点连接:第一段是 12 字节 IV,第二段是含 GCM 标签的密文。
能和后端 OpenSSL 互通吗?
需保证同为 AES-256-GCM、相同 IV 与 AAD(本工具无额外 AAD)。不同语言库默认编码可能不同,请用短文本先互测。
密钥会上传吗?
不会。加解密在本地 Web Crypto 中执行,但请勿在公共电脑上粘贴生产密钥。