使用pywin32进行加解密

1086阅读 0评论2012-11-02 yingfengstart
分类:

今天花了几个小时研究python的加解密,需求是字符串加密,然后可以进行解密。
md5是肯定不适用了,不想了。
先是看了ctypes,有位老大推荐我去看这篇文章,,不过在windows下跑不起来,我也没想去看代码,感觉不适用我。
之后花时间去研究google的keyzlar,全部都是几个字的介绍,没几篇有实例了,也没兴趣了。
然后又去看了crypto,这个不错,推荐大家看一下,python des加密,我感觉也很好用。只是加密出来的是binascii,用起来麻烦。
最后就想回到base64或其他加密了,忽然找到使用pywin32的加密方法,真是简单啊,代码才几行,比crypto都简单,马上去sf.net下了pywin32-212.win32-py2.5.exe,我用2.5啦,现在最新是pywin32 212,好象213也出来了,可是SF上只有212下的。
装好后代码直接能用了,我贴一下。
 
 

import win32com.client
EncryptedData = win32com.client.Dispatch('CAPICOM.EncryptedData')
EncryptedData.Algorithm.KeyLength = 4
EncryptedData.Algorithm.Name = 1
EncryptedData.SetSecret('abcdfjfi')
EncryptedData.Content = 'Hello world'
s = EncryptedData.Encrypt()

print s #加密
EncryptedData.Decrypt(s)
print EncryptedData.Content #解密

这里,algorithm.keylegnth和algorithm.name可以自己调,不过好象只能从0到5,name只可以2到4,setsecret就是密钥啦。

准备写个函数封起来,收集好,以后我用起来就方便了。

上一篇:python学习笔记
下一篇:用python实现ping的源代码