1
jadec0der 2020-02-24 12:08:48 +08:00 1
1. 限时几分钟的东西不怕拖库
2. 随机生成的东西,不存在泄露用户的密码的可能 但是 hash 加盐是个好习惯,例如,可以防止有数据库权限的工程师登录用户账号 |
2
cxyfreedom 2020-02-24 12:21:59 +08:00
直接缓存 kv 手机号和验证码,设置过期时间
|
3
chinvo 2020-02-24 14:45:11 +08:00 via iPhone 1
这种验证码不通常是 TOTP/HOTP 么
|
4
virusdefender 2020-02-24 15:05:28 +08:00
楼上正解,其实不用存储,推算就可以了
|
5
muskill 2020-02-24 15:42:43 +08:00
这种东西还要存数据库? 用户量上来了,不崩溃算我输,用 cache 这种中间件来解决多好,例如 redis 什么的 cache
|
6
danmu17 2020-02-24 16:06:07 +08:00
@jadec0der 哈哈,真是每天都能撞见各种不懂装懂的。。。你说的最后一句的槽点真是多到了我都不知道应该从哪里吐槽的程度了。。。
|
7
iConnect 2020-02-24 16:23:52 +08:00 via Android
session 临时存储就可以了
|
8
Tokin 2020-02-24 16:51:08 +08:00
redis 临时存一下就好,没必要存数据库里,失效之后全是冗余。。。
|
10
danmu17 2020-02-25 02:23:00 +08:00
@jadec0der 看你态度还行我就再次好心免费做个老师,你最后一句话处处都是槽点,先拿最最最基本的来说吧,登录账号用的不是密码,而是放在数据库里的 session/token/uuid/ip,密码是用来获取或创建这些东西用的,希望你的水平够能够看得懂。。。一个有数据库权限的工程师是绝对不需要用户密码来登录用户帐号的。。。甚至目前的 botnet 都不偷密码了,他们只偷卡号,和 session。
|
11
danmu17 2020-02-25 02:41:50 +08:00 1
@jadec0der hash 唯一的用处就是不明文记录用户密码,因为密码本来就不是登录账户所需要的东西,他是验证用户身份用的,而且事实上验证用户身份也完全不需要密码,所以就用 hash 来验证用户身份了。对于有数据库权限的工程师而言,明文的密码也不是用来登录用户账号的,而是用来登录用户在其他网站的账号的。这些都是非常基本的东西,可惜现在的 V2EX 上唯一会好心教你们这些小白的据我所知就只剩下因为肉身翻墙长期找不到人说中文的我了。。。
|
13
jadec0der 2020-02-25 03:22:29 +08:00 1
@danmu17
@cnskis 哦,我懂了,可能是因为你们的公司不够大,所以才会有都有数据库权限了还偷账号密码做什么的疑惑。 我们公司几十万员工,差不多 7W 工程师,每个人都有一些数据库权限,但是只有极少数人能登录用户的账号。所以做 security review 的时候基本思路是先做 data classification,然后画 data flow,最后做 threat model,减少攻击面。 就这件事来说,如果短信验证码是 critical data (我司 critical data 有 26 类,绝非只有卡号和 session),那就必须要加密传输、加密保存。短信验证码除了短信接口没有其他系统需要知道明文内容,所以可以生成出来就用短信 service 的公钥加密,或者直接让短信 service 生成,再返回一个 salt 和 hash。这一套做下来收益并不大,也就是减少了十几个人登录用户账号的可能性,但是如果一个几十万人的公司不在每一个细节上都认真处理的话,那就像筛子一样,处处漏风。 |
14
jadec0der 2020-02-25 03:24:26 +08:00
@danmu17 另外,我也在国外。在国外不是你暴躁的理由,寂寞的话找个女朋友,别在论坛上到处喷人 ➡️ https://www.v2ex.com/t/647128
|
17
danmu17 2020-02-25 04:47:10 +08:00
@jadec0der 菜鸡就是菜鸡。。。“短信验证码除了短信接口没有其他系统需要知道明文内容,所以可以生成出来就用短信 service 的公钥加密,或者直接让短信 service 生成,再返回一个 salt 和 hash。”,果然又说出了槽点无数的话。。。这次就不做你老师了,mark 一下以后无聊的时候看着笑笑。。。
|
19
qinrui 2020-02-25 05:01:16 +08:00 via iPhone
为什么工程师会有登录用户账号权限?
|
22
KallyDev 2020-02-25 05:56:56 +08:00 via iPhone
@danmu17 看了一下你的历史回复,也算是理解为什么看到 #6 上来就怼,#10 高人一等时会产生莫名其妙的感觉。敢情你不是正在怼就是在怼的路上,在 V 站发言前请点击关于,记住“ 保持对他人的友善”八个字,接楼上 Block + 1
|
24
cnskis 2020-02-25 11:34:50 +08:00
|
25
j0hnj 2020-02-25 12:41:47 +08:00 via iPhone
我说怎么看不到那个人的回复,原来我早就 block 了(~_~)
|
26
rrZ2C 2020-02-25 13:47:18 +08:00
真的是..... 承受 他这种 不是半桶水 不是菜鸡,即好心又免费一辈子永远比我懂的老师 。
|