密码要求字符是什么意思 检查密码要求是什么意思( 二 )


你知道的信息:额外的个人认证码(PIN)、密保问题你拥有的物体:信用卡(购物)、手机号(短信)、密码器(银行)你个人的特征:人脸识别、声纹、指纹较为普遍使用的双因子认证方式主要是「认证码应用」和「短信验证码」这两种 。它们都属于第二类「你拥有的物体」 。也就是说 , 借助你拥有的应用或手机号 , 你可以更好地证明你拥有访问账户的权限 。
认证码应用目前 1Password 同时提供了密码管理和双因子认证 , 而 Lastpass 则需要配合 单独的双因子认证应用 来管理 。此外 , 也有一些独立的双因子应用 , 如 Authy、Google 身份验证器以及 Microsoft Authenticator 。
这些应用提供的双因子认证是基于 TOTP(基于时间的一次性密码算法) 来实现的 , 已经成为 RFC6238 标准 。它的运作过程可以分为「配置」和「使用」两部分来解释 。
【密码要求字符是什么意思检查密码要求是什么意思】配置账户时:
服务器生成随机的密钥 , 如 4M7IFFT3Y45BLUXTY7WY7DJ3UA通过彼此之间相对可信的通道进行之一次通信 , 现在一般用二维码 , 这个二维码能够传递服务名称、账户名称、随机密钥客户端根据收到的信息 , 根据随机密钥和当前的时间 , 根据特定算法计算出一个 6 位的认证码用户根据客户端上的显示 , 将 6 位认证码输入给服务器 , 服务器同时使用相同算法计算出认证码 , 核对是否一致使用双因子认证时:
客户端根据之前记录的随机密钥和当前的时间 , 计算出 6 位认证码服务器同时计算出认证码用户根据客户端的显示 , 将认证码输入给服务器 , 服务器核对

密码要求字符是什么意思  检查密码要求是什么意思

文章插图
Google 和 Microsoft 的认证码应用
由此可见 , 这种认证是基于:
事先协商的密钥核验时的时间因此 , 这种认证码是会随着时间变化的 , 并且对每个账户都是不同的 。而计算认证码的算法包含了 哈希 , 因此从认证码逆推出原始密钥几乎是不可能的 。
值得指出的是 , 1Password 同时兼顾了密码管理器和认证码应用 , 还可以收纳证件、会员信息、信用卡、服务器等内容 , 所以很容易造成 单点故障 的困局 。
短信验证码国内使用认证码应用的比较少 , 一方面因为需要手动配置 , 对用户有一定技术要求 , 另一方面普遍使用的手机短信验证码由于手机号码实名制 , 显得更加符合国情 , 也更加便于管理 。
然而针对短信验证码的攻击非常频繁 , 去年八月甚至出现了使用黑科技 强行拦截短信验证码并盗取支付宝 的惊人案例 , 具体操作手法众说纷纭 , 但是短信作为一种保护信息安全的双因子认证显然显得不大可靠了 。
诚如这份检查列表提供的 其中一个资源链接 中所说:
" *** S has turned that 'something you have' into 'something they sent you,'" says Zdziarski. "If that transaction is happening, it can be intercepted. And that means you're potentially at some level of risk."
大概翻译过来是:短信已经从「你拥有的物体」转变成了「他们发送给你的东西」 , 这样就可能被窃听 , 也就有了潜在的危险 。
由于 2G 的安全性远低于 4G 通信 , 因此也有窃听者强行令手机切换到 2G 通信 , 从而更加容易地窃取短信 。此外 , 现在的技术除了轻而易举地给手机发送伪造的短信 , 也可以骗取短信发送方的信任 , 而让发送方把本应发给用户的短信发送到你这边来——窃听、拦截、篡改 , 一应俱全 。
鉴于当前国内移动应用的素质良莠不齐 , 许多应用请求了短信权限 , 而后有意无意地把数据上传到服务器中 。上传的过程如果不加密 , 那么很可能还会引入其他窃听者 。
公开宣称需要短信权限甚至是经用户同意上传短信数据的应用有很多 , 比如 iOS 和几乎所有 Android 手机系统都会提供的云同步服务;也有很多应用声称只是为了「便于用户登录时自动输入验证码」而索取短信权限 。是否要给予短信权限 , 在于每个人自己的权衡 。
除了软件层面 , 由于把安全因子捆绑在手机这个每时每刻都在使用的设备上 , 要是手机被偷或不小心遗留在了公共场所 , 哪怕只是被人看了一眼屏幕 , 都可能导致验证码的泄露 。所幸几乎所有手机系统都提供了「在锁屏界面不显示短信内容」的选项 , 我强烈建议把它打开 , 以免手机在没有解锁时泄露重要的短信信息 。

推荐阅读