buuctf.crypto.大帝的密码武器

发布时间 2023-03-27 22:49:12作者: redqx

参考 大佬 https://www.cnblogs.com/darkcyan/p/15549280.html ps:可能叫原封不动的搬
凯撒密码,也就一个移位

str1 = 'FRPHEVGL'
str2 = str1.lower() #转为小写好看一点点
num = 1 #移动[1,25]位,移动26位相对于没有移动
for i in range(26):
    print("{:<2d} ".format(num),end='')
    for j in str2:
        if(ord(j)+num > ord('z')): #移位越界了
            print(chr(ord(j)+num-26),end='')
        else:#移位没越界了
            print(chr(ord(j)+num),end='')
    num += 1 #下一个移位
    print('') #换行

结果

1  gsqifwhm
2  htrjgxin
3  iuskhyjo
4  jvtlizkp
5  kwumjalq
6  lxvnkbmr
7  mywolcns
8  nzxpmdot
9  oayqnepu
10 pbzrofqv
11 qcaspgrw
12 rdbtqhsx
13 security
14 tfdvsjuz
16 vhfxulwb
17 wigyvmxc
18 xjhzwnyd
19 ykiaxoze
20 zljbypaf
21 amkczqbg
22 bnldarch
23 comebsdi
24 dpnfctej
25 eqogdufk
26 frphevgl

所以移位是13

所以的话

str = 'ComeChina'
for temp in str:
    if(ord(temp)+13 > ord('z')):               
        print(chr(ord(temp)+13-26),end ='')
    else:
        print(chr(ord(temp)+13),end ='')
print('')


结果

PbzrPuvan