ALGORITHMS AND PROTOCOLS FOR SECURITY

Ingegneria Informatica ALGORITHMS AND PROTOCOLS FOR SECURITY

0622700091
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA
EQF7
COMPUTER ENGINEERING
2022/2023



OBBLIGATORIO
YEAR OF COURSE 1
YEAR OF DIDACTIC SYSTEM 2022
SPRING SEMESTER
CFUHOURSACTIVITY
432LESSONS
324EXERCISES
216LAB


Objectives
L’INSEGNAMENTO FORNISCE GLI STRUMENTI METODOLOGICI ED OPERATIVI DI BASE PER LA GESTIONE DELLA SICUREZZA DEI SISTEMI DI ELABORAZIONE E DELLE RETI DI CALCOLATORI, ATTRAVERSO LE CONOSCENZE DI BASE DELLE TECNICHE DI CRITTOGRAFIA, DEGLI ALGORITMI E PROTOCOLLI DI AUTENTICAZIONE, DEI PRINCIPALI PROTOCOLLI PER COMUNICAZIONI SICURE E LE POSSIBILI VULNERABILITÀ IN RETE E PRINCIPALI MECCANISMI DI PROTEZIONE.

CONOSCENZA E CAPACITÀ DI COMPRENSIONE
ASPETTI TEORICI E PRATICI DELLA SICUREZZA DEI SISTEMI DI ELABORAZIONE E DELLE RETI DI CALCOLATORI; SCHEMI DI AUTENTICAZIONE E DI PROTEZIONE DEI DATI BASATI SU CRITTOGRAFIA; PROPRIETÀ DI SICUREZZA CHE UNA PRIMITIVA CRITTOGRAFICA DEVE SODDISFARE; COMPRENSIONE DEI PRINCIPALI STRUMENTI PER LA PROGETTAZIONE DI PRIMITIVE SICURE; CONOSCENZA E COMPRENSIONE DELLE TECNICHE DI INTRUSIONE E DI RILEVAMENTO DELLE INTRUSIONI; CONOSCENZA E CLASSIFICAZIONE DI VIRUS E MALWARE E DI TECNICHE E STRUMENTI PER LA LORO ANALISI ED INDIVIDUAZIONE.

CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE
ANALIZZARE LE PROPRIETÀ DI SICUREZZA DI UN SISTEMA; PROGETTARE UN SISTEMA INFORMATICO SICURO ELEMENTARE E PROVARE CHE IL SISTEMA PROGETTATO SODDISFI LE PROPRIETÀ PREVISTE. CONFIGURARE MECCANISMI DI AUTENTICAZIONE E DI SCAMBIO DI DATI SICURI ATTRAVERSO UNA RETE. INDIVIDUARE POSSIBILI SOLUZIONI PER LA DIFESA DI SISTEMI INFORMATIVI IN RETE; CAPACITÀ DI INDIVIDUARE ATTACCHI INFORMATICI, DI APPLICARE LE CONOSCENZE ACQUISITE PER LA PREVENZIONE E L'ELIMINAZIONE DI INTRUSIONI.
Prerequisites
NOZIONI DI PROBABILITÀ, PROGETTAZIONE ED ANALISI DI ALGORITMI, LINGUAGGIO JAVA.
Contents
Unità didattica 1: Randomness e crittografia simmetrica
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 12/6/4)
- 1 (2 ORE Lezione): Introduzione al corso ed al concetto di protezione dei dati
- 2 (2 ORE Lezione): Cifrari storici, sicurezza perfetta con one-time pad
- 3 (2 ORE Lezione): Randomness e pseudorandomness
- 4 (2 ORE Esercitazione): Esempi di attacchi alla cifratrura e loro analisi
- 5 (2 ORE Lezione): Cifratura a flusso, a blocchi e modalità operative
- 6 (2 ORE Esercitazione): Casi d'uso per la protezione dei dati confidenziali
- 7 (2 ORE Laboratorio): Uso di funzioni e tool per la cifratura dei dati
- 8 (2 ORE Lezione): Threat models per la cifratura
- 9 (2 ORE Lezione): Codici per l'autenticazione dei messaggi
- 10 (2 ORE Esercitazione): Esempi di attacchi all'integrità e loro analisi
- 11 (2 ORE Laboratorio): Uso di funzioni e tool per il MAC e cifratura autenticata
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: Nozione di cifratura sicura, di (pseudo)randomness e di MAC
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: strumenti e librerie per utilizzare correttamente la (pseudo)randomness e la crittografia simmetrica

Unità didattica 2: Crittografia asimmetrica
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 8/6/4)
- 12 (2 ORE Lezione): Teoria dei numeri
- 13 (2 ORE Esercitazione): Esempi di problemi concreti di teoria dei numeri ritenuti intrattabili
- 14 (2 ORE Lezione): Accordo di chiavi su canali insicuri
- 15 (2 ORE Esercitazione): Combinare l'accordo di chiavi con la crittografia simmetrica
- 16 (2 ORE Lezione): Cifratura a chiave pubblica
- 17 (2 ORE Esercitazione): Esempi di attacchi e di uso di cifratura ibrida
- 18 (2 ORE Laboratorio): Uso di funzioni per la gestione di gruppi finiti di grandi dimensioni e numeri primi
- 19 (2 ORE Laboratorio): Uso di funzioni e tool per l'accordo di chiavi e la cifratura asimmetrica
- 20 (2 ORE Lezione): Firme digitali
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: cifratura a chiave pubblica, firme digitali, teoria dei numeri
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: strumenti e librerie per utilizzare correttamente la crittografia asimmetrica

Unità didattica 3: Funzioni hash crittografiche e decentralizzazione
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 6/2/2)
- 21 (2 ORE Lezione): Funzioni resistenti alle collisioni (CRHF) e oracoli casuali
- 22 (2 ORE Esercitazione): Uso di CRHF per le firme digitali e Proof of Work
- 23 (2 ORE Lezione): Uso di CRHF e firme digitali per la decentralizzazione dei servizi
- 24 (2 ORE Lezione): Secret sharing e threshold decryption
- 25 (2 ORE Laboratorio): Uso di funzioni e tool per le CRHF e le loro applicazioni
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: funzioni hash crittografiche, decentralizzazione di un single point of failure
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: strumenti e librerie per utilizzare correttamente le funzioni hash crittografiche

Unità didattica 4: Infrastruttura a chiave pubblica e TLS
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 2/2/4)
- 26 (2 ORE Lezione): PKI, certificati digitali X509v3 e TLS
- 27 (2 ORE Esercitazione): Esempi di attacchi e contromisure con PKIX+TLS
- 28 (2 ORE Laboratorio): Gestione di una certification authorithy
- 29 (2 ORE Laboratorio): Uso di funzioni e tool per certificati digitali e TLS
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: certificati digitali e sessioni di comunicazione sicure su canali insicuri
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: strumenti e librerie per la gestione dei certificati digitali e comunicazioni sicure

Unità didattica 5: Privacy e security by design
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 0/6/2)
- 30 (2 ORE Esercitazione): Esempi di modelli di sicurezza con threat model e proprietà di privacy e integrità
- 31 (2 ORE Esercitazione): Esempi di utilizzo combinato di algoritmi e protocolli per realizzazioni sicure di funzionalità
- 32 (2 ORE Esercitazione): Esempi di analisi di un sistema
- 33 (2 ORE Laboratorio): Configurazione di un web server https
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: modellazione, progettazione e analisi di sistemi confidenziali e sicuri by design
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: client-server web sicuri con https

Unità didattica 6: Protezione dei sistemi
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 4/2/0)

- 34 (2 ORE Lezione): Tecniche di intrusione e loro rilevamento, VPN e Tunnelling
- 35 (2 ORE Lezione): Virus, Malware, Trojan, Ransomware
- 36 (2 ORE Esercitazione): Configurazione di un firewall ed esempi di uso di VPN e Tunnelling
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: meccanismi di intrusione e controllo dei sistemi e loro contromisure
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: gestione di un firewall e di uso di una VPN

TOTALE ORE LEZIONE/ESERCITAZIONE/LABORATORIO 32/24/16
Teaching Methods
L’INSEGNAMENTO CONTEMPLA LEZIONI TEORICHE, ESERCITAZIONI IN AULA O IN LABORATORIO.
LE LEZIONI PRESENTANO PRIMITIVE CRITTOGRAFICHE, ALGORITMI E PROTOCOLLI DI SICUREZZA DISCUTENDO IN PARTICOLARE LE LORO APPLICAZIONI PER LA SOLUZIONE DI PROBLEMI REALI.
NELLE ESERCITAZIONI IN LABORATORIO GLI STUDENTI UTILIZZANO I TOOL, I LINGUAGGI E E LE LIBRERIE RELATIVI AGLI ARGOMENTI TRATTATI NEL CORSO. NELLE ESERCITAZIONI IN AULA VIENE ASSEGNATO AGLI STUDENTI, DIVISI PER GRUPPI DI LAVORO, UN PROJECT-WORK DA SVILUPPARE DURANTE IL CORSO. IL PROJECT-WORK COMPRENDE I PRINCIPALI CONTENUTI DELL’INSEGNAMENTO ED È STRUMENTALE ALL’ACQUISIZIONE, OLTRE CHE DELLE CAPACITÀ DI UTILIZZARE LE NOZIONI INTRODOTTE DAL CORSO ANCHE A SVILUPPARE E RAFFORZARE LE CAPACITÀ DI LAVORARE IN TEAM.
Verification of learning
LA PROVA DI ESAME È FINALIZZATA A VALUTARE NEL SUO COMPLESSO LE CONOSCENZE E LE CAPACITÀ DI COMPRENSIONE DEI CONCETTI PRESENTATI A LEZIONE, NONCHE' LA CAPACITÀ DI APPLICARE TALI CONOSCENZE NELLA SOLUZIONE DI PROBLEMI DI SICUREZZA.

LA PROVA D’ESAME SI ARTICOLA NELLA VALUTAZIONE DEL PROGETTO SVOLTO DURANTE IL CORSO ED UNA PROVA SCRITTA. SARANNO VERIFICATA LE CONOSCENZE ACQUISITE IN MERITO ALLE PRIMITIVE CRITTOGRAFICHE, GLI ALGORITMI ED I PROTOCOLLI DI SICUREZZA, LE INTRUSIONI E LE VULNERABILITA'. CON IL WORK-PROJECT SARANNO VALUTATE LE CAPACITA’ DI APPLICARE LE NOZIONI PROPOSTE A LEZIONE.
NELLA VALUTAZIONE FINALE, ESPRESSA IN TRENTESIMI, LA VALUTAZIONE DELLE ATTIVITÀ PROGETTUALI PESERÀ PER IL 40% MENTRE LA PROVA SCRITTA PER IL RESTANTE 60%.
Texts
PARTE DEL CORSO FARÀ RIFERIMENTO AI SEGUENTI LIBRI
JONATHAN KATZ E YEHUDA LINDELL, "INTRODUCTION TO MODERN CRYPTOGRAPHY", CHAPMAN AND HALL/CRC (SECONDA EDIZIONE O SUCCESSIVE).

WILLIAM STALLINGS, SICUREZZA DEI COMPUTER E DELLE RETI, PEARSON, 2022

MATERIALE DIDATTICO INTEGRATIVO SARÀ DISPONIBILE NELLA SEZIONE DEDICATA DELL'INSEGNAMENTO ALL'INTERNO DELLA PIATTAFORMA E-LEARNING DI ATENEO (HTTP://ELEARNING.UNISA.IT) ACCESSIBILE AGLI STUDENTI DEL CORSO TRAMITE LE CREDENZIALI UNICHE DI ATENEO
More Information
L'INSEGNAMENTO E' EROGATO IN ITALIANO

  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2022-09-16]