文件加密的简单实现(C语言)

需求:以DWORD为单位对文件进行加密,将每个DWORD与0xfcba0000做异或,写入另一个文件

解答:

文件加密的简单实现(C语言)#include
文件加密的简单实现(C语言)#include #define DWORD unsigned long #define BYTE unsigned char #define false 0 #define true 1 int main(int argc,char argv[])
文件加密的简单实现(C语言)文件加密的简单实现(C语言){
文件加密的简单实现(C语言) FILE
hSource;
文件加密的简单实现(C语言) FILE hDestination;
文件加密的简单实现(C语言)
文件加密的简单实现(C语言) DWORD dwKey =0xfcba0000 ;
文件加密的简单实现(C语言)
文件加密的简单实现(C语言)char
pbBuffer;
文件加密的简单实现(C语言) DWORD dwBufferLen =sizeof (DWORD);
文件加密的简单实现(C语言) DWORD dwCount;
文件加密的简单实现(C语言) DWORD dwData;
文件加密的简单实现(C语言)
文件加密的简单实现(C语言)if (argv[1 ]==0 ||argv[2 ]==0 )
文件加密的简单实现(C语言)文件加密的简单实现(C语言){
文件加密的简单实现(C语言) printf(“missing argument!\n “);
文件加密的简单实现(C语言)return false ;
文件加密的简单实现(C语言) }char szSource =argv[1 ];
文件加密的简单实现(C语言)char
szDestination =argv[2 ];
文件加密的简单实现(C语言)
文件加密的简单实现(C语言) hSource =fopen(szSource,”rb “);//打开源文件.hDestination =fopen(szDestination,”wb “);//打开目标文件if (hSource ==NULL){printf(“open Source File error !”);return false ;}if (hDestination ==NULL){ printf(“open Destination File error !”);return false ;}//分配缓冲区pbBuffer =(char )malloc(dwBufferLen);
文件加密的简单实现(C语言)
文件加密的简单实现(C语言)文件加密的简单实现(C语言)do {
文件加密的简单实现(C语言)//从源文件中读出dwBlockLen个字节dwCount =fread(pbBuffer,1 , dwBufferLen, hSource);
文件加密的简单实现(C语言)//加密数据dwData =
(DWORD )pbBuffer;//char TO dword dwData ^=dwKey;//xor operation pbBuffer =(char *)&dwData;
文件加密的简单实现(C语言)//将加密过的数据写入目标文件fwrite(pbBuffer,1 , dwCount, hDestination);
文件加密的简单实现(C语言) }while (!feof(hSource));
文件加密的简单实现(C语言)
文件加密的简单实现(C语言)//关闭文件、释放内存fclose(hSource);
文件加密的简单实现(C语言) fclose(hDestination);
文件加密的简单实现(C语言)
文件加密的简单实现(C语言) printf(“%s is encrypted to %s\n “,szSource,szDestination);
文件加密的简单实现(C语言)return 0 ;
文件加密的简单实现(C语言)}

心得:

char转DWORD:dwData = (DWORD*)pbBuffer;

DWORD转char:pbBuffer = (char ) &dwData;

版权声明:本文由作者Tony Qu原创, 未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

Original: https://www.cnblogs.com/tonyqus/archive/2007/10/09/918191.html
Author: 找事的狐狸
Title: 文件加密的简单实现(C语言)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/536543/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球