首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

看到一个大牛的代码,该怎么解决

2012-06-16 
看到一个大牛的代码C/C++ code#include stdio.hFILE *fi,*fovoid main() {fofopen(new.ini,wb)fi

看到一个大牛的代码

C/C++ code
#include <stdio.h>FILE *fi,*fo;void main() {    fo=fopen("new.ini","wb");    fi=fopen("old.ini","rb");    fseek(fi,-1L,SEEK_END);          //最后一个字符是eof吗?所以才 是-1    while (1) {        fputc(fgetc(fi)^0xA5,fo);        if (fseek(fi,-2,SEEK_CUR)) break;             //神马意思啊?    }    fclose(fi);    fclose(fo);}



问题3:

void fun(char* &);

string a;

fun((a.str())[0]);

为什么对???

[解决办法]
不一样,不过区别仅仅是生成的密文文件头尾倒置了而已

从密码学角度来说,这种倒置没有任何意义

异或也不是不能用来加密,相反它可以是一种很安全的加密,前提是你的密钥——这个代码中是0xA5,必须是个随机或者伪随机的

广泛应用的流密码,就是由流密码的移位反馈生成器生成伪随机密钥流,在对明文加密

倒置纯粹是增加流程复杂度,降低加密速度,却得不到任何安全性的2B做法

热点排行