我试图做一个非常简单的凯撒密码算法来加密,并在我的解密游戏玩家的数据,但我得到了算法的一些奇怪的results.The任务很简单,只需按盼着或向后字符的ASCII表。
std::string Encrypt(std::string in,int key)
{
const char* chars=in.data();
char* newchar=(char*)malloc(sizeof(char)*in.length());
for(int c=0;c<in.length();c++)
{
newchar[c]=char(((int)chars[c])+key);//I suspect somewhere here is the problem
}
std::string out(newchar);
return out;
}
LOGI("encrypt:%s",Encrypt("hello",10).data());
LOGI("decrypt:%s",Encrypt(Encrypt("hello",10),-10).data());
输出:
encrypt:rovvyu@
decrypt:hellok
我不知道很多有关加密,我知道少谈ASCII和整体特征的东西如何在C工作