Gruppo opzionale:
comune Orientamento unico QUATTRO A SCELTA TRA - (visualizza)
|
24
|
|
|
|
|
|
|
|
20801791 -
PROGRAMMAZIONE CONCORRENTE
(obiettivi)
Comprendere le problematiche della programmazione di attività concorrenti. Utilizzare linguaggi di programmazione diffusi per la risoluzione di problemi concorrenti. Affrontare le recenti direzioni di evoluzione delle metodologie e delle tecnologie per la programmazione di attività concorrenti.
-
CRESCENZI VALTER
( programma)
FONDAMENTI DI PROGRAMMAZIONE CONCORRENTE • PROCESSI SEQUENZIALI E PARALLELI • ASSUNZIONE DI PROGRESSO FINITO, FAIRNESS E STALLO • INTERFERENZA E CONDIZIONI DI BERNSTEIN • SEMAFORI DI DIJKSTRA • REGIONI CRITICHE CONDIZIONALI • MONITOR • PROBLEMI CLASSICI
PROCESSI E THREAD IN C SOTTO LINUX • CREAZIONE DEI PROCESSI: FORK() & EXEC() • MECCANISMI IPC: SEGNALI, PIPES, SHARED MEMORY, SEMAFORI • CREAZIONE DEI THREAD POSIX: PTHREAD_CREATE() • STRUMENTI DI SINCRONIZZAZIONE PER THREAD: MUTEX, VARIABILI CONDIZIONE, SEMAFORI • THREAD SPECIFIC DATA • PROGRAMMAZIONE CLIENT / SERVER IN C SOTTO LINUX (RIEPILOGO) • SOCKET • PROGRAMMAZIONE DI PROTOCOLLI CONNESSI • PROGRAMMAZIONE DI PROTOCOLLI NON-CONNESSI • RISOLUZIONE DI PROBLEMI DI COMPETIZIONE LATO SERVER
JAVA THREAD • CREAZIONE THREAD IN JAVA • JAVA MONITOR • COOPERAZIONE E SINCRONIZZAZIONE THREAD IN JAVA CON WAIT() & NOTIFY() • TECNICHE DI PROGRAMMAZIONE THREAD-SAFE • IL PACKAGE JAVA.UTIL.CONCURRENT
ARGOMENTI AVANZATI • ALGORITMI NON-BLOCKING • TESTING DI APPLICAZIONI CONCORRENTI • MODELLO AD ATTORI • REACTIVE STREAMS
( testi)
BRIAN GOETZ JAVA CONCURRENCY IN PRACTICE - ADDISON WESLEY DOUG LEA. CONCURRENT PROGRAMMING IN JAVA SECONDA ED. - ADDISON WESLEY MAURICE HERLIHY, NIR SHAVIT THE ART OF MULTIPROCESSOR PROGRAMMING - MORGAN KAUFMANN
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Attività formative caratterizzanti
|
ITA |
20801795 -
SICUREZZA DEI SISTEMI INFORMATICI E DELLE RETI
(obiettivi)
Fornire le competenze necessarie per comprendere e fronteggiare problematiche di sicurezza nell'ambito delle reti e dei sistemi informatici, per progettare sistemi informatici e reti con un certo livello di sicurezza e per gestire le attività legate alla sicurezza informatica anche in riferimento gli obblighi normativi italiani.
-
PIZZONIA MAURIZIO
( programma)
• INTRODUZIONE AL CORSO • INTRODUZIONE ALLA SICUREZZA INFORMATICA E TERMINOLOGIA • VULNERABILITÀ E MINACCE • VULNERABILITÀ DEL SOFTWARE INPUT FIDATO E NON FIDATO, VALIDAZIONE DELL'INPUT. VULNERABILITÀ DI APPLICAZIONI SCRITTE IN LINGUAGGI INTERPRETATI, CODE INJECTION. • ESEMPIO DI SITO VULNERABILE A SQL INJECTION • ATTACCHI DI TIPO BUFFER OVERFLOW. EXPLOITATION: PRIVILEGE EXCALATION, INTRUSIONI VIA RETE TRAMITE SERVIZI APERTI, INTRUSIONE VIA DOCUMENTI NON FIDATI (VIA EMAIL, VIA WEB O ALTRO). • ESEMPIO DI CODICE VULNERABILE A BUFFER OVERFLOW E RELATIVO EXPLOIT • SECURE PROGRAMMING. • MALAWARE E SCOCIAL ENGINEERING: VIRUS, WORM, TROJAN, ROOTKIT, BACKDORS, SNIFFER, SPYWARE, ADWARE, ECC. SCRIPT KIDDIES. PHISHING E CROSS-SITE SCRIPTING. • VULNERABILITÀ DELLE RETI: SNIFFING, MAC FLOOD, ARP POISONING, VULNERABILITÀ DEL DNS. TCP SESSION HIJECKING, ATTACCHI MITM, DOS E DISTRIBUTED DOS, ROUTE HIJECKING. • ESERCIZI SU VULNERABILITÀ • CONTROMISURE • PRINCIPI DI PROGETTAZIONE DI POLITICHE E MECCANISMI • MODELLI: AAA, CONFINAMENTO, DAC, MAC, ACCESS CONTROL MATRIX, • SICUREZZA DEI SISTEMI: • PRINCIPI GENERALI (PASSWORDS E VULNERABILITÀ, METODOLIGA DI HARDENING, ASSESSMENT E AUDITING) • UNIX (CONTROLLO DI ACCESSO DISCREZIONARIO, SICUREZZA NEL FILESYSTEM, AUTENTICAZIONE, PAM, HARDENING, SYSLOG) • CONFINAMENTO IN SISTEMI DAC (JAILING E VIRTUALIZZAZIONE), SELINUX • WINDOWS: NTFS • SICUREZZA DEI SISTEMI RFID • ESERCIZI SU ACCESS CONTROL E SICUREZZA DI SISTEMA. • SICUREZZA DELLE RETI: • SICUREZZA A LIVELLO 1 E 2, FIREWALL STATELESS E STATEFULL, LINUX NETFILTER ED ESEMPI DI CONFIGURAZIONI, PROXY E LORO VULNERABILITÀ. SUDDIVISIONI DI CARICO E FULL HIGH-AVAILABILITY. INTRUSION DETECTION SYSTEMS DI RETE. • ESERCIZI SULLA SICUREZZA DELLE RETI. • TECNICHE CRITTOGRAFICHE: • RICHIAMI DI CRITTOGRAFIA (HASH, SIMMETRICA, ASIMMETRICA, MAC, FIRMA DIGITALE), ATTACCHI BIRTHDAY, RAINBOW, QUALITÀ DELLE CHIAVI, GENERAZIONE DI NUMERI PESUDO-CASUALI. • PROTOCOLLI DI AUTENTICAZIONE E DI SCAMBIO DI CHIAVI. ATTACCHI REPLAY E REFLECTION. NONCES. • ESERCIZI SU PROTOCOLLI DI AUTENTICAZIONE E SCAMBIO DI CHIAVI. • CERTIFICATI, CERTIFICATION AUTHORITY, PUBLIC KEY INFRASTRUCTURE E LORO VULNERABILITÀ. APPLICAZIONI: POROTOCOLLI SSL, TLS, SSH, VIRTUAL PRIVATE NETWORK, IPSEC, PPTP. PROTOCOLLI DI AUTENTICAZIONE PUNTO-PUNTO PAP, CHAP, MS-CHAP, EAP. AUTENTICAZIONE DEGLI UTENTI IN RETE LOCALE 802.1X, RADIUS E VULNERABILITÀ. • ASPETTI GESTIONALI: PIANIFICAZIONE, PROGETTAZIONE E NORMATIVA. • STANDARD E CERTIFICAZIONE: TCSEC, ITSEC, COMMON CRITERIA, ISO17799, ISO27001 • PIANIFICAZIONE DELLA SICUREZZA: OBBLIGHI NORMATIVI RELATIVI AL DLGS 196/2003 E IL DPS, IL PIANO DI SICUREZZA AZIENDALE (CONTENUTI, VANTAGGI ORGANIZZATIVI, POLICY, STATO ATTUALE, ANALISI DEI RISCHI, REQUISITI, CONTROMISURE, RISPOSTA AGLI INCIDENTI, BUSSINES CONTINUITY, DISASTER RECOVERY). • ESERCIZI SU PIANIFICAZIONE, PROGETTO E NORMATIVA (SOLUZIONI). • ARGOMENTI SOLO PER GLI STUDENTI DELL'ORDINAMENTO DM270. • STRUTTURE DATI AUTENTICATE • SICUREZZA DI SISTEMA - WINDOWS
( testi)
MATERIALE FORNITO DAL DOCENTE. TESTI DI RIFERIMENTO • M. BISHOP, "COMPUTER SECURITY: ART AND SCIENCE", ADDISON-WESLESY. • C. KAUFMAN, R. PERLMAN, M. SPECINER, "NETWORK SECURITY: PRIVATE COMUNICATION IN A PUBLIC WORLD (SECOND EDITION)", PRENTICE HALL. • C. PFLEEGER, S. PFLEEGER, "SICUREZZA IN INFORMATICA", PEARSON - PRENTICE HALL. • M. E. RUSSINOVICH, D. A. SOLOMON, "MICROSOFT WINDOWS INTERNALS, FOURTH EDITION", MICROSOFT PRESS.
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Attività formative caratterizzanti
|
ITA |
20801798 -
SISTEMI INTELLIGENTI PER INTERNET
(obiettivi)
Affrontare le problematiche relative allo studio, alla realizzazione e alla sperimentazione di sistemi software per Internet, realizzati mediante tecniche di Intelligenza Artificiale. Particolare attenzione è posta sui sistemi adattivi basati su modellazione dell'utente.
-
MICARELLI ALESSANDRO
( programma)
1. Introduzione ai Sistemi Intelligenti per Internet • Adaptive Web • Processi di Information Seeking
2. Information Retrieval nella Pratica • Architettura dei Motori di Ricerca • Metodi di elaborazione di documenti testuali • Tecniche di Ranking dei documenti • Modelli di Retrieval • Caso di studio: Il motore di ricerca open-source Galago
3. Machine Learning e Information Retrieval • Classificazione e Categorizzazione • Support Vector Machines • Clustering
4. User Modeling e Personalized Search • Tipologie di Modelli Utente • Tecniche di Modellazione Utente • Accesso personalizzato alle informazioni • Content-based Information Filtering
5. Social Search e Recommender Systems • User Tags e Manual Indexing • Searching with Communities • Collaborative Filtering • Recommender Systems
6. Metodi di Valutazione Sperimentale • Metriche per la valutazione sperimentale dei SII • Metodi statistici di hypothesis testing • Casi di studio
7. Seminari • Seminari di approfondimento su temi trattati a lezione
( testi)
BRUSILOVSKY, KOBSA E NEJDL "THE ADAPTIVE WEB: METHODS AND STRATEGIES FOR WEB PERSONALIZATION" SPRINGER, 2007.
DISPENSE INTEGRATIVE A CURA DEL DOCENTE.
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Attività formative caratterizzanti
|
ITA |
20810087 -
MACHINE LEARNING
(obiettivi)
Consentire agli studenti di approfondire i principali modelli e metodi dell’Apprendimento Automatico, come ad. esempio la Regressione, la Classificazione, il Clustering, il Deep Learning, ed utilizzarli come strumenti per lo sviluppo di tecnologie innovative.
-
MICARELLI ALESSANDRO
( programma)
1. Regression Il problema del predictive learning Linear Regression Valutazione delle prestazioni e Overfitting Ridge Regression e Lasso
2. Classification Logistic Regression per la classificazione Alberi di Decisione Algoritmo AdaBoost Support Vector Machine (Large Margin Classification, Kernel I, Kernel II) Naïve Bayes
3. Clustering e Retrieval Algoritmo K-NN Algoritmo K-Means Expectation Maximization Applicazioni all’Information Retrieval
4. Dimensionality Reduction Compressione e visualizzazione dei dati Principal Component Analysis (PCA) Scelta del numero di componenti principali Applicazioni nei Recommender Systems
5. Deep Learning Deep Forward Networks Regularization per il Deep Learning Convolutional Networks Applicazioni varie
6. Casi di Studio e Progetti Si esporranno vari casi di studio e si proporranno progetti in cui applicare le nozioni apprese su vari domíni d’interesse.
( testi)
Dispense a cura del docente.
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Attività formative caratterizzanti
|
ITA |
|