设为首页 加入收藏

TOP

基于c语言加密解密算法(一)
2013-01-01 14:56:22 来源: 作者: 【 】 浏览:1395
Tags:基于 语言 加密解密 算法

  这里使用的是按位加密,按ASCII码进行加密的算法自己写个,很容易的。

  #include<stdio.h>

  #include<stdlib.h>

  #include<conio.h>

  #include<string.h>

  void dofile(char *in_fname,char *pwd,char *out_fname);/*对文件进行加密的具体函数*/

  void usage(char *name);

  void main(int argc,char *argv[])/*定义main()函数的命令行参数*/

  {

  char in_fname[30];/*用户输入的要加密的文件名*/

  char out_fname[30];

  char pwd ;/*用来保存密码*/

  if(argc!=4)

  {/*容错处理*/

  usage(argv[0]);

  printf("\nIn-fname:\n");

  gets(in_fname);/*得到要加密的文件名*/

  while(*in_fname==NULL)

  {

  printf("\nIn-fname:\n");

  gets(in_fname);

  }

  printf("Password 6-8:\n");

  gets(pwd);/*得到密码*/

  while(*pwd==NULL || strlen(pwd)>8 || strlen(pwd)<6)

  {

  printf("Password 6-8:\n");

  gets(pwd);

  }

  printf("Out-file:\n");

  gets(out_fname);/*得到加密后你要的文件名*/

  while(*in_fname==NULL)

  {

  printf("Out-file:\n");

  gets(out_fname);

  }

  while(!strcmp(in_fname,out_fname))

  {

  printf("文件名不能和源文件相同\n");

  printf("Out-file:\n");

  gets(out_fname);

  }

  dofile(in_fname,pwd,out_fname);

  printf("加密成功,解密请再次运行程序\n");

  }

  else

  {/*如果命令行参数正确,便直接运行程序*/

  strcpy(in_fname,argv );

  strcpy(pwd,argv );

  strcpy(out_fname,argv );

  while(*pwd==NULL || strlen(pwd)>8 || strlen(pwd)<6)

  {

  printf("Password faied!\n");

  printf("Password 6-8:\n");

  gets(pwd);

  }

  while(!strcmp(in_fname,out_fname))

  {

   

首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C指针灵活应用集锦 下一篇C和设计模式(继承、封装、多态)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: