二进制文件简单加密
2017-06-22 19:19
162 查看
#define _CRT_SECURE_NO_WARNINGS //关闭安全监察 #include <stdio.h> #include <stdlib.h> #include <string.h> char *path = "C:\\1.jpg"; //创建指针指向路径 char *pathjia = "C:\\1jia.jpg"; //加密后文件 char *pathjie = "C:\\1jie.jpg"; //解密后文件 int getbinsize(char *path) //获取文件大小 { FILE *pfr = fopen(path, "rb"); //文件指针 打开文件 if(pfr == NULL ) //判断是否打开成功 { return -1; } else { int ch; //ch设置为int型 int length = 0; while(ch = fgetc(pfr)!=EOF) //遍历整个文件 { length++; } return length; //返回大小 } } void binwithpassword(char *path, char *newpath, char *password) // 密码方式加密函数 { int newch; FILE *pfr = fopen(path, "rb"); //以二进制可读方式打开文件 FILE *pfw = fopen(newpath, "wb"); //可写方式打开 if (pfr == NULL || pfw == NULL) { return ; } else { int i = 0; int passlength = strlen(password); // 密码长度 int ch; while(ch = fgetc(pfr)!=EOF) //遍历文件 { newch = ch ^ password[i]; //异或加密方法 //ch ^ password[i%passlength]; i++; // i++; 一直循环下去 } if(i == passlength) { i = 0; } fputc(newch, pfw); //输出加密后的 } fclose(pfr); fclose(pfw); //打开一个文件 就对应关闭 } void main() { binwithpassword(path, pathjia, "huichenyang"); binwithpassword(pathjia, pathjie, "huichenyang"); system("pause"); }
相关文章推荐
- 对3DES加密的运用的一个简单示例
- 简单加密/解密方法包装, 含encode(),decode(),md5()
- 用asp写一个简单的加密和解密的类。。。。
- 一段简单的wml数字加密
- 用Java实现的字符串简单加密
- [C#]简单加密解密[利用反射获取加密解密类]
- 一个简单的加密解密程序
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- 哈希加密的简单类
- 对硬盘的一种简单加密----在分区表上做手脚.
- [脑力劳动]经简单加密后的密码的破解
- [我的ASP.net学习历程]调用类库函库的简单加密方法
- 简单的数组操作字符串,加密可用
- Editplus + Zend Encoder实现简单PHP源码加密IDE环境
- 硬盘简单加密.
- 在自己的MIS系统使用简单的加密功能加密基本数据
- 用PHP进行简单的字符加密
- 最简单的字符串加密C#实现-移位加密
- 一个简单实用的 vb 加密/解密算法
- 05-25日<一个简单实用的 vb 加密/解密算法>之改进