`

凯撒密码

阅读更多
原理:它将字母表中的字母移动一定位置而实现加密。例如如果向右移动 2 位,则
字母 A 将变为 C,字母 B 将变为 D, …,字母 X 变成 Z,字母 Y 则变为 A,字母 Z 变为 B。因此,假如有个明文字符串“ Hello”用这种方法加密的话,将变为密文:“ Jgnnq”。而如果要解密,则只要将字母向相反方向移动同样位数即可。如密文“ Jgnnq”每个字母左移两位
变为“ Hello”。这里,移动的位数“ 2”是加密和解密所用的密钥。

	/**
	 * @param s 要加密的字符串
	 * @param key 移动的位数
	 * @return
	 */
    public static String KaiSa(String s,int key){
    	String res = "";
    	if(null != s && !s.equals("")){
    		for(int i = 0; i < s.length(); i++){
    			char _c = s.charAt(i);
    			if(_c>='a' && _c<='z'){//是小写字母
    			    _c+=key%26;        //移动 key%26 位
    			   if(_c<'a') _c+=26;  //向左超界
    			   if(_c>'z') _c-=26;  //向右超界
    			}
    			if(_c>='A' && _c<='Z'){// 是大写字母
    			   _c+=key%26;         //移动 key%26 位
    			   if(_c<'A') _c+=26;  //向左超界
    			   if(_c>'Z') _c-=26;  //向右超界
    			}
    			res+=_c;
    		}
    	}
    	return res;
    }
    
    public static void main(String[] args) {
    	//加密
    	String s1 = KaiSaEncryptionAndDecryption.KaiSa("love you",4);
    	System.out.println(s1);	
    	//解密
    	String s2 = KaiSaEncryptionAndDecryption.KaiSa(s1,-4);
    	System.out.println(s2);
	} 



运行结果:
        pszi csy
        love you
分享到:
评论

相关推荐

    凯撒密码转换器

    凯撒密码,又称移位密码,是历史上最早且最简单的密码加密技术之一。它由古罗马的凯撒大帝所采用,因此得名。这种密码系统的基本原理是将明文中的每个字符按照一定的固定数目向字母表的后方或前方平移,形成密文。在...

    凯撒密码加密、暴力解密

    凯撒密码,又称凯撒加密法,是一种古老且基础的替换式加密技术,由古罗马的凯撒大帝使用而得名。这种加密方法通过将明文中的每个字符按照一个固定位数进行字母表上的平移来实现加密,而解密则通过相反的平移操作完成...

    凯撒密码简单实现

    凯撒密码简单实现 凯撒密码是一种古典的加密算法,通过将明文中的每个字母按照一定的规则替换为另一个字母来实现加密。下面是凯撒密码的简单实现,包括加密和解密两个过程。 什么是凯撒密码 凯撒密码是一种替换式...

    凯撒密码算法实验

    ### 凯撒密码算法实验知识点解析 #### 一、实验目的 1. **掌握凯撒密码算法**: 实验旨在使学生能够熟练运用凯撒密码算法进行加密和解密操作。 2. **学会凯撒密码算法的程序设计**: 通过实验让学生能够独立编写凯撒...

    凯撒密码算法的实现

    凯撒密码,又称移位密码,是历史上最早且最简单的加密技术之一,它通过将明文中的每个字母按照固定数量的位移来实现加密。在本文中,我们将深入探讨凯撒密码的原理、实现方法以及如何通过编程实现这一经典算法。 ...

    凯撒密码C++的实现

    凯撒密码,又称为移位密码,是一种古老且基础的加密技术,源于古罗马时期的通信安全。它通过将明文中的每个字符按照一个固定的偏移量进行字母表上的平移来实现加密。例如,如果偏移量是3,那么字母"A"会变成"D","B...

    密码学 凯撒密码算法

    凯撒密码,又称移位密码,是古典密码学中一种简单但重要的加密技术。它由古罗马皇帝朱利叶斯·凯撒所使用,故得此名。凯撒密码的基本思想是将明文中的每个字母按照字母表顺序向右(或向左)平移固定数量的位置来实现...

    凯撒密码的c语言编写

    printf("**************凯撒密码**************\n"); printf("请输入明文:\n"); gets(M); for (i=0;M[i]!='\0';i++) C[i]=(M[i]-'a'+K)%26+'a'; C[i]='\0'; printf("密文是:\n%s\n",C); }

    C#简单实现凯撒密码算法

    凯撒密码(Caesar Cipher)是一种古老的替换加密技术,它通过将明文中的每个字符向右(或向左)移动固定数量的位置来实现加密。在C#中实现凯撒密码算法,可以为初学者提供对字符串操作、字符编码以及循环结构等基础...

    凯撒密码,广义凯撒密码加解密问题

    ### 凯撒密码,广义凯撒密码加解密问题 #### 一、凯撒密码简介 凯撒密码(Caesar cipher),又称移位密码,是一种最简单的加密技术之一,它通过将明文中的每个字母按照固定数目进行偏移来实现加密。这种加密方式的...

    凯撒密码,帮你加密的程序or解密的程序

    这个程序可以帮你用凯撒密码加密或者解密,快给你的情人发一个秘密情书吧! 在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密、恺撒变换、变换加密,是一种最简单且最广为人知的加密技术。它是一种替换...

    古典密码之凯撒密码源代码

    凯撒密码,又称为移位密码,是一种古老但基础的替换式加密技术,源自古罗马时期,由凯撒大帝使用而得名。这个密码系统的核心思想是将明文中的每个字母按照字母表顺序向后(或向前)移动固定数量的位置来实现加密。在...

    计算机密码学实验教学使用的凯撒密码转换器.zip

    凯撒密码,又称为移位密码,是一种古老且基础的加密技术,源于古罗马凯撒大帝时期。在计算机密码学实验教学中,它通常作为介绍加密与解密原理的起点,让学生理解基本的密码学概念。凯撒密码的核心思想是通过将明文中...

    凯撒密码加密解密

    凯撒密码,又称移位密码,是历史上最早且最简单的替换式加密技术之一。它以古罗马将军朱利叶斯·凯撒的名字命名,因为这种密码曾被他用于军事通信。凯撒密码的核心原理是在字母表上按照固定步长进行字母的平移,即每...

    PHP实现凯撒密码编、解码 源代码

    凯撒密码是一种简单的替换式密码系统,通过将字母表中的每个字母向前或向后移动固定数量的位置来实现加密与解密。在这个例子中,我们将看到具体的 PHP 脚本代码,了解它是如何构建一个简单的凯撒密码处理程序。 ###...

    计算机密码学 凯撒密码加密算法

    凯撒密码,又称为移位密码,是计算机密码学中最早、最简单的加密技术之一。这个古老的加密方法是由古罗马的凯撒大帝所使用,故得名凯撒密码。在现代信息安全领域,虽然凯撒密码的安全性相对较弱,但它在教育和理解...

    凯撒密码_编码

    凯撒密码

    代码_加密解密代码_密码_凯撒密码_

    凯撒密码,又称为移位密码,是一种古老但基础的加密技术,它的核心思想是将明文中的每个字母按照一个固定的偏移量在字母表上进行平移,从而得到密文。这种加密方法最早可追溯到古罗马时期,由凯撒大帝用于军事通信。...

    密码学 凯撒密码算法实验C语言

    通过实验熟练掌握凯撒密码算法,学会凯撒密码算法程序设计,提高C++程序设计能力。 二、实验要求 (1)输入:任意的一段明文 (2)输出:根据加密算法,实现对明文的加密 (3)要求有对应的程序调试记录和验证记录 ...

Global site tag (gtag.js) - Google Analytics