AES 密钥生成器
生成加密随机的 AES 加密密钥 — 支持 128、192 或 256 位,输出为 hex 或 Base64 格式。密钥完全在浏览器中生成,绝不传输。
输入
输出
请妥善保管此密钥 — 应存储在密钥管理器中,而非代码或聊天中。
使用指南
这个工具是做什么的?
它会生成一个加密学上随机的 AES 加密密钥 — 128、192 或 256 位 — 并将其格式化为 hex 或 Base64,可以直接粘贴到配置文件、环境变量或加密库调用中。
什么是 AES 密钥?
AES(高级加密标准)是一种对称密钥密码:使用同一个密钥对数据进行加密和解密。密钥本身只不过是一串固定长度的随机比特 — AES-128 为 16 字节,AES-192 为 24 字节,AES-256 为 32 字节。任何拿到密钥的人都能读取用该密钥加密的所有内容,因此一个密钥之所以安全,唯一的原因就是它不可预测且保密。这正是此生成器从 crypto.getRandomValues() 获取字节的原因 — 这是 Web Crypto API 的加密安全随机数生成器,而不是 Math.random(),后者虽然速度快但可预测,不适合任何与安全相关的用途。
128 位还是 256 位:应该选哪个?
AES-128 在已知或可预见的任何技术下都已经无法通过暴力破解攻破,而且运行速度稍快,尤其是在没有 AES-NI 加速的硬件上。对于大多数应用来说,这是一个合理的默认选择。
AES-256 提供更大的安全余量 — 适用于长期保存的数据、合规要求(某些标准强制要求 256 位密钥),或防范未来密码分析的进展,包括大规模量子计算机的理论攻击。在现代 CPU 上,它与 AES-128 的性能差异可以忽略不计。
AES-192 介于两者之间,很少有特定标准要求使用;大多数项目会选择 128 或 256。
如何使用
- 选择密钥长度(128、192 或 256 位)。
- 选择输出格式 — hex(大写)或 Base64,取决于您的库或配置格式期望哪种。
- 点击生成密钥。
- 使用复制按钮复制密钥。
任何时候需要新密钥时,再次点击"生成"即可 — 每次点击都会产生新的随机字节。
常见问题
它也会生成 IV(初始化向量)吗? 不会 — 此工具只输出密钥。大多数 AES 模式(GCM、CBC) 还需要每次加密操作使用一个随机且唯一的 IV,IV 在加密时单独生成;在同一密钥下重复使用 IV 可能泄露信息,因此通常不应预先生成 IV 并将其与密钥一起存储。
应该使用哪种格式,hex 还是 Base64? 两者都是对相同字节的完整保真编码。hex 更容易阅读和调试;Base64 大约短 25%,某些配置格式或环境变量的长度限制更喜欢它。
这个密钥对生产环境来说足够安全吗? 是的 — 底层随机性来源与您的操作系统和浏览器用于 TLS 及其他安全关键操作的是同一个 CSPRNG。系统的安全性仍然取决于将密钥保密并适时轮换。
隐私
密钥完全在您的浏览器中使用 Web Crypto API 生成。它绝不会发送到我们的服务器、记录在日志中或存储在任何地方 — 关闭或重新加载页面会将其永久丢弃,因此请务必在离开页面之前将它保存在安全的地方。
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/aes-key-generator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"keySize": "256",
"outputFormat": "hex"
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `aes-key-generator` tool (AES Key Generator) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.