Complementi di elettronica - a.a. 2012-2013
II prova intracorso - 19/12/2013
Il cifrario di Cesare
Il cifrario di Cesare è un cifrario a sostituzione monoalfabetica in cui ogni lettera del testo in chiaro è sostituita nel testo cifrato dalla lettera che si trova k posizioni dopo nell'alfabeto. Il numero di posizioni k è la chiave del codice che consente di crittografare dei messaggi in chiaro e anche di decriptare i messaggi cifrati. Il nome del cifrario deriva dal fatto che Giulio Cesare utilizzava per le sue corrispondenze riservate un codice di sostituzione in cui ciascuna lettera veniva sostituita dalla lettera che la segue di tre posti nell'alfabeto.
Obiettivo
Progettare, implementare e testare un circuito per la crittografia secondo il cifrario di Cesare.
Si consideri un alfabeto composto dalle 26 lettere dell’alfabeto latino (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z), seguito nell’ordine da 6 caratteri speciali (apice, punto, virgola, punto e virgola, spazio, invio).
L’ingresso del circuito è costituito quindi da 32 pin che rappresentano virtualmente i contatti elettrici di una tastiera con soli 32 tasti. Quando un tasto viene premuto il pin corrispondente diventa alto, mentre tutti gli altri ingressi restano bassi. Solo un tasto alla volta può essere premuto.
Si consideri come ulteriore ingresso al circuito anche la chiave k, costituita da 5 bit, che rappresentano la codifica in binario del numero k.
L’uscita del circuito è costituita da 32 pin che rappresentano virtualmente i contatti elettrici della tastiera dopo la crittografia secondo il cifrario di Cesare con chiave k.
Per il progetto si consideri l’FPGA della famiglia Cyclone II con package EP2C35F672C6.
Si osservi che lo stesso circuito per la codifica con chiave k consente anche la decodifica del messaggio criptato attraverso cifratura con chiave uguale al “complemento a 32 di k”.
Risultati attesi
- Schema di progetto del circuito da realizzare (su carta)
- File di progetto del cifrario di Cesare (unitamente ai file che lo compongono compilati e privi di errori).
- Test bench del cifrario di Cesare
- Immagine “Wave” di ModelSim dopo la simulazione del comportamento del circuito a livello RTL
- Il circuito ha il comportamento atteso? Da cosa si evince? (risp. su carta)
- Decodifica attraverso l’implementazione del cifrario di Cesare del messaggio cifrato con chiave k=3: FRPSOHPRWLLBIGLBHOHHWWUQRLFD
-
Complementi di Elettronica analogica - Esercitazione 1
-
Elettronica analogica - Esercitazione
-
Elettronica analogica - Esercitazione
-
Elettronica analogica - Esercitazione