Optional group:
curriculum Sistemi Informatici Complessi II ANNO -quattro insegnamenti a scelta tra tredici - (show)
|
24
|
|
|
|
|
|
|
|
20810140 -
CYBERSECURITY
(objectives)
The Cybersecurity course intends to provide the student with competencies needed for understanding and tackling cybersecurity problems for ICT systems and complex organizations, to design networks and computing systems with a certain level of security, and to planning e manage activities related to cybersecurity. The course provides competences about attacks, countermeasures, cryptographic tools, applications, and methodologies in the cybersecurity field. Advanced topics in data integrity are also addressed.
-
PIZZONIA MAURIZIO
( syllabus)
• Course introduction • Introduction to computer security and terminology • Vulneability and threats ◦ Software vulnerabilities. Trusted and untrusted input, input validation. Vulnerabilities of applications written with interpreted languages, code injection. Injection into web pages: XSS. Cross site request forgery. OWASP. ▪ Example of web site that is vulnerable to sql injection ◦ buffer overflow attacks. Exploitation: privilege excalation, intrusions through opens services, intrusions through untrusted documents (email, web, etc). ▪ Example of vulnerable code, buffer overflow and related exploit ◦ Vulnerabilities of networks: sniffing, mac flood, ARP poisoning, vulnerability of DNS, Kaminsky attack. TCP session hijecking, MitM attack, DoS and Distributed DoS, Route hijacking. • Security planning : security plan content, risk analysis. • Countermeasures ◦ Design principles of policies and mechanisms. ◦ Models: AAA, confinement, DAC, MAC, access control matrix ◦ Cryptographic techniques: ▪ critptography basics (hash, symmetric c., asymmetric c., MAC, digital signature), birthday attack, rainbow, key quality, pseudo-random number generators. ▪ Authentication protocols and key exchange. replay and reflection attacks. Nonces. Perfect Forward Secrecy. Diffie-Helman. ▪ Certificates, certification authority, public key infrastructures and their vulnerabilities. ▪ Applications: Protocols ssl, tls, ssh, virtual private networks, ipsec, etc. Autnetication protocols wan and lan. radius and vulnerabilities. Other applications. ◦ Anomaly detection systems. ◦ System security: ▪ general principles: passwords and their vulnerabilities, hardening, assessment and auditing ▪ unix: discertionaly access control, file system security, authentication, PAM, syslog ◦ Network security: ▪ Firewalling:stateless and statefull firewall, connections, syn-proxy and syn-cookies, load balancing and high availability, linux netfilter and configuration examples. ▪ Network siecurity at level 1 and 2. ▪ Applicative proxies and network intrusion detection systems . • Authenticated Data Structures • Distributed Ledger Technologies and Bitcoin • Smart contracts • Cybersecurity in big organizations.
( reference books)
Course handouts
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Core compulsory activities
|
ITA |
20810211 -
Algorithms for big data
(objectives)
In many application contexts huge volumes of data are produced which are used in the economic-financial, political, social and even institutional fields. Often the data is stored in huge distributed clouds and is sometimes generated according to a continuous flow, so large as to make complete storage unfeasible. In many cases the data pertains to entities in close relationship with each other and gives rise to massive networks of connections. Familiar examples for such networks are biological and social networks, distribution networks, and the Web graph. Furthermore, the fact that the data is stored in systems managed by third parties poses integrity problems, which have not been considered in the classical IT literature in terms of both their type and scale.
This scenario poses unprecedented algorithmic challenges, which are being considered by a vast audience of researchers. In the last decade, this effort has produced many innovations on both the methodological and technological level. This course aims at transferring to the students some of the most important methodological tools originated from the research on Big Data algorithms. These methodological tools are presented within challenging application contexts.
-
DI BATTISTA GIUSEPPE
( syllabus)
1) Algorithms for data streams - Approximate counting - Majority problems - Sampling and reservoir sampling - Bloom filters - Frequent itemsets - Number of distinct elements 2) Algorithms and data structures for quantitative features analysis - orthogonal range searching (kd-trees, range trees, and layered range trees) - median finding - multidimensional divide and conquer, closest pair - fractional cascading 3) Algorithms for the decomposition of complex networks - Decomposition into k-connected components - Decomposition into k-cores, maximal cliques, maximal k-plexes 4) Locality sensitive hashing for finding similar items - Min-Hashing - Nearest neighbour search, k-nearest neighbour search
( reference books)
Slides plus: Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Cambridge University Press http://www.mmds.org/
-
FRATI FABRIZIO
( syllabus)
1) Algorithms for data streams - Approximate counting - Majority problems - Sampling and reservoir sampling - Bloom filters - Frequent itemsets - Number of distinct elements 2) Algorithms and data structures for quantitative features analysis - orthogonal range searching (kd-trees, range trees, and layered range trees) - median finding - multidimensional divide and conquer, closest pair - fractional cascading 3) Locality sensitive hashing for finding similar items - Min-Hashing - Nearest neighbour search, k-nearest neighbour search 4) NoSQL internals & Distributed Hash Tables - Chord - consistent hashing - Kademlia 5) Scalable security: - integrity of big data sets in the cloud, - consistency and scalability issues with authenticated data structures
( reference books)
Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Cambridge University Press http://www.mmds.org/
-
DA LOZZO GIORDANO
( syllabus)
1) Algorithms for data streams - Approximate counting - Majority problems - Sampling and reservoir sampling - Bloom filters - Frequent itemsets - Number of distinct elements 2) Algorithms and data structures for quantitative features analysis - orthogonal range searching (kd-trees, range trees, and layered range trees) - median finding - multidimensional divide and conquer, closest pair - fractional cascading 3) Locality sensitive hashing for finding similar items - Min-Hashing - Nearest neighbour search, k-nearest neighbour search 4) NoSQL internals & Distributed Hash Tables - Chord - consistent hashing - Kademlia 5) Scalable security: - integrity of big data sets in the cloud, - consistency and scalability issues with authenticated data structures
( reference books)
Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Cambridge University Press http://www.mmds.org/
-
PIZZONIA MAURIZIO
( syllabus)
1) Algorithms for data streams - Approximate counting - Majority problems - Sampling and reservoir sampling - Bloom filters - Frequent itemsets - Number of distinct elements 2) Algorithms and data structures for quantitative features analysis - orthogonal range searching (kd-trees, range trees, and layered range trees) - median finding - multidimensional divide and conquer, closest pair - fractional cascading 3) Locality sensitive hashing for finding similar items - Min-Hashing - Nearest neighbour search, k-nearest neighbour search 4) NoSQL internals & Distributed Hash Tables - Chord - consistent hashing - Kademlia 5) Scalable security: - integrity of big data sets in the cloud, - consistency and scalability issues with authenticated data structures
( reference books)
Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Cambridge University Press http://www.mmds.org/
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Core compulsory activities
|
ITA |
20810223 -
INGEGNERIA DEI DATI
(objectives)
Providing skills on systems, methods, and technologies for extraction, cleaning, analyzing and integrating and management of unstructured data.
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Core compulsory activities
|
ITA |
20810261 -
Computer Graphics
(objectives)
This course aims at illustrating the modern software and hardware computer graphics architectures, and at providing mathematical, technical and methodological solutions for the development of projects concerning the visualization of data in 2D or 3D. The course will expose base concepts in computer graphics such as spaces, curves, surfaces and volumes, focusing on notions and algorithms currently used in scientific visualization, videogames, and computer animation. Moreover, this course aims at exposing details of hardware and software platforms currently in use.
-
MILICCHIO FRANCO
( syllabus)
Hardware architectures; Software architectures; OpenGL, Vulkan; CUDA and OpenCL; Curves, surfaces, volumes; Algorithms for computer graphics and animation; Base concepts of physics-based animation.
( reference books)
Official documentations - Unreal Game Engine: - Vulkan - DirectX - OpenGL - CUDA, OpenCL
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Core compulsory activities
|
ITA |
20802136 -
CYBER PHYSICAL SYSTEMS
(objectives)
The design of Cyber-Physical Systems (CPS) requires multi-disciplinary skills. In particular, the combined knowledge of various disciplines such as, control theory, signal processing, fault detection, and real-time computing, is crucial for the effective developments of CPS. Consequently, the course aims at providing to the students basics on such thematic areas considering a system-oriented approach. Moreover, also innovative methodologies for fault diagnosis and protection of CPS will be discussed considering the direct study of advanced research papers.
|
6
|
ING-INF/04
|
54
|
-
|
-
|
-
|
Core compulsory activities
|
ITA |
20810262 -
Deep Learning
(objectives)
Provide advanced and specific skills in Deep neural networks. The course consists of a theoretical part on the fundamental concepts, and laboratory activities in which these concepts are applied and developed through a software framework. At the end of the course the student will be able to: adequately train and optimize Deep neural networks; distinguish between different solutions and be able to choose and customize the most effective architectures in real-world scenarios, supervised, unsupervised or following a reinforcement learning approach.
-
GASPARETTI FABIO
( syllabus)
Introduction to DL; Training of Deep Architecture: hyperparameter tuning, batch normalization, faster optimizers, regularization ; Convolutional Neural Networks (CNN/ConvNets); Recurrent Neural Networks (GRU, LSTM, Bidirectional); Encoder-Decoder, Autoencoders, Variational Autoencoders; Attention layers ; Generative Adversarial Networks (GAN); Deep Reinforcement Learning; Embeddings; Use cases: AlexNet, VGG, NiN, GoogLeNet/Inception, ResNet, DenseNet; Use cases: Computer Vision and NLP
( reference books)
Simon J.D. Prince. "Understanding Deep Learning". MIT Press Dec 5th 2023 A. Geron, “Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems”, O'Reilly Media, Inc, USA, 2019.
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Core compulsory activities
|
ITA |
20810263 -
Logica
(objectives)
The course aims at giving basic knowledge of classical and some non-classical logics, their formal semantics and proof systems. Students will acquire the capability to use the studied logics for representation purposes and will be presented with some important applications of logic in computer science.
|
6
|
ING-INF/05
|
54
|
-
|
-
|
-
|
Core compulsory activities
|
ITA |
|