体育资讯网

您现在的位置是:首页 > 分类11 > 正文

分类11

c简单加密算法源码(C语言代码加密)

hacker2022-06-10 02:59:15分类1178
本文目录一览:1、C语言加密算法(简单)2、

本文目录一览:

C语言加密算法(简单)

MD5是HASH算法,他不能用来解密的,他主要是用来校验信息的完整型,也就是我们常说的数值签名,你可以去RFC文档上收索,上边有他具体的算法,代码也是封装好了的,可以去研究研究

用c语言设计一个简单地加密算,解密算法,并说明其中的原理

可能很长 ,这是在我以前一个程序里摘出来的。

原理:用户输入创建密码,机器读取,并把每一位密码进行加密,这里就是把每一位的 ASCII码加一(也可以有其他的加密方式),然后保存在文件里。解密时从文件中读取保存的乱码,然后把它每一位的ascII码减一 在与你输入的密码比较,正确既可以进入。

#define CODE_SIZE 10

int password()

{

FILE *fp;

char s1[CODE_SIZE], s2[CODE_SIZE], s3[CODE_SIZE], fun;

while (1)

{

fp = fopen("password.txt", "r");

if (fp == NULL)

{

printf("第一次运行,请输入初始密码(最多8位):\n");

scanf("%s", s1);

printf("请再次输入初始密码:\n");

scanf("%s", s2);

if (strcmp(s1, s2) == 0)

{

fp = fopen("password.txt", "w+");

if (fp == NULL)

{

printf("创建文件失败退出\n");

getch();

exit(1);

}

else

{

//对s1加密

for (int i = 0; iCODE_SIZEs1[i] != ' '; i++)

{

s1[i] = s1[i] + i;

}

fputs(s1, fp);

printf("初始密码创建完成.\n");

}

}

else

{

printf("两次输入的密码不一致!\n");

}

fclose(fp);

}

else

{

fgets(s1, CODE_SIZE, fp);

fclose(fp);

printf("输入密码:\n");

scanf("%s", s2);

//对s1解密

for (int i = 0; iCODE_SIZEs1[i] != ' '; i++)

{

s1[i] = s1[i] - i;

}

loop:

if (strcmp(s1, s2) == 0)

{

printf("-----密码正确-----\n");

printf("-----请选择功能-----\n");

printf("-----1:修改密码-----\n");

printf("-----2:进入通讯录-----\n");

scanf("%d", fun);

switch (fun)

{

case 1: printf("请输入新密码\n");

scanf("%s", s1);

printf("请再次输入新密码\n");

scanf("%s", s2);

if (strcmp(s1, s2) == 0)

{

fp = fopen("password.txt", "w+");

if (fp == NULL)

{

printf("文件错误!\n");

}

else

{ //对s1加密

for (int i = 0; iCODE_SIZEs1[i] != ' '; i++)

{

s1[i] = s1[i] + i;

}

fputs(s1, fp);

fclose(fp);

printf("密码修改成功\n");

}

}

else

{

printf("两次输入的密码不一致,修改失败\n");

}

break;

case 2: return 1;

default: printf("无效指令\n");

}

}

else

{

printf("密码错误\n请重新输入\n");

scanf("%s", s2);

goto loop;

}

}

printf("------------------\n\n\n\n");

}

}

C语言!凯撒算法(只加密)的源代码

凯撒密码c简单加密算法源码的原理是字母与字母之间c简单加密算法源码的替换。例如26个字母都向后移动K位。若K等于2c简单加密算法源码,则A用C代替c简单加密算法源码,B用D代替c简单加密算法源码,以此类推。

#include stdio.h

#include conio.h

int main(){

 int key;

 char mingma,mima;

 printf("\nPlease input the character:");

 scanf("%c",mingma); //输入明码

 printf("\nPlease input the key:");

 scanf("%d",key); //输入秘钥

 if((mingma='A')(mingma='Z'))

  mima='A'+(mingma-'A'+key)%26; //大写字母移位

 else if((mingma='a')(mingma='z'))

  mima='a'+(mingma-'a'+key)%26; //小写字母移位

 printf("\n The output is:%c",mima); //输出密码

 printf("\nFinished!\n");

 getch();

 return 0;

}

发表评论

评论列表

  • 辙弃慵挽(2022-06-10 06:22:06)回复取消回复

    输入明码 printf("\nPlease input the key:"); scanf("%d",key); //输入秘钥 if((mingma='A')(mingma='Z'))  mima='A'+(m

  • 青迟木緿(2022-06-10 03:38:32)回复取消回复

    密算法,并说明其中的原理可能很长 ,这是在我以前一个程序里摘出来的。原理:用户输入创建密码,机器读取,并把每一位密码进行加密,这里就是把每一位的 ASCII码加一(也可以有其他的加密方

  • 可难笙沉(2022-06-10 08:31:06)回复取消回复

    本文目录一览:1、C语言加密算法(简单)2、用c语言设计一个简单地加密算,解密算法,并说明其中的原理3、C语言!凯撒算法(只加密)的源代码C语言加密算法(简单)MD5是HASH算法,他不能用来解密的,他主要是用来校验信息的完整型,也就是我们常说的数值签名,你可以去RFC文档上收索,上边有他具体的

  • 俗野冧九(2022-06-10 13:01:55)回复取消回复

    e output is:%c",mima); //输出密码 printf("\nFinished!\n"); getch(); return 0;}