我可以使用此密钥加密和解密消息: string key = "zyxwvutsrqponmlkjihgfedcba"; 没有任何问题,但我想使用更复杂的密钥。这是我现在使用的密钥: string key = "zwtqnkhebyvspmjgdaxurolifc";
消息按预期加密,但是当我尝试解密它时,消息没有恢复到正常状态。下面是代码:
string Security::DecWordUsingCrypto(string word, string key)
{
string decWord = word;
for (int i = 0; i < word.size(); i++)
{
char c = tolower(word[i]);
if ((c < 'a') || (c > 'z'))
decWord[i] = c;
else
{
decWord[i] = key[(c - 'a')];
}
}
return decWord;
}
我知道为什么我的消息被进一步加密,但我不知道如何在没有错误的情况下解密它。我不能简单地陈述int j = (c + 'a')
。关于我可以尝试什么的任何建议?