博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java实现加密|加密模板
阅读量:5937 次
发布时间:2019-06-19

本文共 1955 字,大约阅读时间需要 6 分钟。

Java实现加密功能代码

其实加密就是用函数对应改变相应字符,比如折叠加密就是

a<->z, b<->y, …,m<->n
所以其实只要知道加密算法(就是字符对照规则)很好实现加密功能的


代码模板(我省略的部分就是加密算法)

public class Encrypt {	public String encryptMessage (String msg) {	      System.out.println("Message: "+ msg);	      char[] msgChars = msg.toCharArray();	      char[] digitArr = getDigitArray();		  char[] alphabet = getAlphabetArray();		  		     for (int m = 0; m < msgChars.length; m++){		     for(int n = 0; n < 26; n++){		           if ( msgChars[m] == alphabet[n]){		              //此处写小写字母对应法		        	  break;		           }		           else if ( msgChars[m] == Character.toUpperCase(alphabet[n]) ){				      //此处写大写字母对应法					  break;		           }		        }	            for(int j = 0; j < 11; j++){		           if ( msgChars[m] == digitArr[j]){		            //此处写数字对应法		        	  break;		           }		        }		     }	       System.out.println("Encrypted  message: "+new String(msgChars));		   return new String(msgChars);	   }	   	private char[] getAlphabetArray(){	       String str = "abcdefghijklmnopqrstuvwxyz";		   char[] chArray = str.toCharArray();		   return chArray;	  }	private char[] getDigitArray(){	       String str = "0123456789";	  	   char[] chArray = str.toCharArray();	  	   return chArray;	  }}

例子,我们设计一个机密功能使得

a->b,b->c,…,z->a

0->1,1->2,…,9->0
上面就是加密规则,也就是加密算法
代码实现如下

//上面已经把字符串转成数组,所以我们把每个数组的值改成映射后的即可for(int m = 0;m
a所以我在字母表中在a后面加了一个a,一共27个字母 for(int n = 0; n < 27; n++){ if ( msgChars[m] == alphabet[n]){ //凡是检索到的字母都映射成其后的一个字母 msgChars[m] = alphabet[n+1]; break; } //大写的情况 else if ( msgChars[m] == Character.toUpperCase(alphabet[n]) ){ msgChars[m] = Character.toUpperCase(alphabet[n+1]); break; } } //数字跟上面一样 for(int j = 0; j < 11; j++){ if ( msgChars[m] == digitArr[j]){ msgChars[m] = digitArr[j+1]; break; } }

是不是很简单

运行结果

在这里插入图片描述

转载于:https://www.cnblogs.com/xiatom/p/9805963.html

你可能感兴趣的文章
MariaDB Galera Cluster 部署(如何快速部署MariaDB集群)
查看>>
如何在 Swift 语言下使用 iOS Charts API 制作漂亮图表?
查看>>
论代码审查的重要性
查看>>
「docker实战篇」python的docker爬虫技术-导学(一)
查看>>
linux日志基础介绍
查看>>
如何关闭SElinux
查看>>
处理器之MMU(三)
查看>>
172.16.82.0/25的含义,IP段,掩码
查看>>
测试之路
查看>>
终于对了
查看>>
RabbitMQ集群
查看>>
Apache防盗链和隐藏版本信息
查看>>
ARP协议与路由
查看>>
使用pypiserver搭建私有源
查看>>
SCI检索介绍
查看>>
Android开发之生成自己的签名文件及App签名打包
查看>>
如何提高阿里云上应用的可用性(二)
查看>>
云宏WinCloud前端工程师告诉你什么是UI扁平化
查看>>
如何压缩PDF文件,有什么简单的方法
查看>>
SpringMVC常用注解标签详解
查看>>