信息加密——古典密码学

信息加密——古典密码学

前言

“密码”或“加密系统”用于“加密”数据。
对于原始的未加密的数据,我们称之为“明文”。
对于加密的结果,我们称之为“密文”。
通过称为“解密”的过程,我们把密文恢复成原始的明文。

-在这里插入图片描述

古典密码算法历史上曾被广泛应用,大都比较简单,使用手工和机械操作来实现加密和解密。它的主要应用对象是文字信息,利用密码算法实现文字信息的加密和解密。
古典密码学的加密如下:

一、替换(凯撒)密码

简单替换密码加密是通过将当前字母替换为在常规字母表中第n个位置之后的那个字母来完成的。较复杂的替换密码是为字母表建立映射关系,由此可以产生更大的密钥空间。

代码如下:

#include "stdio.h" 
#include "conio.h" 
int main() 
{
    
    int k,i=0; 
    char a[100],b[100]={
   0},c[100]={
   0};
    /*
	printf("请输入明文(小写字母):\n"); 
    gets(a); 
    printf("请输入加密密钥(1-25):\n"); 
    scanf("%d",&k); 
    do{       
        if((a[i]+k)>122)
            b[i]=(char)(a[i]+k-26); 
		else 
		    b[i]=(char)(a[i]+k);
        i++; 
	}while(a[i]!='\0'); 
	printf("密文为:\n"); 
    puts(b);
    */
	//下面是解密部分
	//printf("\n"); 
    //printf("请输入解密密钥(1-25):\n");
	printf("请输入密文(小写字母):\n"); 
    gets(a); 
    for(k=1;k
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值