#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved. @AUTHOR: ASJRD018 @NAME: AnsjerFormal @software: PyCharm @DATE: 2019/6/1 17:25 @Version: python3.6 @MODIFY DECORD:ansjer dev @file: tkObject.py @Contact: chanjunkai@163.com """ import base64 import urllib.parse from random import Random class tkObject(object): def __init__(self, tk='', rank=0): self.data = '' self.rank = rank self.parseUid(tk) def parseUid(self, tk): try: c = base64.b64decode(tk) rank = self.rank c = c[rank:-1*rank] c = urllib.parse.unquote(c.decode('utf-8')) c = base64.b64decode(c) data = c.decode('utf-8') self.data = data except Exception as e: print(repr(e)) def encrypt(self, data): s = data.encode() s = base64.b64encode(s) rank = self.rank startStr = self.randomParam(rank=rank) endStr = self.randomParam(rank=rank) s = '{startStr}{s}{endStr}'.format(startStr=startStr, s=s.decode('utf-8'), endStr=endStr) s = base64.b64encode(s.encode()) s = s.decode('utf-8') return s def randomParam(self, rank): characterSet = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsT' \ 'tUuVvWwXxYyZz0123456789' length = len(characterSet) - 1 random = Random() ss = '' for index in range(rank): ss += characterSet[random.randint(0, length)] return ss # tkobj = tkObject(tk='',rank=3) # PP = tkobj.encrypt(data='154390905041313800138000') # print('encode_data:') # print(PP) # print('decode_data:') ####################################################### # ttk = '3Zerjt9SIO9Etj7QYnf267aAFq3GobBh' # tkobj = tkObject(tk=ttk,rank=3) # data = tkobj.data # print(data)