【发布时间】:2015-11-14 13:24:32
【问题描述】:
所以我的老师创造了这个 vigenere 密码,他说它有效。 但是,在使用在线 vigenere 密码检查其结果后,它似乎没有使用正确的加密结果。
我不知道如何修复它,我想知道是否有人可以指导我找到错误并告诉我如何修复它们。
这里是代码
base = ord("a")
alphabets = 'abcdefghijklmnopqrstuvwxyz'
keyword = input('What is your keyword')
message = input('What is your message to be coded or encoded?').lower()
expandedKeyword = ""
while len(expandedKeyword) < len(message):
for i in keyword:
if len(expandedKeyword) < len(message):
expandedKeyword += i
cipheredMessage = ''
indexofKeyword = 0
for i in message:
if i == ' ':
cipheredMessage = cipheredMessage + " "
else:
shiftedIndex = (ord(i) + ord(expandedKeyword[indexofKeyword])-base) % 26 +base
cipheredMessage = cipheredMessage + chr(shiftedIndex)
indexofKeyword = indexofKeyword + 1
print(cipheredMessage)
我理解正在发生的事情的概念,但我似乎无法找出错误。
【问题讨论】:
-
“在使用在线 vigenere 密码检查其结果后,似乎没有正确加密。”嗯不错。你能举例说明你尝试了什么样的输入,你得到了什么输出,你期望得到什么输出?
标签: python encryption vigenere