1.设计思想:加密就是将字符数据转化为ASC码表中的数字,a—w之间通过加3之后再转化为字符型输出,x—z之间通过转化为ASC码表中的数字后减去23再转化为字符型输出。解密就是将字符数据转化为ASC码表中的数字,d—z之间通过减去3之后再转化为字符型输出,a—c之间通过转化为ASC码表中的数字后加23再转化为字符型输出。

2.程序流程图

3.程序源码

import java.util.Scanner;

public class Code {

//严羽卿 凯撒加密与解密  2015 10 23

public static void main(String[] args) {

// TODO Auto-generated method stub

String input = null;

Scanner sc = new Scanner(System.in);

System.out.println("请输入字母:");

input = sc.next();

StringBuffer code = new StringBuffer();

Scanner sc1=new Scanner(System.in);

System.out.println("加密请按1,解密请按2:");

int p;

p=sc1.nextInt();

if(p==1)

{

System.out.println("加密之后为:");

for(int i = 0;i < input.length();i++)

{

char x = input.charAt(i);

if(x >= 'a' && x <= 'w')

{

x = (char)(x+3);

code.append(x);

}

if(x >= 'x' && x <= 'z')

{

x=(char)(x-23);

code.append(x);

}

if(x >= 'A' && x <= 'W')

{

x = (char) (x+3);

code.append(x);

}

if(x >= 'X' && x <= 'Z')

{

x=(char)(x-23);

code.append(x);

}

}

}

if(p==2)

{

System.out.println("解密:");

for(int i = 0;i < input.length();i++)

{

char x = input.charAt(i);

if(x >= 'a' && x <= 'c')

{

x=(char)(x+23);

code.append(x);

}

else if(x >= 'd' && x <= 'z')

{

x = (char)(x-3);

code.append(x);

}

else if(x >= 'A' && x <= 'C')

{

x=(char)(x+23);

code.append(x);

}

else if(x >= 'D' && x <= 'Z')

{

x = (char) (x-3);

code.append(x);

}

}

}

System.out.println(code);

}

}

4.结果截图

java移位加密_凯撒加密解密(java字母移位)相关推荐

  1. 字符加密(凯撒加密)

    在密码学中,恺撒密码是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文.例如,当偏移量是3的时候,所有的字母A ...

  2. python中凯撒密码加密_凯撒密码加密

    您似乎是在交互式提示中输入此代码,而不是将其保存为文件并运行它.如果是这样,那么当您使用input时,窗口将在允许您继续输入代码之前提示您输入.在plainText = input("pyt ...

  3. python中凯撒密码加密_凯撒密码加密Python

    有人能告诉我为什么我只对纯文本信息中的一个字符进行加密?消息是"船在午夜启航",加密密钥是4.我只能让t移到x,剩下的信息无法打印.我错过了什么?在#request the mes ...

  4. 凯撒加密Caesar cipher与古典密码

    凯撒加密的由来 凯撒加密正是凯撒大帝发明的,是一种古典的加密 凯撒率军征服高卢,袭击日耳曼和不列颠,古罗马开启了走出意大利,征服全欧洲的征程 仅用8年时间征服高卢后,凯撒率军越过卢比孔河,驱赶政敌,成 ...

  5. 凯撒加密的python语言程序_Python的凯撒密码加密为啥要ord(a),然后又减去?...

    当p为字母z时,试一下直接ord(p)+3就知道啦. 我假设老哥你已经懂了python语法,我就只讲讲凯撒加密.凯撒加密说白了就是偏移字母的位置,将原来的字母用它之后的第x个字母来代替原来的字母进行加 ...

  6. C语言凯撒密码字母向后偏移三位,凯撒加密解密(java字母移位)

    1.设计思想:加密就是将字符数据转化为ASC码表中的数字,a-w之间通过加3之后再转化为字符型输出,x-z之间通过转化为ASC码表中的数字后减去23再转化为字符型输出.解密就是将字符数据转化为ASC码 ...

  7. 简单移位密码——凯撒加密、解密算法

    简单移位密码--凯撒加密.解密算法 移位密码是简单的替换密码(simple substitution cipher),即将明文的一个字符用相应的一个密文字符替换. 算法描述:设P=C=K=Z26,对k ...

  8. python凯撒加密代码_解密题(凯撒密码)

    在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一 ...

  9. php 凯撒加密解密,PHP脚本实现凯撒加(解)密

    今天在看某ctf时候遇到一题凯撒加密的题,然后看到write up里有这样一句 顿时感觉这题目有点坑啊,这要不写个脚本来跑要推到啥时候啊,于是又了本文: $text=" the text & ...

  10. 凯撒加密的最简单的理解与实现(Java版)

    凯撒加密 前言 这是我的第一篇博客希望以后多多关注. 这篇文章起源于我在人工智能导论上的一次摸鱼◔ ‸◔,当时老师一节课都在脱离课本介绍,讲什么网络安全之类的问题,后面还举例子了一些加密方法巴拉巴拉, ...

最新文章

  1. 系统异常和不稳定的原因总结
  2. POJ 2406 Power Strings (KMP) kmp循环节
  3. sourcetree帮助文档
  4. 如何使用emacs编写c语言程序,并编译运行
  5. 猛然回首 在这里4年了
  6. Java高级应用开发之Servlet
  7. Python 程序的抽样分析器 - Py-Spy
  8. Java : java基础(1)
  9. hibernate4 could not initialize proxy - no Session
  10. svga文件预览_Shu文件预览
  11. 渗透测试实战指南笔记
  12. 使用TFS2010管理敏捷项目生命周期-系列指南5 TFS 故事墙(Story Wall)-看板(Dashboard)-Workbrench使用
  13. origin pro 2021去水印
  14. zxl-机器学习-01
  15. Flash和E2PROM的区别
  16. 腾讯qq珊瑚虫版_QQ for Mac+QQ小助手
  17. 图片去水印有什么好的工具吗?怎么去除水印?
  18. 技术测评:ZStack网络性能测试
  19. 计算机课程基础常用,计算机基础课程实用标准
  20. cadence视频/allegro视频-小哥Cadence Allegro完整2层板PCB视频

热门文章

  1. virt-manager设置主机和虚拟机之间文件共享
  2. Win7+U盘安装Ubuntu 双系统超级详细教程
  3. Service(LoadBalancer)
  4. Spring Cloud:负载均衡 - Spring Cloud Loadbalancer原理
  5. 备份与同步(二) 如何使用云存储来实现多设备的备份与同步
  6. snappy格式解析
  7. IP技术 -- 6 Telemetry
  8. 海洋cms php环境 多少,海洋cms
  9. # 无法打开注册表项 UNKNOWN\Components\ #
  10. Java项目:人才求职招聘管理系统(java+SpringBoot+FreeMarker+JPA+Mysql)