编码与加密

这一类的混乱几乎都来自名词:把 Base64 当加密、把 MD5 当加密、把「加密」当成一个动作而不是三类操作。实际上它们是三个不同的问题 —— 编码解决「怎么把字节变成文本」,哈希解决「这两个东西是不是同一个」,加密解决「别人能不能读到」。

把这三件事分清之后,剩下的是参数选择:AES 用哪个模式、密码哈希用哪个算法、密钥长度够不够。这些有明确答案,文章里都给了默认值和理由。

这一类常见问题

我的场景到底该用哪一个?

问两个问题:数据需要还原吗(需要 → 加密,不需要 → 哈希);需要防止被篡改吗(需要 → 带认证的模式或签名)。密码是特例:既不是普通哈希也不是加密,而是「故意很慢的哈希」。

这些工具能直接处理生产密钥吗?

计算都在浏览器本地完成、不会上传,但浏览器标签页仍是共享环境。生产密钥建议用本地 CLI 处理,网页工具适合验证算法与排查「两边算出来不一样」。

其他分类