确定性字符映射工具

使用输入内容和用户密钥,生成指定格式的固定结果。

算法版本:DM-HMAC-SHA256-v1

输入

任意 Unicode 文本,包括汉字、符号、空格和换行。
密钥越复杂,抵抗猜测的能力越强。
空密钥不提供基于秘密密钥的保护,任何获得输入和配置的人都能复现结果。

配置

规范化规则同时应用于输入内容和密钥。
不规范化时,全角/半角、组合字符和视觉相同的 Unicode 字符可能生成不同结果。NFC/NFKC 会将部分等价字符统一。
选择预设格式或自定义字符集。
范围 1~256。输出较短时碰撞概率更高。
DM-HMAC-SHA256-v1
版本前缀不计入输出长度。

结果

尚未生成,请配置参数并点击"生成结果"。
  1. 本工具在浏览器本地运行,不会主动上传输入内容
  2. 本工具使用 HMAC-SHA-256 生成确定性字节流。
  3. 相同输入、密钥和配置会产生相同结果
  4. 该过程不提供解密功能,不能从结果唯一还原原始输入。
  5. 不可逆不代表无法猜测。如果输入和密钥都很弱,攻击者仍可能通过枚举组合进行验证。
  6. 密钥越长、越随机,抵抗猜测的能力通常越强。
  7. 空密钥没有秘密性,只能形成公开的确定性映射。
  8. 输出长度越短、字符集越小,碰撞概率越高
  9. 输出空间只有 字符集大小输出长度 种可能。
  10. 不同输入可能映射为同一结果
  11. 如果该结果用于登录或身份验证,服务端仍必须实施限速、失败锁定和其他安全措施。
  12. 本工具不是密码管理器
  13. 本工具不能替代 Argon2id、scrypt 等专业密码存储算法。
  14. 不要使用本工具保存服务器登录密码。
  15. 不要将短数字输出描述为具有完整 HMAC-SHA-256 的安全强度。
  16. 不使用随机 Salt,是因为本工具的需求是保证相同输入和配置得到相同输出
  17. 用户必须自行妥善保存密钥;密钥丢失后无法重新生成原结果。

运行测试向量验证核心算法正确性。测试不读取也不输出用户的实际输入。

点击"运行测试"开始验证。