logo
GeekFormat

AES 加密解密

请先阅读再使用

本工具完全在浏览器内运行,明文、密文、密钥都不会发送到任何服务器。

本工具适合开发、调试、学习以及自行管理的场景;请勿将其作为生产环境中商业机密、用户数据的唯一防护。

生产环境请使用经过审计的密码学库(libsodium、OpenSSL、AWS Encryption SDK 等)、真正的 KDF(推荐 Argon2id ≥ 1 次迭代 / 64 MiB)、强制 AEAD 模式,并在服务端配合密钥管理、访问控制、审计日志使用。

算法模式
密钥长度
密文格式(加密输出 / 解密输入)
密钥来源
明文

UTF-8 文本

模式对比 — GCM vs CBC vs CTR
模式认证IV 要求性能推荐场景
AES-GCM内置认证 (AEAD,128 位标签)12 字节(推荐);同一密钥下严禁重用快速,硬件加速默认 — 现代 API、文件加密、所有需要认证的场景
AES-CBC无认证,必须外接 HMAC/MAC16 字节;必须使用 CSPRNG 且严禁重用快速,硬件加速遗留 TLS、磁盘加密(XTS-AES);新设计不要裸用
AES-CTR无认证,必须外接 HMAC/MAC16 字节;严禁重用(重用即灾难性)最快,可并行可随机访问的流、磁盘加密;必须配合 MAC

怎么看这张表

  • AES-GCM 是三者里唯一 AEAD — 加密 + 认证一气呵成。如果不知道选哪个,选 GCM。
  • CBC / CTR 只提供机密性。它们必须外接 MAC(HMAC-SHA256、Encrypt-then-MAC),否则对选择密文攻击、比特翻转攻击毫无抵抗力。
  • IV/Nonce 在 (key, message) 维度必须唯一。GCM 一旦重用 IV,认证密钥会被泄露 — 视为灾难性事件。

模式与格式说明

  • 浏览器 SubtleCrypto 对 AES 仅提供 GCM、CBC、CTR,不提供 ECB、CFB、OFB 等(避免弱用法误选)。若需其它模式请用 OpenSSL / 服务端库。
  • 密文可选 Hex / Base64 / Base64URL,与 CyberChef、各类 API、JWT 等场景对齐;加解密两侧须选同一格式。
  • AES-GCM 下输出为「密文 + 认证标签」连续字节;本工具整段编码为所选格式,解密时粘贴整段即可。

说明

  • Web Crypto 在浏览器内运算;GCM 为认证加密,适合默认场景。
  • 加密时 IV 可留空,工具会生成随机 IV 并写入上方输入框,便于解密时复用。
  • 解密时 IV 留空则按全 0 向量尝试(仅当对方使用相同约定时有效)。

免费在线 AES 加密解密工具,支持 AES-CBC/GCM/CTR 三种模式,AES-128/192/256 密钥长度。PBKDF2-SHA256 密钥派生(10万次迭代),密码强度实时检测,纯浏览器端处理。

相关推荐

适用场景

  • API 联调:Hex 密钥模式对接后端 AES 加密接口,验证密钥和 IV 配置是否正确
  • 文本加密:密码模式加密聊天记录、笔记或敏感文本,通过不同渠道分享密码和密文
  • 配置加密:加密 API 密钥、数据库密码或第三方 Token,安全存储在配置文件或 .env 中
  • 接口签名:GCM 模式生成带认证的密文,确保数据传输完整性
  • 学习研究:切换不同模式对比输出差异,理解 CBC/GCM/CTR 工作原理
  • 数据归档:使用强密码加密重要文档归档,即使文件泄露也有安全保障

功能特点

  • 三种加密模式:支持 AES-CBC、AES-GCM(认证加密)、AES-CTR,覆盖主流加密场景
  • PBKDF2 密钥派生:SHA-256 算法,10万次迭代(OWASP 2024 推荐),每次加密自动生成随机 Salt
  • 密码强度实时检测:基于熵值计算,检测大小写、数字、特殊字符,直观显示安全等级
  • Hex/密码双模式:Hex 模式对接 API,密码模式保护文本,互不干扰
  • GCM 认证检测:自动检测密文是否被篡改,解密时显示认证状态(成功/失败)
  • AES-128/192/256:支持三种密钥长度,默认 AES-256(256位最高安全)
  • 输出格式可选:Hex / Base64 / Base64URL,适配不同传输场景
  • 浏览器端处理:Web Crypto API 本地计算,数据不上传服务器
  • 自动执行:开启后输入变化自动加密解密,无需点击按钮
  • 一键生成:🎲 随机密钥、IV、Salt,密码学安全随机数

使用方法

  1. 选择模式:Hex 密钥模式(对接 API)或密码模式(保护文本)
  2. 设置参数:选择加密模式(CBC/GCM/CTR)和密钥长度(128/192/256)
  3. 输入内容:输入要加密的明文或要解密的密文
  4. 一键生成:点击 🎲 生成随机密钥、IV 或 Salt,或直接输入密码查看强度
  5. 复制结果:查看加密/解密结果,一键复制密文或明文

常见问题

AES-CBC、AES-GCM、AES-CTR 三种模式有什么区别?

CBC 是最常用的加密模式,需要 IV 参数,适合通用加密。GCM 提供认证加密(AEAD),可检测密文是否被篡改,是 TLS 1.3 和现代 API 的默认选择。CTR 是流加密模式,支持并行计算,速度快但无认证。选择建议:优先使用 GCM 模式。

什么是 PBKDF2 密钥派生?为什么需要它?

PBKDF2(Password-Based Key Derivation Function 2)将用户密码转换为强加密密钥。本工具使用 PBKDF2-SHA256,10万次迭代(OWASP 2024 推荐),每次加密自动生成随机盐值。即使密码较弱,也能有效抵抗暴力破解。相比直接用密码加密,PBKDF2 更安全。

Hex 密钥模式和密码模式有什么区别?

Hex 密钥模式:直接输入 32/48/64 位十六进制密钥,适合与后端 API 对接时使用固定密钥。密码模式:输入人类可读的密码,工具自动使用 PBKDF2 派生密钥并嵌入 Salt,适合保护文本内容如聊天记录、笔记等。

密码强度检测显示的是什么?

工具实时分析密码强度,基于熵值计算(Entropy Bits)评估安全性,并检测是否包含大写字母、小写字母、数字、特殊字符等。强度等级分为:弱(Weak)、一般(Fair)、良好(Good)、强(Strong)。建议使用 12 位以上混合字符的强密码。

GCM 模式解密失败是为什么?

GCM 模式具有认证功能,密文被篡改会导致认证失败。解密失败(显示红色标签)可能原因:1) 密钥或密码不正确;2) Salt/IV 不匹配;3) 密文在传输过程中被修改;4) 使用了不同的加密模式。检查加密和解密两端的参数是否一致。

在线 AES 加解密工具安全吗?

本工具使用 Web Crypto API 在浏览器本地完成所有加密计算,数据全程不上传到任何服务器。密码模式使用 PBKDF2-SHA256(10万次迭代)派生密钥,安全性符合 OWASP 标准。适合测试数据、API 联调和学习场景。处理极度敏感数据时,建议使用本地离线工具。

支持哪些密钥长度?

支持 AES-128(16字节密钥)、AES-192(24字节密钥)、AES-256(32字节密钥)三种长度。默认使用 AES-256(256位),安全性最高。128位速度略快但已足够安全;192位用于满足特定合规要求。

输出格式 Hex、Base64、Base64URL 有什么区别?

Hex:纯十六进制字符(如 0-9、A-F),易于阅读和调试。Base64:64字符编码,体积比 Hex 小约 33%,适合嵌入 JSON 或配置文件。Base64URL:Base64 的 URL 安全版本(将 +/ 替换为 -_),适合 URL 参数或 JSON 字段传输。

加密后的密文怎么解密?

密码模式下,密文自动嵌入 Salt 和 IV(位于文件头),解密时工具自动提取,无需手动输入。Hex 密钥模式下,需要保存加密时的 Salt 和 IV(显示在界面),解密时必须使用相同的值。

可以用这个工具学习 AES 加密原理吗?

可以。工具支持三种加密模式和三种密钥长度切换,实时显示输入输出变化,适合理解 CBC/GCM/CTR 的区别和特性。密码模式展示了 PBKDF2 密钥派生的完整流程,包括 Salt 生成、迭代次数和 SHA-256 散列。

什么是AES 加密解密?

AES(Advanced Encryption Standard)是目前世界上最广泛使用的对称加密标准,由美国国家标准与技术研究院(NIST)于 2001 年正式确立。AES 使用相同的密钥进行加密和解密,分为 AES-128、AES-192、AES-256 三种密钥长度,数字越大安全性越高。本工具支持三种主流加密模式: CBC(最常用)、GCM(带认证防篡改)、CTR(流加密模式)。

**PBKDF2 密钥派生**是密码模式的核心。当您输入一个密码时,工具使用 PBKDF2-SHA256 算法将其转换为强加密密钥。本工具采用 OWASP 2024 推荐的 100,000 次迭代次数,并自动生成随机 Salt。Salt 类似于加盐炒菜:即使相同的食材(密码),加入不同的调料(Salt)也会产生完全不同的结果。这有效防止了彩虹表攻击,即使攻击者知道您使用了常见密码,也难以破解。

**密码强度检测**基于信息熵(Entropy)计算。熵值越高,密码越安全。工具会分析密码中包含的字符种类(大小写、数字、特殊符号)、长度以及常见模式,给出 Weak(弱)、Fair(一般)、Good(良好)、Strong(强)四个等级,并给出改进建议。建议使用 12 位以上混合大小写、数字和特殊字符的密码。

**GCM 模式**是现代加密的首选。与 CBC 只提供保密性不同,GCM 在加密的同时生成认证标签(Authentication Tag)。解密时,工具会自动验证认证标签:如果密文被篡改,即使只是改变了一个比特,解密也会失败并显示红色警告。这对于需要防止数据被恶意修改的场景(如金融数据、重要文档)至关重要。TLS 1.3 已将 GCM 作为默认加密模式。

所有加密操作使用浏览器原生 **Web Crypto API**,完全在本地执行,数据不会发送到任何服务器。您可以打开浏览器开发者工具的网络面板验证,确认没有任何数据外传。这与某些在线工具将数据发送到服务器处理有本质区别。