一个异或加密方案--C语言实现

2014-11-23 22:30:44 ? 作者: ? 浏览: 3
核心代码:
char encrypt( char f , char c)  
{  
    return f^c;  
}  

 int OutEncrypt( char *FilePath, char *SecretWord )  
{  
    FILE *  fp ;  
    FILE * fp1;  
    char *p= FilePath , *s= SecretWord;  
    //char fn[128], *p = fn, ps[10], *s = ps;   //fn[128]存放加密文件路径,ps[10]存放密码  
    char ch;  
    char *tm = "C:\\temp.temp";   //存放临时文件  
  
    if(( fp = fopen(p,"rb") )== NULL || ( fp1 = fopen(tm,"wb") ) == NULL )  
    {  
        return 0;    //加密失败  
    }  
  
    ch = fgetc(fp);  
    while( !feof(fp) )  
    {  
        s = SecretWord;  
        while( *s != '\0' )  
        {  
            ch = encrypt( ch, *s++ );  
            fputc( ch, fp1 );  
            ch = fgetc(fp);  
        }  
    }  
    fclose( fp );  
    fclose( fp1);  
    remove(p);  
    rename(tm, p);  
  
    return 1;   //加密成功  
}  

-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: