github.com/jincm/wesharechain@v0.0.0-20210122032815-1537409ce26a/server/block/util/common_util.py (about) 1 # coding=utf-8 2 3 import uuid 4 import time 5 from util import crypto_rc4 6 from random import randint 7 8 9 def create_id(): 10 return uuid.uuid4().get_hex() 11 12 13 def create_verifycode(): 14 """ 15 生成注册验证码 16 :return: 17 """ 18 return "888888" 19 verify_code = ''.join((str(randint(0, 9)) for _ in range(6))) 20 return verify_code 21 22 23 def gen_token(sign, time): 24 """ 25 根据签名生成token 26 :param sign: 签名内容 27 :param time: 签名有效时长 28 :return: 29 """ 30 content = ":".join((sign, str(time))) 31 token = crypto_rc4.encrypt(content, crypto_rc4.SECRET_KEY) 32 return token 33 34 35 def dgen_token(token): 36 """ 37 解析token 38 :param token: 39 :return: 40 """ 41 _ = crypto_rc4.decrypt(token, crypto_rc4.SECRET_KEY) 42 _ = _.split(":") 43 if(len(_)!=2): 44 return "", -1 45 sign, time = _.split(":") 46 return sign, int(time) 47 48 49 50 def send_vrifycode(verify_code): 51 pass 52 53 def validate_token_time(token, timeout=18000): 54 sign, token_time = dgen_token(token) 55 interval_time = time.time() - token_time 56 if interval_time > timeout: 57 return True 58 return False