我的加密模块

# -*- coding: utf-8 -*-
# @Time    : 19-1-11 上午9:43
# @Author  : Felix Wang

from hashlib import md5, sha1, sha512


def encryption(data):
    flag = bytes('@#$%', encoding='utf8')
    if type(data) == type(str()):
        byte = flag + bytes(data, encoding='utf8') + flag
    # print(str(byte,'utf8'))
    elif type(data) == type(bytes()):
        byte = flag + data + flag
    else:
        raise TypeError('data must be str or bytes')

    return md5(byte).hexdigest()


def str_encrypt(data):
    """
    使用sha1加密算法,返回str加密后的字符串
    """
    flag = bytes('@#$%', encoding='utf8')
    if type(data) == type(str()):
        byte = flag + bytes(data, encoding='utf8') + flag
    # print(str(byte,'utf8'))
    elif type(data) == type(bytes()):
        byte = flag + data + flag
    else:
        raise TypeError('data must be str or bytes')

    sha = sha1(byte).hexdigest()
    sha5 = sha512(bytes(sha, encoding='utf8')).hexdigest()

    return encryption(sha5)


print(str_encrypt('你好'))
print(str_encrypt(bytes('你好', encoding='utf8')))
print(str_encrypt(open('logo.png', 'rb').read()))
原文地址:https://www.cnblogs.com/felixwang2/p/9024974.html