Sou novo no fórum e ainda não sei muita coisa de programação. Fiz um código para encriptar um arquivo usando rand e xor. Faço um char aleatório para cada char do arquivo e encripto o arquivo fazendo o xor entre o char original e o char aleatório. Até ai tudo bem se fizer o chor do char encriptado e o char aleatório resulta no char original.Porem tenho que fazer um código que le o arquivo com os chars aleatórios e o arquivo com os chas encriptados e retorna em um arquivo os chars desencriptados. Fiz um código: /*Desencripta.cpp */
#include<iostream>
#include<fstream>
using namespace std;
int main ()
{
char desencriptado,encriptado,aleatorio;
ifstream chave,entradaenc;
chave.open("chave.txt", ios::binary);
entradaenc.open("entrada.enc.txt", ios::binary);
while(entradaenc >> noskipws >> encriptado)
{
while(chave >> noskipws >> aleatorio)
{
desencriptado=aleatorio^encriptado;
cout<<desencriptado;
}
}
} Porem ele só desencripta a primeira letra. Por favor me de uma luz.