TOTP:Time-Based One-Time Password Algorithm,基于时间同步的一次性口令,动态口令
技术标准:https://tools.ietf.org/html/rfc6238
参考链接:
https://blog.csdn.net/LVXIANGAN/article/details/73775969
https://www.cnblogs.com/loveyou/p/6989064.html
使用阿里云身份宝(或者Google Authenticator)时间同步实现OTP动态口令
如上图,是一种基于时间同步的OTP计算方式,是通过客户端和服务器持有相同的密钥并基于时间基数,服务端和客户端采用相同的Hash算法,计算出长度为六位的校验码。当客户端和服务端计算出的校验码相同是,那么验证通过。
由于客户端需要存储密钥和计算校验码的载体,阿里云的身份宝(或者Google 的Authenticator)提供了手机端的APP进行密钥存储和校验码计算。下面我们以这两款客户端为例,实现在应用采用OTP进行权限验证,主要流程如下图: