小问题:是否有经过验证的强可逆加密方法(Python)?
要求:不需要Python库的第三部分。
适用环境:通过网络传输数据。
我看到一个方法使用 str.translate()
和一个键生成的表。这是表生成函数:
def get_table(key):
m = hashlib.md5()
m.update(key)
s = m.digest()
(a, b) = struct.unpack('<QQ', s)
table = [c for c in string.maketrans('', '')]
for i in xrange(1, 1024):
table.sort(lambda x, y: int(a % (ord(x) + i) - a % (ord(y) + i)))
return ''.join(table)
关于这个功能的问题:
- 这是一个好的/强大的可逆加密吗?
- 在函数中1024是一个很大的数字,需要我们循环这么多次才能得到一个足够强的表吗?
提前致谢。
最佳答案
如果您想要强加密而无需第三方库,那您就不走运了——Python 标准库只有散列函数。如果你想要安全加密,你必须要么实现类似 AES 的东西。你自己(这不是一个好主意,因为没有经验的人在实现加密算法时很容易搞砸),或者改变你的要求并使用 PyCrypto .
关于python - python中的可逆加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13785277/