您的位置:首页 > 其它

pytnon DES加密CBC模式

2015-07-18 14:05 393 查看
import pyDes

import base64

class Crypt(object):

@classmethod

def des_base64_encrypt(cls, text, key, iv, code='GBK'):

""" 基于DES和base64的加密算法

:param text 加密串

:param key des加密的密钥

:param iv des的向量

:param code text加密时的编码

"""

# 对text进行转码 --> GBK

text = text.decode('utf-8').encode(code)

des = pyDes.des(key, pyDes.CBC, iv, padmode=pyDes.PAD_PKCS5)

encrypt_text = des.encrypt(text)

return base64.encodestring(encrypt_text).strip()

@classmethod

def des_base64_decrypt(cls, text, key, iv, output_code='utf-8'):

""" 基于DES和base64的解密算法

:param text 解密的文本

:param key des加密的密钥

:param iv des的向量

:param output_code text解密后输出的编码

"""

des = pyDes.des(key, pyDes.CBC, iv, padmode=pyDes.PAD_PKCS5)

decode_text = des.decrypt(base64.decodestring(text))

decode_text = decode_text.decode('GBK').encode(output_code)

return decode_text
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: