针对登录问题时,就短信验证码的考虑做了点记录。
Q1:除了登录名与密码,为什么要考虑使用短信验证码登录?
本质还是提高可用性。
1、用户不方便使用自己的真正密码登录,例如在咖啡馆、图书馆或网吧。
2、忘记密码后重置较为繁琐,安全级别再强一点的还会遇到不允许跟历史密码重复。
3、节省输入密码的工作量,特别是移动设备上输入特殊字符,各种大小写字符组合并不方便。
4、为帐户安全增加额外验证。LastPass,1Password 或 KeePass 这样的密码管理软件各有不足。
5、不是所有用户都可以使用/愿意使用 Facebook 登录,但是短信具有普适性。
Q2:手机验证码有没有问题?
仅仅依靠SMS OTP就作为身份验证,虽然方便,但是安全性将面临很大挑战,特别是在金融行业。
业务设计的环节,存在一些比较明显的问题:
1、手机验证码不能定位到人。比如你搜索:How to Send and Receive Text Messages without a Phone or SMS。
2、手机容易被恶意软件攻击。著名案例有 ZitMo、SMS Tracker 等。
3、短信通道堵塞接收不到短信,或者是被拦截。
4、手机不在身边/无法使用,例如旅行时。
5、比如座机或者使用基于Web 的 (VOIP) 电话服务,就没法接收验证码。
Q3:移动端趋势?
用生物识别代替PIN、OTP。比如人脸、指纹、声音与虹膜。
英特尔身份验证包含了从个人识别码到蓝牙、地理位置与指纹识别的所有内容,直接在硬件中加强了安全强度,也可以在移动设备上应用。
具体的案例在案例篇中记录。
参考阅读:Intel embeds multi-factor security into enterprise Core, vPro processors