import pyDes
import base64
class DES():
#初始化key,iv
def __init__(self,key,iv):self.iv=iv
self.key=key
def encrypt(self,data):
k=pyDes.des(self.key,pyDes.CBC,self.iv,pad=None,padmode=pyDes.PAD_PKCS5)
d=k.encrypt(data)
d=base64.encodestring(d)
return d
def decrypt(self,data):
k=pyDes.des(self.key,pyDes.CBC,self.iv,pad=None,padmode=pyDes.PAD_PKCS5)
data=base64.decodestring(data)
d=k.decrypt(data)
return d
#该函数不需要key,iv
def nokey(self,data):d=base64.encodestring(data)
return d
>>> test=DES('abcdefgh','12345678')
>>> data=test.encrypt('我是江永道,我的QQ是962584902')
>>> print data
pvobHiF+fq9YnKgW1/WJf7K6x6fcD624ZZ99FfgH63c=
>>> print test.decrypt(data)
我是江永道,我的QQ是962584902
>>> data=test.nokey('我是江永道,我的QQ是962584902')
>>> print data
ztLKx72t08C1wCzO0rXEUVHKxzk2MjU4NDkwMg==
>>> print base64.decodestring('ztLKx72t08C1wCzO0rXEUVHKxzk2MjU4NDkwMg==')
我是江永道,我的QQ是962584902
>>>