1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- #!/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: ETkObject.py
- @Contact: chanjunkai@163.com
- """
- import base64
- import urllib.parse
- from random import Random
- class ETkObject(object):
- def __init__(self, etk):
- self.uid = ''
- self.parseUid(etk)
- def parseUid(self, etk):
- try:
- c = base64.b64decode(etk)
- c = c[2:-2]
- c = urllib.parse.unquote(c.decode('utf-8'))
- c = base64.b64decode(c)
- uid = c.decode('utf-8')
- if len(uid) == 20:
- self.uid = uid
- print(uid)
- elif len(uid) == 14:
- self.uid = uid
- print(uid)
- except Exception as e:
- print(repr(e))
- def encrypt(self,data):
- s = data.encode()
- s = base64.b64encode(s)
- startStr = self.randomParam()
- endStr = self.randomParam()
- 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):
- characterSet = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsT' \
- 'tUuVvWwXxYyZz0123456789'
- length = len(characterSet) - 1
- random = Random()
- ss = ''
- for index in range(2):
- ss += characterSet[random.randint(0, length)]
- return ss
- # etkObj = ETkObject(etk='')
- # PP = etkObj.encrypt('HLK7EJ2VYLNHHUMG111A')
- # print('encode_data:')
- # print(PP)
- # print('decode_data:')
- # eobj = ETkObject(etk='T1dha3hDUkZOVk9UVTBOMDVVVWxOTlJqRXhNVUU9U2w=')
- # uid = eobj.uid
- # print(uid)
|