认清密钥表示
同一串字符按 Hex 与 UTF-8 解释会得到不同字节数。这里密钥只接受 Hex 或标准 Base64,解码后必须恰好是 16、24 或 32 字节。
- 口令不能直接贴成密钥;页面不会自动补零或截断。
Hash / 密码学辅助
输入 16、24 或 32 字节原始密钥;正常加密每次生成新 Nonce,解密需提供原 Nonce、Tag 和相同 AAD。
消息与密钥仅在当前页面内存处理,不上传,也不写入浏览器存储。
模式: AES-GCM
输入最多 1 MiB,AAD 最多 64 KiB;密钥 16/24/32 字节,Nonce 12 字节,Tag 16 字节。
请输入原始密钥;空明文也可以加密。
联调接口时,双方都说用了 AES,却得不到相同密文。AES 加解密测试先把密钥编码、原始字节、Nonce 和认证标签分开,让差异有地方可查。
这个 AES 加解密页面只处理一条测试消息。它不会把口令猜成密钥,也不会替某种服务端格式拼装盐、IV 与密文;要对拍外部系统,先确认双方都采用 AES-GCM。
结果不是孤立的一串密文;生成和验证还依赖独立字段。
AES 加解密测试的正常加密每次都会生成新的 12 字节 Nonce。即便明文与密钥不变,密文和 Tag 也会改变;三者分开显示,便于对照接口字段。
改动一个 Tag 字节,认证解密就整体失败。AES 加解密测试不会把尚未认证的部分结果显示成看似可信的明文。
同一串字符按 Hex 与 UTF-8 解释会得到不同字节数。这里密钥只接受 Hex 或标准 Base64,解码后必须恰好是 16、24 或 32 字节。
默认每次加密都随机生成 12 字节 Nonce;只有复现已知向量才切到手动模式。解密时必须带回原 Nonce,以及加密时完全一致的 AAD。
加载 NIST 向量会先预览覆盖的字段;执行后同时比较密文与 Tag。认证失败只说明参数有不一致,不能凭报错推定一定是密钥错误。
AES-128、192、256 按解码后字节数选定。AES 密钥长度不对会立刻报错,不会悄悄派生口令。
明文用 UTF-8 或 Hex;密文、Nonce 与 Tag 各自选择 Hex 或 Base64。AES GCM 解密因此能对应接口实际传的字段。
GCM 认证标签从 Web Crypto 的输出尾部拆出,解密时再按标准拼回;不会让你误把编码格式当作加密算法。
先比较密钥解码后的长度、AES-GCM 模式、Nonce、AAD 与密文编码。正常随机 Nonce 也会让相同明文得到不同密文,不能只比输出字符串。
这页不提供二者,只测带认证的 AES-GCM。若对方协议指定旧模式,必须在明确其填充与认证方案后使用对应实现。
Tag 是 16 字节认证标签。解密必须提供原 Tag;缺失或不一致时无法得到可信明文。
原始密钥解码后必须为 16、24 或 32 字节。普通口令不是原始密钥,页面不会自动补齐、截短或做 PBKDF2。
计算调用浏览器 Web Crypto;本页不把测试消息和密钥发送到服务端,也不持久化。它是联调工具,不能替代生产密钥管理。
还有疑问?