google authenticator 一次性验证码TOTP java 代码实现

摘要: 越来越多的应用系统,开启了双重因子验证,最典型的就是银行,在交易的时候,还会发送给你一个验证码,一般通过短信方式,这个验证码是一次性验证码,而且一般有效期很短, 这就是一个典型的OTP, 关于OTP 的算法有很多种,这里是用的google authenticator, 基于时间的OTP, 所以也叫TOTP. google authenticator 是开源的,可以下载代码参考。我这里主要是想如果要改成自己的用的OTP, 需要服务端也能实现类似的算法。所以在github 上找到了这个开源的东西

越来越多的应用系统,开启了双重因子验证,最典型的就是银行,在交易的时候,还会发送给你一个验证码,一般通过短信方式,这个验证码是一次性验证码,而且一般有效期很短, 这就是一个典型的OTP, 关于OTP 的算法有很多种,这里是用的google authenticator, 基于时间的OTP, 所以也叫TOTP. google authenticator 是开源的,可以下载代码参考。我这里主要是想如果要改成自己的用的OTP, 需要服务端也能实现类似的算法。所以在github 上找到了这个开源的东西。

以后难得去找,这里把代码整理在这里下载:
google authenticator totp java source code

其他参考文章:
[RFC6238]: https://tools.ietf.org/html/rfc6238
[gauth]: https://code.google.com/p/google-authenticator/
[tgb]: http://thegreyblog.blogspot.com/2011/12/google-authenticator-using-it-in-your.html?q=google+authenticator
[serviceLoader]: http://docs.oracle.com/javase/6/docs/api/java/util/ServiceLoader.html
[SecureRandom]: http://docs.oracle.com/javase/8/docs/api/java/security/SecureRandom.html
[sr-algorithms]: http://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#SecureRandom
[githubIssues]: https://github.com/wstrange/GoogleAuth/issues

上一篇: 关闭浏览器网页或者tab页时注销session的方法,兼容IE,FIREFOX,CHROME
下一篇: java中对BigDecimal 进行格式化的一个小工具类
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章或者资源来源于互联网, 有时候很难判断是否侵权, 若有侵权, 请联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布无版权争议的 文章/资源.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号