修改密码表单中的"请再次确认新密码"字段需要一起传到后端吗

2020-03-10 10:41:53 +08:00
 LoremIpSum

个人感觉不需要,因为前端已经校验过了,后端再做一次 equlas 判断感觉没什么必要,但是看到有些开源项目也把这个字段传到后端做校验?请问把这个再次确认传到后端起到什么作用?

8128 次点击
所在节点    信息安全
73 条回复
fancy111
2020-03-10 15:30:39 +08:00
你们真的一顿瞎扯,确认密码只不过是为了让用户确认自己的输入是这样的,后端需要干嘛?以前根本没两个框。
再说了,不管是申请时还是修改密码时,提交之后不应该都要重新登录一次吗?
whileFalse
2020-03-10 15:52:09 +08:00
@no1xsyzy #40 前端校验密码最简单的难道不是“确认修改”按钮被按下时么。
weiqk
2020-03-10 15:59:18 +08:00
所有表单必须前后端同时验证,前端验证是为了用户能尽快发现并修正,后端验证是为了保证数据正确
MisakaMikoto
2020-03-10 16:16:39 +08:00
就是脱裤子放屁
CloudMx
2020-03-10 16:28:15 +08:00
没必要,前段三个框,一个旧密码,一个新密码,一个新密码重复(确认),提交到后端,只需要,新密码,老密码,两个字段值,后端验证了老密码的正确性后再进行密码更改操作。
第三个密码框,在这里并没有增加安全性,但是增加了纠错,万一用户密码输入错误,还有余地。
CloudMx
2020-03-10 16:29:24 +08:00
中间人攻击会在意你后面的新密码有多少个密码字段?
uminokoe
2020-03-10 16:29:45 +08:00
需要确认,万一前端忘记校验了,自己就不用背锅了
CloudMx
2020-03-10 16:32:00 +08:00
@uminokoe 还是老哥这个“背锅论”想得周到..
zhjie
2020-03-10 16:42:51 +08:00
因为安全而说需要验证的,都在扯淡。
loading
2020-03-10 16:49:20 +08:00
@whileFalse 是两次输入对不上时,确认修改按钮不可按。检测应该是 keyup,并且需要加上去抖。
v2student
2020-03-10 17:04:51 +08:00
没有必要,你要验证的是原始密码,新密码如果是伪造的,伪造一个和伪造两个,又有什么区别?
xixinimei
2020-03-10 17:57:51 +08:00
不需要,前端的锅前端背,干嘛拉着后端一起背?(手动狗头
oatw
2020-03-10 18:02:49 +08:00
@FallenTy 下联:后端完全不能信任前端!
wysnylc
2020-03-10 18:34:55 +08:00
@freakxx #13 脱裤子+1
jim9606
2020-03-10 18:56:05 +08:00
不需要,现在的趋势是不要求重复密码( PIN )但提供查看星号的按钮
最佳实践是前端完成强度检查,只发送经过 KDF(Key Derivation Function)的密码(也就是 PIN 不离客户端),所有后端只使用 KDF 后的密码也就是后端也不知道 PIN 是啥。
不过我是没法奢望厂商采用最佳实践了,通常都是用 RSA 加密 PIN 后传服务器再解密。
有能力发布什么“弱密码统计”的几乎是没按照最佳实践做的
Cbdy
2020-03-10 19:09:46 +08:00
多输一遍是防呆的,不用传到后
ayase252
2020-03-10 19:19:01 +08:00
背锅论有点可笑....本身是纯前端的问题为什么要扔到后端。多一个环节就多一个出错的可能啊
xuanbg
2020-03-10 21:16:09 +08:00
@jim9606 弱密码统计这个你可以用反向思维,就是枚举出若干种弱密码(基本上就是通用的密码攻击字典),然后用这些弱密码按规则生成 KDF 后去碰撞,碰到的就是弱密码。不需要给密码还原为原始的 PIN。
xuanbg
2020-03-10 21:20:54 +08:00
@xuanbg
做一张弱密码表 t_key
select u.* from t_user u join t_key k on k.key = u.pw;
这个结果就是全部的弱密码用户。
wleexi
2020-03-10 21:22:39 +08:00
后端是兜底操作。

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

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

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

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

© 2021 V2EX