第一章 题目及需求分析
§1.1 题目及需求分析
1.1.1题目描述
通过编程实现Caesar密码的加密与解密工作,要求加密时输入一串明文字符串和偏移量offset,输出加密后的Caesar密码,解密时,输入一串密文字符串,尝试0-25范围内所有的偏移量,如果发现是有意义的句子即证明解密成功,并将明文输出。
‘
1.1.2Caesar密码的定义
在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密、恺撒变换、变换加密,是一种最简单且最广为人知的加密技术。它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。这个加密方法是以罗马共和时期恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系。
1.1.3需求分析
加密过程中即简单的通过ASCII码的偏移来进行实现,即对应输入的偏移量offset每个字符的ASC码增加offset%26位,输出的结果即位密文。