0

根据维基百科,One-Time Pad是一种无法破解的加密技术。如何在 Python 中实现 One-Time Pad 加密?

4

1 回答 1

0

这是一个示例实现

def encrypt(pad, secret):
    return ''.join([chr(ord(c) ^ ord(secret[i])) for i, c in enumerate(pad[:len(secret)])])

现在您可以使用它来加密您的消息。请记住,pad大小至少应为密钥的大小:

secret = 'i am a secret'
pad = '33116f14-9b6f-42c6-9636-3dbd31c0548d'
enc = encrypt(pad, secret)

您可以使用相同的功能对其进行解密:

assert secret == encrypt(pad, enc)
于 2021-11-21T00:43:09.833 回答