看到一个大牛的代码,该怎么解决
看到一个大牛的代码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做法