È dato un testo cifrato con cifratura XOR e una chiave per decifrarlo. La chiave va ripetuta fino a coprire l’intera lunghezza del testo. L’n-esimo byte del testo verrà dunque decifrato operando lo XOR con il corrispondente byte della chiave (n mod L, dove L è la lunghezza della chiave).
Si scriva un programma che utilizzi la scheda grafica per:
File ausiliari forniti:
file_ops.h: legge/scrive un file da disco.
Metodi definiti:
size_t read_file(const char *fname, char **content);
Carica il contenuto del file fname in un buffer di adeguate dimensioni, e aggiorna content per farlo puntare a questo buffer. Restituisce il numero di byte letti.
size_t write_file(const char *fname, const char *content, size_t fsize);
Salva fsize byte del buffer content in un file con nome fname. Restituisce il numero di byte effettivamente scritti;
incodice.bin: testo cifrato con chiave corsocuda (728547 spazi).