变异凯撒

常规的凯撒密码是对每个字母做相同单位的移位。变异凯撒每个字母的移位可能各不相同。

以一个CTF题为例

加密密文:afZ_r9VYfScOeO_UL^RWUc
格式:flag

做以下尝试

afZ_ -> flag
rc -> {}

其中ASCII码值的变化为

差值
a f 5
f l 6
Z a 7
_ g 8

所以解密方法已经很明显了~

c = "afZ_r9VYfScOeO_UL^RWUc"
move = 5
flag = ""
for i in c:
    flag += chr(ord(i) + move)
    move += 1
print(flag)

结果为flag{Caesar_variation}

posted @ 2020-06-25 17:16  vict0r  阅读(1496)  评论(0编辑  收藏  举报