使用两步验证来保证帐号安全

在用于帐号安全的各种措施中,两步验证(2 Step Verification 或者 2 Step Authentication)大概是性价比最高的了。只需要有一个智能手机即可使用,且不需要支付任何费用。这在两三年前还是一个新鲜的东西,而现在,几乎每个注重安全的网站都会提供两步验证。

使用两步验证之后,除了常规的密码之外,在登录的时候还需要一个额外的代码。这个代码通常为 6 位数字组成,由手机软件生成,根据时间的不同而不同,每 30 秒更新一次。也就是说,手机软件上生成的代码,只要在 30 秒内输入到网站的登录验证中,就会被认为是有效的。这样一来,只要你的手机在身边,即使别人知道了你的密码,但还是没办法得到两步验证的代码,就没法登录你的帐号。

开启两步验证的方式,通常网站的设置中会提供一个二维码,在手机里装上并打开 Google Authenticator,扫描二维码就可以添加一条记录。这条记录会显示为一串 6 位数字,每 30 秒更新一次。网站在你扫描完之后,通常会要求立即输入一次代码,以确保你的操作没有问题。设置完之后,以后每次登录(或进行其它重要操作的时候),网站就会提示输入两步验证的代码,这时候拿出手机,输入当时的代码即可。

两步验证的代码,虽然乍看上去只有 6 位,一共只有一百万种组合,很容易就能破解的样子。其实不然。开启两步验证的时候,手机中记录的实际上是一个种子(Key),然后根据种子加上时间,实时生成 6 位数字代码。而通过这 6 位数字代码,是没办法反向推导出种子的。所以,即使这 6 位数字代码被别人知道了,只要过了 30 秒有效期,之后他就再也没办法登录你的帐号。即使他得到了成千上万个代码,也是没有办法推导出种子的。

当然,如果是网站的服务器被黑客攻击了,那有没有两步验证都一样,这个风险不在本贴讨论范围之内。

开启两步验证也有麻烦的地方,就是每次登录都需要打开手机,如果碰巧手机不在身边,或者手机没电的话,可能会耽误事。但是相比起密码被盗之后的财产损失来说,这点麻烦算不了什么。


2 条评论 添加

    1. 它是基于SHA256加密算法的,理论上当然有可能,比如花个几十万年暴力破解,或者研究出有效的碰撞方法(像当年的MD5那样)或者证明NP=P,但是相关论文已经有差不多十年历史了,暂时还没有有效的破解方法。暂时可以认为是安全的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注