# -*- encoding: utf-8 -*-"
# @Module : google auth
import hmac, base64, struct, hashlib, time
def get_hotp_token(secret, intervals_no):
key = base64.b32decode(secret, True)
msg = struct.pack(">Q", intervals_no)
h = hmac.new(key, msg, hashlib.sha1).digest()
o = ord(chr(h[19])) & 15
h = (struct.unpack(">I", h[o:o + 4])[0] & 0x7fffffff) % 1000000
return h
def get_totp_token(secret):
return get_hotp_token(secret, intervals_no=int(time.time()) // 30)
value = get_totp_token("rqftuaujxss5rn6o")
print(f"{str(value).zfill(0)}")
08-25
4364
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交