c語言簡單加解密

2021-06-28 22:24:30 字數 1888 閱讀 6427

#include#include#includeint dofile(char *in_fname,char *pwd,char *out_fname);/*對檔案進行加密的具體函式*/ 

//簡單檔案異或加解密。

//*** infile pwd outfile

int main(int argc,char *argv)/*定義main()函式的命令列引數*/

else

return dofile(in_fname,pwd,out_fname);

} /*加密子函式開始*/

int dofile(char *in_fname,char *pwd,char *out_file)

fp2=fopen(out_file,"wb");

if(fp2==null)

//獲取密碼長度

while(pwd[++j0]);

//printf("pwd_len=%d\n",j0);

ch=fgetc(fp1);

/*加密演算法開始*/

while(!feof(fp1))

fclose(fp1);/*關閉原始檔*/

fclose(fp2);/*關閉目標檔案*/

return 0;

}

#include #include #define normal_siz bufsiz

#define chmsk_key 0xa5

char buf[normal_siz];

hehe1.txt | cat hehe1.txt 執行一次加密或者解密

int main(int argc, char **argv)

fp= fopen(argv[1], "rb+");

if(fp==null)

while ((n = fread(buf, 1, normal_siz, fp)) > 0)

if (fseek(fp, -n, seek_cur) == -1)

n = fwrite(buf, 1, n, fp);

fflush(fp);//如果不加這句,那麼檔案大小如果小於庫函式緩衝(預設是bufsiz大小)時實際上面的寫操作並沒寫進去,從而導致下一次read還是成功,因此程式不會退出

buf[0] = 0;

} fclose(fp);

return 0;

}

#include #include #define dword unsigned long

#define byte unsigned char

#define false 0

#define true 1

int main(int argc, char *argv)

szsource=argv[1];

szdestination=argv[2];

hsource = fopen(szsource,"rb");// 開啟原始檔.

hdestination = fopen(szdestination,"wb"); //開啟目標檔案

if (hsource==null)

if (hdestination==null)

//分配緩衝區

pbbuffer=(char* )malloc(dwbufferlen);

do while(!feof(hsource));

//關閉檔案、釋放記憶體

fclose(hsource);

fclose(hdestination);

printf("%s is encrypted to %s\n",szsource,szdestination);

return 0;

}

C 檔案簡單加解密

include include includevoid encfile char in filename,char pwd,char out filename 對檔案進行加密的具體函式 void decryptfile char in filename,char pwd,char out filen...

C語言(檔案加解密)

在c語言,檔案主要分為文字檔案和二進位制檔案,因此主要是對這兩種檔案進行加解密。原檔案 加密對每乙個字元進行 異或運算 規則 1 1 0,0 0 0,1 0 1,0 1 1 同為0,不同為1 void crpypt char file path,char crpypt path 關閉 fclose ...

字串簡單加解密

對輸入的字串進行加解密,並輸出。加密方法為 當內容是英文本母時則用該英文本母的後乙個字母替換,同時字母變換大小寫,如字母a時則替換為b 字母z時則替換為a 當內容是數字時則把該數字加1,如0替換1,1替換2,9替換0 其他字元不做變化。解密方法為加密的逆過程。字串以 0結尾。字串最長100個字元。輸...