转轮机加密
首先查看附件信息,一种神奇的加密方式
1: < ZWAXJGDLUBVIQHKYPNTCRMOSFE <
2: < KPBELNACZDTRXMJQOYHGVSFUWI <
3: < BDMAIZVRNSJUWFHTEQGYXPLOCK <
4: < RPLNDVHGFCUKTEBSXQYIZMJWAO <
5: < IHFRLABEUOTSGJVDKCPMNZQWXY <
6: < AMKGHIWPNYCJBFZDRUSLOQXVET <
7: < GWTHSPYBXIZULVKMRAFDCEONJQ <
8: < NOZUTWDCVRJLXKISEFAPMYGHBQ <
9: < XPLTDSRFHENYVUBMCQWAOIKZGJ <
10: < UDNAJFBOWTGVRSCZQKELMXYIHP <
11: < MNBVCXZQWERTPOIUYALSKDJFHG <
12: < LVNCMXZPQOWEIURYTASBKJDFHG <
13: < JZQAWSXCDERFVBGTYHNUMKILOP <
密钥为:2,3,7,5,13,12,9,1,8,10,4,11,6
密文为:NFQKSEVOQOFNP
题目中给出的是 提示转轮机 杰弗逊 经过查询可知未杰弗逊转轮机加密方法,
大佬给的解密原理
利用原理写出朋友python脚本。
a=[ 'ZWAXJGDLUBVIQHKYPNTCRMOSFE',
'KPBELNACZDTRXMJQOYHGVSFUWI',
'BDMAIZVRNSJUWFHTEQGYXPLOCK',
'RPLNDVHGFCUKTEBSXQYIZMJWAO',
'IHFRLABEUOTSGJVDKCPMNZQWXY',
'AMKGHIWPNYCJBFZDRUSLOQXVET',
'GWTHSPYBXIZULVKMRAFDCEONJQ',
'NOZUTWDCVRJLXKISEFAPMYGHBQ',
'XPLTDSRFHENYVUBMCQWAOIKZGJ',
'UDNAJFBOWTGVRSCZQKELMXYIHP',
'MNBVCXZQWERTPOIUYALSKDJFHG',
'LVNCMXZPQOWEIURYTASBKJDFHG',
'JZQAWSXCDERFVBGTYHNUMKILOP']
key=[2,3,7,5,13,12,9,1,8,10,4,11,6]
table=[]
for i in key:
table.append(list(a[i-1]))
s=list('NFQKSEVOQOFNP')
for i in range(0,len(s)):
index=table[i].index(s[i])
temp=table[i][0:index]
table[i][0:index]=[]
table[i]+=temp
print(table[i])
for i in table:
print(chr(ord(i[17])+32),end='')
有意义的明文为:fireinthehole
就是flag