900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 3.暴力破解凯撒密码

3.暴力破解凯撒密码

时间:2021-03-14 21:07:33

相关推荐

3.暴力破解凯撒密码

没有什么可以阻止密码破译者猜测一个密钥,然后用这个密钥解密密文,查看输出,如果该密钥不是正确的密钥就继续尝试下一个密钥。这种每一个可能的解密密钥的技术叫暴力破解。

# 凯撒密码暴力破解message = input("message:")LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'# 把每个可能的密钥循环一遍for key in range(len(LETTERS)):# key代表密钥# translated设为空字符串# 每次循环后清空.translated = ''# 密文里的每一个字符按顺序解密for symbol in message:if symbol in LETTERS:num = LETTERS.find(symbol) # 在26个字母里搜索到密文字符的位置num = num - key # 检查是否小于0,如果小于0,就加上26if num < 0:num = num + len(LETTERS)# 把解密之后的字符追加到translated字符串的末尾translated = translated + LETTERS[num]else:# 密文里的symbol如果不在26个字母里,就不进行解密,直接追加到字符串末尾translated = translated + symbol# 输出解密采用的key和解密后的明文print('Key #%s: %s' % (key, translated))

运行结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。