码迷,mamicode.com
首页 > 其他好文 > 详细

字串加密

时间:2015-10-23 13:39:27      阅读:336      评论:0      收藏:0      [点我收藏+]

标签:

古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报

 

import java.util.Scanner;

public class CaeserCipher {

 private String SS; // 定义密钥字母表 

 private int key; // 定义密钥key 

 public CaeserCipher(String SS, int key) {

  // 根据不同的字母表和不同的密钥生成一个新的凯撒算法,达到通用的目的     

super();//调用父类的初始化方法,其实就是调用父类中的public CaeserCipher()方法    

 this.SS = SS;    this.key = key;   

 } 

 public String cc(String from) {  

 //凯撒加密算法,传入明文字符串,返回一个密文字符串  

  String to = "";    

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

{   

     to += SS.charAt((SS.indexOf(from.charAt(i))+key)%SS.length()); 

  }       

 return to;   

 }   

 public static void main(String[] args) {

       CaeserCipher caeser = new  CaeserCipher("ABCDEFHIJKLMNOPQRSTUVWXZ", 3);  

       Scanner scanner = new Scanner(System.in);//构造函数,对参数进行初始化   

       System.out.println("请输入要加密的字符串"); 

       String str =scanner.nextLine(); //输入字符串 security 

       String result = caeser.cc(str); //调用加密方法进行加密   

       System.out.print(result); // 可得结果

  } 

}

技术分享

  

 

字串加密

标签:

原文地址:http://www.cnblogs.com/1995-qxl/p/4904201.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!