凯撒密码是古罗马凯撒大帝用来对及时情报进行加密的算法,它采用了替换方法将信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即循环左移3位。凯撒密码包括加密部分和解密部分两个。
凯撒密码的对应关系如下:
原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
原文字符P,其密文字符C满足如下条件:
C =(P+3)mod 26
解密方法反之,满足:
P = (C-3)mod 26
1.加密算法
凯撒密码的加密算法程序首先接收用户输入文本,然后对字母a-z和字母A-Z按照密码算法进行转换,同时输出。其他非英文字母部分直接输出。具体代码如下。
#CaesarEncode.py
ptxt = input('请输入明文文本:')
for p in ptxt:
if 'a'<= p <='z':
print(chr(ord('a')+(ord(p)-ord('a')+3)%26),end='')
elif 'A'<= p <= 'Z':
print(chr(ord('A') + (ord(p) - ord('A') + 3) % 26), end='&#