凯撒加密是一种非常古老的加密方式
凯撒密码又叫移位密码,是一种替换加密,明文中的所有字母都在字母表上向后或向前按照一个固定数目进行偏移后被替换成密文。
当偏移量为13位的时候,凯撒密码又叫回转密码(ROT13):明文加密得到密文,密文再加密就会得到明文(因为偏移量为13位,一共26个字母,加密两次就会回到明文了),题目关键字眼会有回转、回旋、十三踢等字眼。
加密过程可以表示为下面的函数:
E(x) = (x + key) mod n
其中,E表示加密函数,x表示为明文;n为字母表中的字母个数;key为密钥, 为密文字母在字母表中对应的位置数。
解密过程可以表示为下面函数:
D(y) = (y - key) mod n
其中,D表示解密函数,y为密文,n为字母表中的字母个数;key为密钥, 为密文字母在字母表中对应的位置数。
特定恺撒密码
根据偏移量的不同,还存在若干特定的恺撒密码名称:
偏移量为10:Avocat(A→K)
偏移量为13:ROT13
偏移量为-5:Cassis (K 6)
偏移量为-6:Cassette (K 7)
关于凯撒密码的python代码