java移位加密_凯撒加密解密(java字母移位)
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字母移位)相关推荐
- 字符加密(凯撒加密)
在密码学中,恺撒密码是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文.例如,当偏移量是3的时候,所有的字母A ...
- python中凯撒密码加密_凯撒密码加密
您似乎是在交互式提示中输入此代码,而不是将其保存为文件并运行它.如果是这样,那么当您使用input时,窗口将在允许您继续输入代码之前提示您输入.在plainText = input("pyt ...
- python中凯撒密码加密_凯撒密码加密Python
有人能告诉我为什么我只对纯文本信息中的一个字符进行加密?消息是"船在午夜启航",加密密钥是4.我只能让t移到x,剩下的信息无法打印.我错过了什么?在#request the mes ...
- 凯撒加密Caesar cipher与古典密码
凯撒加密的由来 凯撒加密正是凯撒大帝发明的,是一种古典的加密 凯撒率军征服高卢,袭击日耳曼和不列颠,古罗马开启了走出意大利,征服全欧洲的征程 仅用8年时间征服高卢后,凯撒率军越过卢比孔河,驱赶政敌,成 ...
- 凯撒加密的python语言程序_Python的凯撒密码加密为啥要ord(a),然后又减去?...
当p为字母z时,试一下直接ord(p)+3就知道啦. 我假设老哥你已经懂了python语法,我就只讲讲凯撒加密.凯撒加密说白了就是偏移字母的位置,将原来的字母用它之后的第x个字母来代替原来的字母进行加 ...
- C语言凯撒密码字母向后偏移三位,凯撒加密解密(java字母移位)
1.设计思想:加密就是将字符数据转化为ASC码表中的数字,a-w之间通过加3之后再转化为字符型输出,x-z之间通过转化为ASC码表中的数字后减去23再转化为字符型输出.解密就是将字符数据转化为ASC码 ...
- 简单移位密码——凯撒加密、解密算法
简单移位密码--凯撒加密.解密算法 移位密码是简单的替换密码(simple substitution cipher),即将明文的一个字符用相应的一个密文字符替换. 算法描述:设P=C=K=Z26,对k ...
- python凯撒加密代码_解密题(凯撒密码)
在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一 ...
- php 凯撒加密解密,PHP脚本实现凯撒加(解)密
今天在看某ctf时候遇到一题凯撒加密的题,然后看到write up里有这样一句 顿时感觉这题目有点坑啊,这要不写个脚本来跑要推到啥时候啊,于是又了本文: $text=" the text & ...
- 凯撒加密的最简单的理解与实现(Java版)
凯撒加密 前言 这是我的第一篇博客希望以后多多关注. 这篇文章起源于我在人工智能导论上的一次摸鱼◔ ‸◔,当时老师一节课都在脱离课本介绍,讲什么网络安全之类的问题,后面还举例子了一些加密方法巴拉巴拉, ...
最新文章
- 系统异常和不稳定的原因总结
- POJ 2406 Power Strings (KMP) kmp循环节
- sourcetree帮助文档
- 如何使用emacs编写c语言程序,并编译运行
- 猛然回首 在这里4年了
- Java高级应用开发之Servlet
- Python 程序的抽样分析器 - Py-Spy
- Java : java基础(1)
- hibernate4 could not initialize proxy - no Session
- svga文件预览_Shu文件预览
- 渗透测试实战指南笔记
- 使用TFS2010管理敏捷项目生命周期-系列指南5 TFS 故事墙(Story Wall)-看板(Dashboard)-Workbrench使用
- origin pro 2021去水印
- zxl-机器学习-01
- Flash和E2PROM的区别
- 腾讯qq珊瑚虫版_QQ for Mac+QQ小助手
- 图片去水印有什么好的工具吗?怎么去除水印?
- 技术测评:ZStack网络性能测试
- 计算机课程基础常用,计算机基础课程实用标准
- cadence视频/allegro视频-小哥Cadence Allegro完整2层板PCB视频
热门文章
- virt-manager设置主机和虚拟机之间文件共享
- Win7+U盘安装Ubuntu 双系统超级详细教程
- Service(LoadBalancer)
- Spring Cloud:负载均衡 - Spring Cloud Loadbalancer原理
- 备份与同步(二) 如何使用云存储来实现多设备的备份与同步
- snappy格式解析
- IP技术 -- 6 Telemetry
- 海洋cms php环境 多少,海洋cms
- # 无法打开注册表项 UNKNOWN\Components\ #
- Java项目:人才求职招聘管理系统(java+SpringBoot+FreeMarker+JPA+Mysql)