matbagnoletti / UniPGCifrari

Esercitazione assegnata nell'ambito del corso di Programmazione Procedurale del primo anno di Informatica presso l'Università degli Studi di Perugia.

Repository from Github https://github.commatbagnoletti/UniPGCifrariRepository from Github https://github.commatbagnoletti/UniPGCifrari

UniPG: esercizio cifrari

Made by @matbagnoletti

Matteo Bagnoletti Tini | matricola n° 377156

Corso di Programmazione Procedurale I° anno a.a. 2024/2025, UniPG - DMI

Ultimo commit Linguaggio

Descrizione

Esercitazione assegnata nell'ambito del corso di Programmazione Procedurale del primo anno di Informatica presso l'Università degli Studi di Perugia.

Requisiti

  • gcc (utilizzata v13.2.0) o altro compilatore C analogo

È possibile visualizzare la versione già presente sul proprio dispositivo mediante il seguente comando:

gcc -v

Richiesta dell'esercizio

Realizzare un programma in C che permetta all'utente di cifrare un messaggio utilizzando, a scelta, o il cifrario di Vigenère o il cifrario di Playfair. Per una visione più approfondita del testo e delle richieste del progetto, consultare il file PDF disponibile al seguente link.

Soluzione proposta

Il programma permette all'utente di cifrare un messaggio utilizzando il cifrario di Vigenère o il cifrario di Playfair. Per quanto riguarda il primo, l'utente dovrà inserire una chiave di cifratura (verme) di lunghezza massima 8 caratteri, mentre per il secondo verrà utilizzata la matrice 5x5 di Playfair generata a partire dalla parola "ESEMPIO".

Il programma si occuperà di formattare e ripulire sia il messaggio in chiaro (plaintext) che la chiave di cifratura, in modo tale da avere stringhe composte esclusivamente da caratteri alfabetici inglese in minuscolo (vedi formatted-plaintext). Infine verrà mostrato a video il messaggio cifrato (ciphertext), nonché informazioni utili quali il numero di caratteri scartati e se il messaggio è stato troncato o meno.

Installazione e utilizzo

Per poter utilizzare il programma, è necessario seguire i seguenti passaggi:

  1. Effettua il clone della repository con il comando:
    git clone https://www.github.com/matbagnoletti/UniPGCifrari.git
    In alternativa, effettua il download del file compresso del progetto ed estrailo in una cartella locale del tuo computer.
  2. Nel terminale, spostati nella cartella del progetto:
    cd UniPGCifrari
  3. Compila il codice sorgente:
     gcc soluzione.c -o [eseguibile] -std=c11
  4. Esegui il programma:
    ./[eseguibile]

About

Esercitazione assegnata nell'ambito del corso di Programmazione Procedurale del primo anno di Informatica presso l'Università degli Studi di Perugia.


Languages

Language:C 100.0%