XM的小窝


 

【简易】恺撒密码算法介绍&C代码实现

度百科解释:

密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密、恺撒变换、变换加密,是一种最简单且最广为人知的加密技术。它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。这个加密方法是以罗马共和时期恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系。

简单的来说,凯撒密码其实就是一种通过简单的字符表位移的行为来形成密文的,位移的偏移量就称之为“密码”。

凯撒密码加密形式

原理知道后,直接写代码~

//简易的c代码实现
#include<stdio.h>
#include<string.h>
int main()
{
        char arry[114514];
        int key=0,i,co;
        printf("Please input string that you want to be encrypted or decrypted: ");
        scanf("%s",arry);
        printf("Please input a key (-24~25): ");
        scanf("%d",&key);
        for(i=0;i<strlen(arry);i++)
                arry[i]=arry[i]+key;
        printf("%s\n",arry);
        return 0;

}
输入例: 
       hello 
       1
输出:
       ifmmp 
点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注