前端 web 密码加密是否有意义

2018-12-29 11:50:59 +08:00
 a7217107
个人认为意义不大,再被劫持的情况下,明文和 md5 是没有区别的吧。大佬轻喷
16234 次点击
所在节点    程序员
93 条回复
lincanbin
2018-12-29 11:54:10 +08:00
有必要,有的运维或者后台会记录包含请求体的 access log,如果不加密,log 里面就是明文密码。
这种在架构上垂直扩展&多层的公司很容易发生。
yukiww233
2018-12-29 11:55:24 +08:00
可以避免明文撞库吧
liuzhedash
2018-12-29 11:55:50 +08:00
我感觉任何提高攻击成本的设计都是有意义的
lincanbin
2018-12-29 11:56:11 +08:00
今年上半年,GitHub 就翻车过一次,在请求日志里发现了明文密码,然后就群发邮件通知用户改密码。
SuperMild
2018-12-29 11:56:36 +08:00
用 md5 是为了防止破解本站密码吗?

为啥用 md5 不用明文,是为了防止什么?
yzkcy
2018-12-29 12:34:04 +08:00
在一定程度上可以提高黑客攻击的成本,能加还是最好加上。
no1xsyzy
2018-12-29 12:44:33 +08:00
加密传输能防止旁听攻击啊,另外,网页不一定是热乎的,可能是从缓存里拉出来的未被劫持的版本
——但不要 md5,换一些专门加密密码的算法。
ccbikai
2018-12-29 12:56:49 +08:00
有那么一丢丢
hanru
2018-12-29 12:58:12 +08:00
用单向函数“加密”等同于明文,用其他方法加密也几乎不可能不犯错误,前端还是不要自己造轮子比较好。
ladypxy
2018-12-29 13:02:40 +08:00
基本没意义,前段加密,只要有心查下源代码,加密方式轻松找出来
gstqc
2018-12-29 13:06:52 +08:00
有一定意义
因为 CDN,负载均衡系统,可能会发生 https-->http 的转换,另外一些审计、日志模块也是泄漏的风险。
所以前端进行 hash,后端加 salt 再 hash 是有意义的。

所以,一些更敏感的数据,比如支付系统的,应该用公钥加密给服务端,服务端解密后再处理数据。
Exceptions
2018-12-29 13:08:06 +08:00
@ladypxy 加密方式又不可逆。。。
veightz
2018-12-29 13:13:54 +08:00
意义是有的。
比如说传输的数据做非对称加密,可以在一定程度上提高传输链路上的安全性。
jim9606
2018-12-29 13:16:31 +08:00
首先,tls 保护不能省的,没有这个你连代码完整性都没法保证,不要用手撸加密库替代 tls。
前端密码推荐使用密钥衍生算法保护(argon2,scrypt,pbkdf2,靠前的更好),需要服务器生成 kdf key。这种算法专门对抗彩虹表,不过对于撞库防御效果较弱
virusdefender
2018-12-29 13:30:41 +08:00
聊胜于无吧

- 防止后端等位置打印日志直接暴露明文密码(本站还是可以直接用于登录)
- 证明服务提供商也不想看你的明文密码(虽然想看还有很多办法)
otakustay
2018-12-29 13:35:40 +08:00
能增加攻击的难度。安全领域并不是非黑即白的,如果小量成本能挡住小学 3 年级的傻子攻击,那就有意义
icaca
2018-12-29 13:38:31 +08:00
关键数据传输加密这是必须的。
hoythan
2018-12-29 13:40:10 +08:00
前端也可以 rsa 加密
LancerComet
2018-12-29 13:41:02 +08:00
现在不都 RSA 加密后传过去么
VoidChen
2018-12-29 13:43:03 +08:00
前端不加密,密码明文出去可能会被有心人用在关联账号上尝试,比如绑定的 QQ 或者微信什么的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/522221

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX