用户登录  |  用户注册
首 页源码下载网络学院最新源码源码排行屏蔽广告
当前位置:新兴网络 > 网络学院 > 编程开发 > C/C++

C++ 二进制文件异或加密简单示例

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2011-03-07 17:58:37
C++ 使用异或算法加密二进制文件,编译后通过命令行输入:
Bat code复制代码
编译文件.exe 加密文件路径.exe 密钥
即可加密,解密方法就是再执行一次加密就解开了。
C/C++ code复制代码
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char* argv[])
{
    int i,count,len;
    char buff[1024];
    static char tmpfile[]="~u~0_sw~.f~l";
    FILE * in , * out ;
   
    if(argc <3)
    {
        printf("Less Parameter !\n");
        printf("Parameter number must at least 2 !!\n");
        return 1;
    }
   
    len =strlen(argv[2]);
    in =fopen(argv[1],"rb");
    out =fopen(tmpfile,"wb"); /* creat a temp file */
   
    if(in==NULL)
    {
        printf("Input File \'%s\' not found !!\n",argv[1]);
        exit(1);
    }
    if(out==NULL)
    {
        printf("Can not creat temp file \'%s\'\n",tmpfile);
        exit(2);
    }
   
    while( !feof(in) )
    {
        count=fread(buff,1,1024,in);
        for(i=0;i <count;i++)
            buff[i]^=argv[2][i%len];
        fwrite(buff,1,count,out);
    }
   
    fclose(in);
    fclose(out);
    remove(argv[1]);
    rename(tmpfile,argv[1]);
    return 0;
}

Tags:C++ 异或 文件加密

作者:佚名
  • 好的评价 如果您觉得此文章好,就请您
      100%(4)
  • 差的评价 如果您觉得此文章差,就请您
      0%(0)

网络学院评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论