谷歌Google authenticator 整合到JAVA项目

前言:

     最近项目中,需要使用到谷歌的验证码,就采用了这种.....
     其实还可以使用reCaptcha来做,不过移动端还是采用authenticator 会方便点,

    如果想了解reCaptcha,移步到这里:https://blog.csdn.net/baidu_38990811/article/details/86530350

原理:

1.客户端每30秒使用密钥『DPI45HKISEXU6HG7』和时间戳通过一种『算法』生成一个6位数字的一次性密码

2.用户登陆时输入一次性密码『684060』。

3.服务器端使用保存在数据库中的密钥『DPI45HKISEXU6HG7』和时间戳通过同一种『算法』生成一个6位数字的一次性密码。大家都懂控制变量法,如果算法相同、密钥相同,又是同一个时间(时间戳相同),那么客户端和服务器计算出的一次性密码是一样的。服务器验证时如果一样,就登录成功了。

思路:

1.手机下载Google authenticator 验证器

2.在app界面上,无论是扫码还是手动添加都行,我是直接手动添加,
测试的话,账号随便输入,正式的话,我都是采用用户手机号,秘钥是16位,生成方法,在下面,

谷歌Google authenticator 整合到JAVA项目_第1张图片

谷歌Google authenticator 整合到JAVA项目_第2张图片

你可能感兴趣的:(#,JAVA实现功能,google,authenticator,谷歌,验证,验证码)