【密码学 | CTF】培根密码

【密码学 | CTF】培根密码原理简述加密方式有两种 但说实话我没看懂第二种的 i j 和 u v 是怎么加密的呢 一解密岂不是乱了 但解密用第一种方式就行了 每五个切割 对照字典解密即可 难度很小 def 培根密码 解密 培根密码 字典 大写 A AAAAA AAAAA A B AAAAB AAAAB B C AAABA AAABA C D AAABB AAABB D

原理简述

【密码学 | CTF】培根密码

加密方式有两种,但说实话我没看懂第二种的;i-j和u-v是怎么加密的呢?一解密岂不是乱了?

但解密用第一种方式就行了,每五个切割,对照字典解密即可,难度很小

def 培根密码_解密(): 培根密码_字典_大写 = { 'A':"AAAAA","AAAAA":'A', 'B':"AAAAB",'AAAAB':'B', 'C':"AAABA",'AAABA':'C', 'D':"AAABB",'AAABB':'D', 'E':"AABAA",'AABAA':'E', 'F':"AABAB",'AABAB':'F', 'G':'AABBA','AABBA':'G', 'H':"AABBB",'AABBB':"H", 'I':"ABAAA",'ABAAA':'I', 'J':"ABAAB",'ABAAB':'J', 'K':"ABABA",'ABABA':'K', 'L':"ABABB",'ABABB':'L', 'M':"ABBAA",'ABBAA':'M', 'N':"ABBAB",'ABBAB':'N', 'O':"ABBBA",'ABBBA':'O', 'P':"ABBBB",'ABBBB':'P', 'Q':'BAAAA','BAAAA':'Q', 'R':'BAAAB','BAAAB':'R', 'S':'BAABA','BAABA':'S', 'T':'BAABB','BAABB':'T', 'U':'BABAA','BABAA':'U', 'V':'BABAB','BABAB':'V', 'W':"BABBA",'BABBA':'W', 'X':'BABBB','BABBB':'X', 'Y':'BBAAA','BBAAA':'Y', 'Z':'BBAAB','BBAAB':'Z' } 密文 = input("请输入密文:") list = [] while True: list.append(密文[0:5]) 密文 = 密文.replace(密文[0:5],'',1) if 密文 == '': break 结果 = [] for i in list: 结果.append(培根密码_字典_大写[i]) print("培根密码解密后:","".join(结果).lower()) 培根密码_解密()

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232554.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号