上一篇 下一篇 分享链接 返回 返回顶部

前端加密不等于安全:传输与存储的正确姿势

发布人:小亿 发布时间:2026-08-16 08:18 阅读量:543

一个常见但错误的做法

不少系统为了避免密码明文传输,在前端对密码做加密或摘要后再提交。这种做法看起来提升了安全性,实际上并没有解决问题。因为前端代码完全公开,攻击者可以读取加密逻辑;更关键的是,加密后的结果成为了新的凭据,服务端只要收到这个结果就认可身份,攻击者截获后可以直接重放。风险只是从明文变成了密文,攻击路径并未改变。

传输安全的正确做法

传输层的机密性应由传输层安全协议保证,确保通信链路加密并做证书校验。在此之上,应对关键操作增加防止重放的机制,例如一次性挑战值或时间戳,使截获的请求无法被重复使用。身份认证应基于密钥或挑战响应机制,而不是依赖前端加密结果。

需要前端处理的场景

前端加密并非完全没有意义。在特定场景下,例如对本地存储的敏感信息做保护、对上传文件做客户端加密后传输,前端加密可以减少中间环节的暴露。但这些场景的前提是密钥管理清晰,且不把前端加密当作访问控制的替代。

存储加密的要点

第一,口令不使用可逆加密存储,而应使用带盐的慢哈希算法,并根据硬件能力设置合理的计算强度。

第二,密钥与数据分离存储,密钥通过专用的密钥管理服务保护,不与应用代码和数据库放在一起。

第三,明确加密范围。对敏感字段做字段级加密,并区分可用性与安全性需求,对需要检索的字段使用可检索的方案或存储其摘要值。

第四,保证完整性。加密之外还应提供完整性校验,防止密文被篡改。优先使用同时提供机密性与完整性的加密模式。

第五,做好密钥轮换。设计密钥版本机制,支持在不重新加密全部数据的情况下完成轮换。

结语

加密的目标是让攻击者获取数据后无法利用。判断一个加密方案是否有效,应关注密钥由谁掌握、密文能否被重放、篡改能否被检测,而不是看加密动作发生在哪一层。

目录结构
全文
售后客服 售后客服
企业微信 企业微信
服务热线: 15368564009
电子邮箱: yihwlkj@163.com