队列的应用--凯撒加密法

本文介绍了凯撒加密法,一种基本的消息编码技术,通过字母表的固定位移进行加密。虽然易被破解,但使用重复密钥可以提高安全性。文章还鼓励读者尝试自行实现该算法。
摘要由CSDN通过智能技术生成

凯撒加密法简介

  • 凯撒加密(Caesar cipher)是一种简单的消息编码方式:它根据字母表将消息中的每个字母移动常量位k。举个例子如果k等于3,则在编码后的消息中,每个字母都会向前移动3位:a会被替换为d;b会被替换成e;依此类推。字母表末尾将回卷到字母表开头。于是,w会被替换为z,x会被替换为a。
  • 遗憾的是凯撒加密法箱单容易破解。字母的移动只有26种可能,要破解密码,只需尝试各种密钥值,直到有一种可行为止。
  • 使用重复密钥可以对这种编码方式进行改进。这时不是将每个字母移动常数位,而是利用一个密钥值列表,将各个字母移动不同的位数。如果消息比密钥值列表更长,可以从头再次利用这个密钥列表。例如,假设密钥值列表为:
    3 1 7 4 2 5
    那么第一个字母移动3位,第二个字母移动1位,将第6个字母移动5位之后,会从头再次使用这个密钥列表。

代码实现

import java.util.LinkedList;
import java.util.Queue;

/**
 * 凯撒加密法
 * @author Administrator
 *
 */
public class</
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、所得税计算 1、功能要求 开发基于控制台的雇员所得税计算系统。具体要求如下: (1)从控制台读取雇员名称,工资和加班补贴。 (2)根据工资和加班补贴计算所得税。 (3)计算完毕后输出,输出内容需包括税前工资,税后工资,应纳所得税额。运行界面 2、类的设计 该系统中必须包括两个类,类名及属性设置如下。 雇员类(Employee)  名称(name)  工资(salary)  加班补贴(subsidy) 信息输入类(IncomeTax) 3、具体要求及推荐实现步骤 1、创建雇员类。 2、开发雇员类的计算所得税的方。 3、开发所得税输入类,从控制台获得输入信息。 4、所得税的计算公式如下: 税前收入=工资+加班补贴 税后收入=税前收入-所得税额 所得税额 = 应纳税额 * 税率 二、凯撒加密器 1、功能要求 开发基于控制台的凯撒加密系统。具体要求如下: (1)根据用户的选择从控制台待加密或解密的字符串。如图-2和图-3所示。 (2)根据凯撒加密,对字符串进行加密或解密。 (3)加密或解密完成后,把结果输出到控制台。如图-4和图-5所示。 图-2 操作选择界面 图-3 输入字符串界面 图-4 加密后的界面 图-5 解密后的界面 2、类的设计 该系统中必须包括三个类。 输入台控制类(Swither) Encryption(字符串加密类) Decryption(字符串解密类) 3、具体要求及推荐实现步骤 1、创建控制台控制类Switcher,用于和操作者交互。 2、开发加密类Encryption,使用凯撒加密对字符串加密,并把加密后的结果返回给Switcher。 3、开发解密类Dncryption,使用凯撒加密对字符串解密,并把解密后的结果返回给Switcher。 凯撒加密,就是将字母表中的每个字母向后移动3位,比如a被替换成d,b被替换成f,以此类推。字母表的最后三位xyz,会被替换为abc。比如hello,加密之后是khoor.对于拉丁字母之外的其他字符,一律不加密
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值