python版 google密码认证器
#!/usr/bin/env python # -*- coding:utf-8 -*- import hmac, base64, struct, hashlib, time def calGoogleCode(secretKey): """ :param secretKey: 16个字符 :return: """ input_time = int(time.time())//30 key = base64.b32decode(secretKey) msg = struct.pack(">Q", input_time) googleCode = hmac.new(key, msg, hashlib.sha1).digest() o = ord(str(googleCode)[19]) & 15 googleCode = str((struct.unpack(">I", googleCode[o:o+4])[0] & 0x7fffffff) % 1000000) if len(googleCode) == 5: # 如果验证码的第一位是0,则不会显示。此处判断若是5位码,则在第一位补上0 googleCode = '0' + googleCode return googleCode print(calGoogleCode('EKPHIPYDEN7RAAAB'))
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步