用户绑定新手机号流程,有没有原型简单、使用方便、又稍微安全的流程?

2018-02-28 23:19:11 +08:00
 xiangyuecn

用户用手机号+验证码注册了用户,如果需要更改手机号了(只考虑系统进行身份验证只有手机号短信验证这一种情况,其他的密保、邮箱、身份证等等高级的不用考虑了),目前我想到了以下几种情况和处理流程:

1、原手机号能收到验证码:

这个简单,原手机号接收修改手机号的验证码,验证通过后授权进入绑定新手机号

2、原手机号不能收到验证码

这个就复杂了,系统怎么确认你就是你:

a)通过某种用户历史数据对用户进行验证

比如选择几个自己好友,勾选几个买过的商品,邀请几个好友来进行验证,比较常见,前提是这个账号有有黏性的历史数据

b)记得密码

输入密码,验证通过后获得初步信任,然后:

·走 a)方法,算是升级版本

·经过算法计算出的周期(赎回周期)后可以重设手机号

c)不记得密码

没有想到能用的流程;常见场景:忘记密码,想重置密码(需要手机验证码,手机号又注销了,好尴尬)

x)人工重设手机号,更加复杂的判断你就是你

没有想到能用的流程;不过基于简单考虑就基本不考虑了

谁来分享点干货~

2776 次点击
所在节点    程序员
13 条回复
lslqtz
2018-02-28 23:33:53 +08:00
我觉得 a 好一点
没有历史数据的话可以考虑直接删号了。。。
lslqtz
2018-02-28 23:34:32 +08:00
嗯...手机号和身份证对比实名认证?有接口
abcbuzhiming
2018-02-28 23:44:56 +08:00
a 方式,选择好友和勾选购买商品是不安全的,理论上可能爆破。邀请好友验证这个,曾经有人利用过这点预先埋伏狙击某些人的 QQ 靓号(预先加好友,潜伏)。另外就像你说的,万一没有历史数据呢
所以 a 方式一般只用在验证一些安全不是很高的场合,比如发现用户从别的 ip 登录,但是密码是正确的时候

1 方式是最安全的,但是有时不现实

目前我见过的逻辑上推敲比较安全的办法是,要求用户重新登录,在能正常登录的状况下,才允许直接用新手机号码代替老手机号码,并且,当手机号码被修改后,老手机号码会收到一条短信提示,手机号码被替换,并且,一般设定 24-48 小时内,用户只要登录后台,是可以取消手机号码切换的(重新切换回老的),并且,在这个时间之内,新手机号码不能被用于接受修改密码短信。

以上这个模型是 QQ 的手机号码切换流程,我推敲过,觉得基本没有漏洞,恶意者就算窃取到密码,只要 qq 的用户在收到短信提醒后立即登录安全中心,取消手机号码切换并理解更改密码,恶意者的攻击就失败了,当然,如果 qq 用户傻逼到收到短信提醒还是无动于衷,错过了安全 24 小时,那就。。。。没救
abcbuzhiming
2018-02-28 23:46:22 +08:00
补充一下,C 方式基本就没救了,一般现在都不考虑用户完全不设置邮箱和手机的救援方式,自己重新注册去吧
imn1
2018-03-01 00:03:52 +08:00
写了那么多,完全无视 2FA 了?
nciyuan
2018-03-01 00:48:00 +08:00
给用户授信如果是手机 app 的话,可以接入安卓原生的指纹 API,或者和各大应用商谈个合作,当然是不能把识别是哪一个手指。然后可以你说的 1.和 2.ab 步,
或者推荐#2 花钱用身份证号对手机的 API
再或者还有很多数据比如 ip 的 C 段,手机 IMEI,手机号(安卓可以直接调取,但不是每个 OS 都可以),或者位置信息,都是鉴别用户的一种方式
yksoft1
2018-03-01 01:27:47 +08:00
密码丢失、没有二次验证手段如密保器之类的前提下,其实最靠谱的还是人工,其次身份证照片+人脸识别+手机实名信息(这样虚拟运营商的手机、国外手机就没办法了),然后才是其他方法比如使用预留的生物信息等。
densuc
2018-03-01 06:56:08 +08:00
貌似可以学习微软 在改变密保手机时候 存在一个保留期
给原手机发送短信 然后三十日内可以撤销
xiangyuecn
2018-03-01 10:15:58 +08:00
@densuc @abcbuzhiming 俩位提到的修改手机号后给原手机一个保留周期,也是一个靠谱的思路哈
abcbuzhiming
2018-03-01 13:15:24 +08:00
@imn1 2FA 的成本贼高,又麻烦,引入额外硬件,你看互联网行业有几个引入的
@yksoft1 这个的前提是在注册时要求人提交身份证信息,照片,手机实名,现在很多人,给个身份证都不愿意,别说照片了。而且安全机制最好不要搞的太麻烦,否则推广就是个大问题
yksoft1
2018-03-01 13:49:50 +08:00
@abcbuzhiming 腾讯很早以前( 2010 ?)就有密保器了。。
imn1
2018-03-01 14:08:36 +08:00
@abcbuzhiming
2FA 好多都有吧,没有的只能说不重视而已
我 Authy 上面都有 30+个了,还没算 yandex、yahoo!jp 这些用自家验证器的
而且 2FA 不一定就是验证器,例如 twitter 可以用 app 验证登录的
xiangyuecn
2018-03-03 09:17:57 +08:00
@abcbuzhiming 对的,不想设计的太复杂,不然开发起来也费力点,偷下懒~

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

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

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

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

© 2021 V2EX