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