我正在尝试用Python编写加密.我的问题是密钥比消息短.因此,我应该从密钥重新开始



我正在编写XOR加密。如果消息比密钥长,则应在密钥的开头重新开始。

message="wall"
key="code"
for m, k in zip(message,key):
result=ord(m)^ord(k)
print(result)  

我该如何管理这个问题? 感谢您的帮助。

我不完全确定你想要什么,但如果它是我认为的,有很多方法可以做到。保留大部分代码的最短代码之一利用了itertools.cycle(),如下所示:

from itertools import cycle
message="wallaby"
key="code"
for m, k in zip(message, cycle(key)):
result=ord(m)^ord(k)
print(result) 

最新更新