pyDES http://sourceforge.net/projects/pydes/是完全用 python 编写的 DES 和 Triple-DES 实现。
这是一个简单且可移植的示例,它应该足够安全,可以满足基本的字符串加密需求。只需将 pyDES 模块放在与您的程序相同的文件夹中并尝试一下:
发件人的计算机
>>> from pyDES import * # pyDes if installed from pip
>>> ciphertext = triple_des('a 16 or 24 byte password').encrypt("secret message", padmode=2) #plain-text usually needs padding, but padmode = 2 handles that automatically
>>> ciphertext
')\xd8\xbfFn#EY\xcbiH\xfa\x18\xb4\xf7\xa2' #gibberish
收件人的计算机
>>> from pyDES import *
>>> plain_text = triple_des('a 16 or 24 byte password').decrypt(')\xd8\xbfFn#EY\xcbiH\xfa\x18\xb4\xf7\xa2', padmode=2)
>>> plain_text
"secret message"
您可能会收到以下错误Python3
从代码收件人的计算机
ValueError: pyDes can only work with encoded strings, not Unicode.
from pyDes import *
a = b')\xd8\xbfFn#EY\xcbiH\xfa\x18\xb4\xf7\xa2'
plain_text = triple_des('a 16 or 24 byte password').decrypt(a, padmode=2)
print(plain_text)
只需添加b
在加密文本的开头。为了使代码更清晰,请将其分配给一个新变量(在本例中,它是a
,并解密a
以正常方式)。