Salta ai contenuti

Laboratorio 5: Stringhe e Pseudocasualità

Benvenuti alla pagina di riferimento del Laboratorio 5. In questa sessione applicheremo le stringhe C, la generazione pseudo-casuale deterministica (tramite seed) e la manipolazione di matrici bidimensionali di caratteri per implementare vincoli di sicurezza locali e globali.


Esercizio svolto in aula con il docente per prendere confidenza con lo shuffle pseudo-casuale e la crittografia a livello di byte.

  • Esercizio: Cifrario Byte-a-Byte con Password Mnemonica (byte_cipher.c)
  • Descrizione: Implementazione di un cifrario simmetrico che deriva un seed numerico da una password testuale, genera una permutazione pseudo-casuale di 256 byte tramite Fisher-Yates, e codifica/decodifica un testo in ingresso.
  • Archivio Esercitazione: Scarica lab5-demo.zip

(Nota: L’archivio contiene la traccia dettagliata in PDF e i file di input per i test).


Esercizio da svolgere in autonomia in aula o a casa per consolidare l’uso delle matrici bidimensionali e l’analisi di somiglianza tra stringhe. Gli studenti possono richiedere feedback sul proprio codice durante le ore di ricevimento o nelle sessioni d’aula successive.

  • Esercizio: Generatore di Password Robuste (password_set.c)
  • Descrizione: Scrittura di un programma per generare un insieme di NN password casuali di lunghezza LL salvate in una matrice 2D di caratteri, garantendo la robustezza locale (presenza di caratteri speciali, nessuna sequenza semplice) e globale (nessun duplicato, distanza di Hamming minima tra coppie).
  • Archivio Esercitazione: Scarica lab5-assignment.zip

(Nota: L’archivio contiene la traccia dettagliata in PDF e i file di input per i test).