Skip to main content
Tool Factory

浏览器工具

AES 加密

使用明确的密钥、格式和算法设置执行 AES Encrypt。输入数据和密钥材料,选择参数,然后检查结果。

工具工作区

需要输入

您的输入会保留在此浏览器中。

请添加必需的输入以继续。

输入

请添加源内容并选择所需选项。

GCM 为每次加密使用新的随机 IV。保存完整 JSON 信封以便解密。

选项

输入一个使用所选格式、长度恰为 16、24 或 32 字节的密钥。

GCM 会认证加密数据。旧版模式不会认证数据。仅为兼容性使用这些模式。

输入准备好后运行工具。

结果会显示在此处

请完成必需的输入以继续。

直接回答

AES 加密的功能

AES 加密使用 AES-GCM 加密文本或十六进制字节。每次 Encrypt 操作都会生成新的 12 字节 IV。结果 JSON 包含密文、IV、认证标签和解密所需的数据。来源:https://csrc.nist.gov/pubs/sp/800/38/d/final;https://cheatsheetseries.owasp.org/cheatsheets/Cryptographic_Storage_Cheat_Sheet.html

结果

您将获得什么

版本 1 JSON 信封包含 algorithm、keyBits、ciphertextHex、ivHex、tagHex、aadHex 和 plaintextEncoding。tag 包含 16 个字节。aadHex 包含用户可选的认证数据,不包含 AES 密钥。

使用此工具

如何使用AES 加密

  1. 使用所选编码输入 16、24 或 32 字节的 AES 密钥。保持密钥与结果分离。
  2. 保持 Mode 为 GCM。使用 Raw input 输入 UTF-8 文本,或选择 Hex 以获得精确的二进制字节。
  3. 需要时添加可选的 Additional Authenticated Data。数据保持可见,但会受到认证保护。
  4. 选择 Encrypt。保存完整 JSON 结果,并使用相同密钥将其作为 AES Decryption 的输入。

示例

使用安全样本测试

输入: 受控测试明文和 16、24 或 32 字节的 AES 密钥

设置: Mode 为 GCM,输入使用 Raw input 或 Hex,并按需提供 Additional Authenticated Data。

结果: 结果是包含 ciphertextHex、ivHex、tagHex、aadHex 和 plaintextEncoding 的版本 1 JSON 信封。

每次 Encrypt 会生成新的 12 字节 IV;tag 为 16 字节。仅使用非敏感测试材料。

常见用途

AES 加密的适用场景

  • 测试完整的认证加密和解密流程。
  • 使用现有 AES 密钥保护少量文本或二进制样本。
  • 检查现有格式的明确 AES 参数。

限制

检查结果

  • AES 加密:本工具使用特定 JSON 信封。其他 AES 应用必须实现此信封契约,或使用明确的兼容模式。
  • AES 加密:GCM 的 additionalData 是 UTF-8 JSON.stringify({version:1,algorithm:"AES-GCM",keyBits,plaintextEncoding,aadHex}),字段顺序必须完全一致,且不能有空格。这会同时认证信封元数据和用户 AAD。
  • AES 加密:新的 GCM 加密始终使用浏览器密码学生成 IV。会话会拒绝重复生成的 IV,但不能检测其他会话或应用中的 IV。
  • AES 加密:CBC、CFB、OFB、CTR 和 ECB 是不提供认证的兼容模式。ECB 会暴露重复块。这些模式不会检测密文修改。
  • AES 加密:兼容模式需要原始格式和参数。除 ECB 外的模式需要明确的 16 字节 IV,或需要正确集成 IV 才能解密。
  • AES 加密:GCM 的明文上限为 1 MiB,用户 AAD 上限为 64 KiB。输入 JSON 上限为 3 MiB。
  • AES 加密:请使用随机 AES 密钥,或使用合适的基于密码的密钥派生函数。直接使用密码作为密钥不会获得密码强化。
  • AES 加密:保持 AES 密钥私密。丢失密钥会阻止解密。认证不能证明加密消息的创建者。