色www,五月婷婷深爱五月,午夜国产一级片,色噜噜综合,国产大胸无码视频,清纯美女被操黄网站在线观看,波多野结衣av高清一区二区三区

C語言如何使用異或(xor)加密或解密文件

時間:2025-12-10 03:19:04 C語言 我要投稿

C語言如何使用異或(xor)加密或解密文件

  C語言使用異或(xor)函數(shù)可以加密或解密文件你知道嗎?你知道C語言如何使用異或(xor)加密或解密文件嗎?下面是小編為大家?guī)淼年P于C語言如何使用異或(xor)加密或解密文件的知識,歡迎閱讀。

  C語言如何使用異或(xor)加密或解密文件

  xor_encrypt.c

  /** XOR 加密/解密文件 */

  #define TRUE 1

  #define FALSE 0

  #include

  #include

  #include

  #include /pic/usr/include/找不到,可以在/usr/include/sys/復制過去

  /pic/p>

  void msg_log(char *str);

  /pic/p>

  int file_exists(char *filename);

  /pic/p>

  /pic/pic/Programming/C/

  int main(int argc, char *argv[]){

  int keylen, index=0;

  char *source, *dest, *key, fBuffer[1], tBuffer[20], ckey;

  FILE *fSource, *fDest;

  source = argv[1]; /pic/p>

  dest = argv[2]; /pic/p>

  key = argv[3]; /pic/p>

  /pic/p>

  if(source==NULL || dest==NULL || key==NULL){

  msg_log("param error usage:xor_encrypt source dest key e.g ./xor_encrypt o.txt d.txt 123456");

  exit(0);

  }

  /pic/p>

  if(file_exists(source)==FALSE){

  sprintf(tBuffer,"%s not exists",source);

  msg_log(tBuffer);

  exit(0);

  }

  /pic/p>

  keylen = strlen(key);

  fSource = fopen(source, "rb");

  fDest = fopen(dest, "wb");

  while(!feof(fSource)){

  fread(fBuffer, 1, 1, fSource); /pic/p>

  if(!feof(fSource)){

  ckey = key[index%keylen]; /pic/p>

  *fBuffer = *fBuffer ^ ckey; /pic/p>

  fwrite(fBuffer, 1, 1, fDest); /pic/p>

  index ++;

  }

  }

  fclose(fSource);

  fclose(fDest);

  msg_log("success");

  exit(0);

  }

  /pic/p>

  void msg_log(char *str){

  printf("%s ", str);

  }

  /pic/p>

  int file_exists(char *filename){

  return (access(filename, 0)==0);

  }

  這張圖如果使用php來處理需要 2秒 左右,但用C處理只需要 130毫秒。

  fdipzone@ubuntu:~/C$ gcc -o xor_encrypt xor_encrypt.c

  fdipzone@ubuntu:~/C$ time ./xor_encrypt 1280.jpg 1280en.jpg '@#$%^&*()_DFGHJKadsklfjasdf'

  success

  real 0m0.139s

  user 0m0.060s

  sys 0m0.070s


【C語言如何使用異或(xor)加密或解密文件】相關文章:

C語言文件的使用方法03-18

PHP如何使用AES加密算法進行數(shù)據(jù)加密和解密10-17

C語言EOF如何使用10-16

C語言文件03-02

C語言中如何使用sscanf10-14

如何使用C語言數(shù)組指針09-13

C語言的文件概念10-20

C語言頭文件如何避免重復包含12-06

如何使用C語言開發(fā)DSP系統(tǒng)12-12

  • 相關推薦