下面简单介绍下“两步验证”(Google Authenticator)的相关知识,懂的大大可以跳过。
Google Authenticator是谷歌推出的一款动态口令工具,旨在解决账户遭到恶意攻击的问题,只需在手机安装密码生成应用程序,就可以生成一个随着时间变化的一次性密码,用于帐户验证、保护用户的信息安全,而且这个应用程序不需要连接网络即可工作。
与传统单因子密码不同,其采用的是更安全的双因子(2FA two-factor authentication)认证。FA是指结合密码以及实物(信用卡、SMS手机、令牌或指纹等生物标志)两种条件对用户进行认证的方法。其采用的算法是TOTP(Time-Based One-Time Password基于时间的一次性密码),也称时间同步的动态密码。目前这个算法已经写入国际标准 RFC 6238,并且多被用于双因素认证(2FA)系统。
其核心内容包括以下三点:
1、共享密钥(一个比特序列),共享密码用于在手机端上建立账户。密码内容可以是通过手机拍照二维码或者手工输入,并会被进行base32加密。
2、时间输入,输入的时间值来自于手机本身,一旦我们获得密钥后,就无需与服务器再进行通信了。但是最重要一点是务必确保手机上的时间是正确的,因为往后的步骤服务器会多次重复使用之前得到的时间值,服务器只会认准这个值。进一步说,服务器会比对所有提交的令牌以确认哪一个是你输入并提交的。
3、签署函数,签署所使用的方法是HMAC-SHA1。HMAC的全称是Hash-based message authentication code(哈希运算消息认证码),以一个密钥和一个消息为输入,生成一个消息摘要作为输出,这里以SHA1作为消息输入。使用HMAC的原因是:只有用户本身知道正确的输入密钥,因此会得到唯一的输出。
两步验证
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 为了改进Android的安全问题,Google在Android系统中引入了谷歌验证应用(Google Authen...
- Google Authenticator开源版主页 https://github.com/google/googl...