文件加密解密小程序
来源:互联网 发布:多功能计算器软件下载 编辑:程序博客网 时间:2024/04/28 14:22
#include <stdio.h>#include <stdlib.h>#include <string.h>int process(char *filename, char *opration);int read_file(char *filename, char **buf);int write_file(char *buf, long file_size);int decode(char *buf, int file_size, int key);int encrypt(char *buf, int file_size, int key);int main(int argc, char **argv){char flag;if (argc != 3) {printf("error!the type is :%s <filename> <opration>\n", argv[0]);exit(-1); }if ((*argv[2] == 'e') || (*argv[2] == 'd')) process(argv[1], argv[2]);else {printf("error:opration only be e(encrypt) or d(decode)\n");exit(-1); }return 0;}int process(char *filename, char *opration){FILE *myfile_dst;char *buf;int key = 123;long file_size;file_size = read_file(filename, &buf);if (*opration == 'e') encrypt(buf, file_size, key);else if(*opration == 'd') decode(buf, file_size, key);write_file(buf, file_size);return 0;}int read_file(char *filename, char **buf){FILE *myfile_src;long file_size;if (!(myfile_src = fopen(filename, "r"))) {perror("fopen"); }fseek(myfile_src, 0, SEEK_END);file_size = ftell(myfile_src);fseek(myfile_src, 0, SEEK_SET);*buf = (char *)malloc(file_size);fread(*buf, 1, file_size, myfile_src);fclose(myfile_src);return file_size;}int write_file(char *buf, long file_size){FILE *myfile_dst;char filename[20];printf("please input the file name that you want to save:\n");scanf("%s", filename);if (!(myfile_dst = fopen(filename, "wb"))) {perror("fopen"); }fwrite(buf, 1, file_size, myfile_dst);printf(">>>>>>>>>>>>>>%s is save<<<<<<<<<<<<<<<\n", filename);fclose(myfile_dst);return 0;}int encrypt(char buf[], int file_size, int key){int i;for(i = 0; i < file_size; i ++) buf[i] = buf[i] + key;return 0;}int decode(char *buf, int file_size, int key){int i;for(i = 0; i < file_size; i ++) buf[i] = buf[i] - key;return 0;}
非常简单的文件加密解密,有很多缺陷需要修改,以后慢慢增加
- 文件加密解密小程序
- 加密解密小程序
- 加密解密小程序
- 文件加密解密程序
- Java批量加密解密文件简单小程序
- 文件加密小程序
- 恺撒加密与解密小程序
- 维吉尼亚字符串加密解密小程序
- MFC 简单的加密解密 小程序
- 文本加密解密示例小程序java源码
- 用crypto++实现简单加密解密MFC小程序
- 数据加密、解密小程序(Enforcing Privacy with Cryptography)
- 加密解密程序
- VB 加密解密程序
- 加密解密程序
- 图片加密解密程序
- asp加密解密程序
- AES加密解密程序。
- [备忘] 为RedHat安装yum源
- 线性表的子系统
- 关于使用栈解决括号匹配的问题
- MonoDevelop几个常用的快捷键
- [转]GNU Radio Companion - GRC
- 文件加密解密小程序
- jar包中图片的正确显示及第三方jar包的引用
- s3c2440 --跑马灯 C+汇编代码
- MySQL存储引擎体系结构
- Android自动化测试之Shell脚本一——模拟触屏事件
- cocos2dx-plugin for ios
- PO: Finally close error
- I/O多路复用
- 关于启动风暴还有VDI存储的总结