我如何在C ++中对QByteArray进行异或?我试图解密一个已经由python脚本进行XOR加密的json文件,因此我可以将其加载为QJsonDocument
更新
def encrypt(input):
key = ['K', 'C', 'Q']
output = []
for i in range(len(input)):
xor_num = ord(input[i]) ^ ord(key[i % len(key)])
output.append(chr(xor_num))
return ''.join(output)
这是我到目前为止在我的c ++代码中用于x或QByteArray的内容:
QByteArray arr = file.readAll();
char key[3] = {'K', 'C', 'Q'};
for (int i = 0; i < arr.size(); i++)
arr[i] = arr[i] ^ key[i % (sizeof(key) / sizeof(char))];