Offerta Didattica

 

INGEGNERIA ELETTRONICA E INFORMATICA

CRITTOGRAFIA

Classe di corso: L-8 - Ingegneria dell'informazione
AA: 2019/2020
Sedi: MESSINA
SSDTAFtipologiafrequenzamoduli
FIS/03Affine/IntegrativaLiberaLiberaNo
CFUCFU LEZCFU LABCFU ESEOREORE LEZORE LABORE ESE
64024824024
Legenda
CFU: n. crediti dell’insegnamento
CFU LEZ: n. cfu di lezione in aula
CFU LAB: n. cfu di laboratorio
CFU ESE: n. cfu di esercitazione
FREQUENZA:Libera/Obbligatoria
MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli
ORE: n. ore programmate
ORE LEZ: n. ore programmate di lezione in aula
ORE LAB: n. ore programmate di laboratorio
ORE ESE: n. ore programmate di esercitazione
SSD:sigla del settore scientifico disciplinare dell’insegnamento
TAF:sigla della tipologia di attività formativa
TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio

Obiettivi Formativi

Il corso propone una introduzione alla sicurezza delle comunicazioni, con particolare riguardo alla crittografia moderna, fornendo i relativi strumenti matematici, utilizzati in crittografia nell'ultimo trentennio. L'obiettivo formativo specifico del corso è quello di dare le basi teoriche necessarie per permettere uno studio critico dei protocolli crittografici utilizzati in molte applicazioni (ad esempio autenticazione e commercio digitale). I risultati di apprendimento attesi alla luce dei descrittori di Dublino sono di seguito riportati. Conoscenza e capacità di comprensione: conoscenza e comprensione dei principali algoritmi di crittografia simmetrica, asimmetrica e dei protocolli crittografici più utilizzati; conoscenza e comprensione dei metodi di autenticazione e firma digitale. Conoscenza e comprensione dei metodi di crittoanalisi e distribuzione quantistica della chiave di cifratura basati sulle leggi della fisica quantistica Conoscenza e capacità di comprensione applicate: capacità di valutare il grado di sicurezza e i metodi di attacco di algoritmi e protocolli informatici. Capacità di analizzare e integrare strumenti crittografici nello sviluppo di sistemi per la protezione delle informazioni Autonomia di giudizio: capacità di valutare la bontà del software che implementa funzioni crittografiche in relazione al livello di sicurezza richiesto, al tipo di informazioni da proteggere, alle risorse di tempo e di calcolo necessarie per dedurre informazioni. Abilità comunicative: capacità di comunicare le conoscenze acquisite in modo chiaro, esaustivo, con rigore logico e con adeguata appropriatezza espressiva nel caso di comunicazione non tecnica, con interlocutori non esperti del settore. Capacità dapprendimento: capacità di sviluppare un metodo critico nello studio della materia, nella soluzione di problemi complessi, nella comprensione di nuovi algoritmi riportati in riviste specialistiche. Capacità di pensare da un punto di vista dell'attaccante, acquisendo familiarità con le tecniche di base per proteggere i dati all'interno di un sistema e i dati che vengono comunicati all'interno di una rete, contro diverse tipologie di reati informatici. Le linee guida dellapprendimento sono fornite tramite slide e appunti del docente.

Learning Goals

The course proposes an introduction to the security of communications, with particular regard to modern cryptography, providing the related mathematical tools, used in cryptography in the last thirty years. The specific educational objective of the course is to provide the theoretical basis necessary to allow a critical study of the cryptographic protocols used in many applications (for example authentication and digital commerce). The learning outcomes expected in light of the Dublin descriptors are shown below. Knowledge and understanding: knowledge and understanding of the main symmetric, asymmetric cryptographic algorithms and the most used cryptographic protocols; knowledge and understanding of authentication methods and digital signature. Knowledge and understanding of cryptanalysis and quantum distribution methods of the encryption key based on the laws of quantum physics Applied knowledge and understanding: ability to assess the degree of security and attack methods of computer algorithms and protocols. Ability to analyze and integrate cryptographic tools in the development of information protection systems Autonomy of judgment: ability to evaluate the quality of the software that implements cryptographic functions in relation to the required security level, the type of information to be protected, the time and calculation resources necessary to deduce information. Communication skills: ability to communicate the acquired knowledge in a clear, exhaustive manner, with logical rigor and with appropriate expressive appropriateness in the case of non-technical communication, with interlocutors who are not experts in the sector. Learning skills: ability to develop a critical method in the study of the subject, in the solution of complex problems, in the understanding of new algorithms reported in specialist journals. Ability to think from an attacker's point of view, becoming familiar with the basic techniques to protect data within a system and the data that are communicated within a network, against different types of computer crimes. Learning guidelines are provided by slides and notes from the teacher.

Metodi didattici

Il corso si svolge nel primo periodo didattico e comprende lezioni frontali con esercitazioni in aula (per un totale di 6 CFU= 48 h) . Le lezioni saranno svolte alla lavagna, con il supporto di slides e video. Le trasparenze verranno distribuite in anticipo.

Teaching Methods

The course takes place in the first teaching period. The lessons will be contact hours with theoretical explanation and exercises (for a total of 6 CFU = 48 h) The lecture will be held on the blackboard and are supplemented by video projection and slides. The slides will be distributed in advance

Prerequisiti

Al fine di comprendere e saper applicare la maggior parte delle tecniche descritte nell'attività frontale, è necessario conoscere gli elementi di base di informatica, di algebra e programmazione.

Prerequisites

Knowledge of the basic concept of computer science, abstract algebra and programming background.

Verifiche dell'apprendimento

1. Prove in itinere facoltative. Il superamento delle prove in itinere esonera lo studente dallo svolgimento dell'esame orale finale per la parte di programma oggetto delle prove in itinere sostenute con esito positivo. I dettagli sullo svolgimento di tali prove verranno illustrati dal docente all'inizio del corso. 2. Progetto implementativo su di un argomento concordato con il docente del corso 3. Colloquio orale. Lesame è finalizzato ad accertare il livello di conoscenza e capacità di comprensione raggiunto dallo studente sui contenuti teorici e metodologici indicati nel programma. Lesame orale richiede che lo studente sia in grado di illustrare e analizzare il funzionamento di un algoritmo o di un protocollo crittografico, rispetto ai requisiti di confidenzialità, autenticità, integrità e non ripudio. Sia in grado di valutare la complessità computazionale di un algoritmo crittografico rispetto alle operazioni di cifratura e di decifratura. Sia in grado di individuare vantaggi e svantaggi dei protocolli di cifratura rispetto alle applicazioni previste. Sia in grado di analizzare in dettaglio il funzionamento dei protocolli per la distribuzione quantistica delle chiavi. La prova orale verificherà inoltre la chiarezza espositiva e lutilizzo di un linguaggio con terminologia appropriata. La valutazione viene espressa in trentesimi con eventuale lode

Assessment

1. Optional ongoing tests. Passing the tests in progress exempts the student from carrying out of the final oral examination for the part of the program that is the subject of ongoing tests supported with a positive outcome. The details on the performance of these tests will be illustrated by the teacher at the beginning of the course. 2. Implementation project on a topic agreed with the course teacher 3. Oral interview. The exam is aimed at ascertaining the level of knowledge and understanding achieved by the student on the theoretical and methodological contents indicated in the program. The oral examination requires the student to be able to illustrate and analyze the functioning of an algorithm or a cryptographic protocol, with respect to the requirements of confidentiality, authenticity, integrity and non-repudiation. Both able to evaluate the computational complexity of a cryptographic algorithm with respect to encryption and decryption operations. Both able to identify the advantages and disadvantages of encryption protocols with respect to the foreseen applications. Be able to analyze in detail the operation of protocols for the quantum distribution of keys. The oral exam will also verify the clarity and the use of a language with appropriate terminology. The evaluation is expressed in thirtieths with possible praise

Programma del Corso

Sicurezza delle informazioni. Crittografia e crittanalisi. Steganografia e steganalisi. Watermarking e fingerprinting. Suggestione subliminale. Cifrari storici (Cesare, Hill, PlayFair, Vigenère, macchine a rotore, Enigma) e loro crittanalisi. Sicurezza incondizionata: cifrario di Vernam (One-Time Pad). Fondamenti matematici della moderna crittografia: campi finiti, teoria dei numeri. Introduzione alla crittografia moderna. Servizi di sicurezza: confidenzialità, integrità, autenticazione e non-ripudio. Algoritmi simmetrici. Principi della cifratura a blocchi. Cifrario di Feistel. DES (Data Encryption Standard). Attacchi al DES. Crittanalisi differenziale e lineare. La cifratura AES. Doppio e Triplo DES. Modalità di funzionamento della cifratura a blocchi. Cipher Block Chaining (CBC)- Output FeedBack (OFB)-Cipher FeedBack (CFB)- Counter Mode (CTR). Cifratura a flussi e RC4. Segretezza con crittografia simmetrica. Posizionamento della funzione di crittografia. Segretezza del traffico. Distribuzione delle chiavi. Generazione di numeri casuali. Generatori congruenziali lineari. Blum Blum Shub. Generatori di numeri realmente casuali. ANSI X9.17. Skew. Algoritmi asimmetrici. Funzioni one-way con trapdoor. Diffie-Hellman. ElGamal crittografico. L'algoritmo RSA. Crittanalisi dellRSA. Fattorizzazione e test di primalità. Sistema crittografico ibrido. Gestione delle chiavi. Distribuzione delle chiavi pubbliche. Distribuzione delle chiavi segrete tramite crittografia a chiave pubblica. Crittografia a curva ellittica. Autenticazione dei messaggi e funzioni hash. Sicurezza di funzioni hash e Mac. Attacchi a compleanno. Attacchi a forza bruta. Algoritmi di hash e MAC. SHA-1, SHA-2, MD5, Whirlpool, HMAC, CMAC. Firma digitale Diretta. Firma digitale arbitrata. Protocolli di autenticazione. Lo standard DSS. L'algoritmo DSA. Protocolli di autenticazione. Kerberos. X.509. Protocolli avanzati. Prove a conoscenza nulla. Firme alla cieca. Voto elettronico. Digital cash. Cenni sulla computazione quantistica. Computer quantistici e sicurezza degli algoritmi crittografici. Basi della crittografia quantistica: principio di indeterminazione di Heisenberg. Quantum entanglement. Protocolli che utilizzano il principio di indeterminazione di Heisenberg: BB84 Protocol, B92. Protocolli che utilizzano il Quantum Entanglement: Eckert (EPR), Varianti entangled del protocollo BB84. Implementazioni sperimentali. Sicurezza pratica della distribuzione quantistica delle chiavi

Course Syllabus

Introduction to the course. Information security: from classical to quantum cryptography. Multimedia Information Security: Cryptography and Steganography. Digital Watermarking & Fingerprinting. Subliminal suggestion. Steganalysis techniques. Classical Encryption techniques. Basic cryptanalysis techniques. Historical ciphers (Caesar, Hill, PlayFair, Vigenere, rotor machines , Enigma) and their cryptanalysis. Unconditional security : Vernam cipher (One-Time Pad). Mathematical foundations of modern cryptography: finite fields, number theory, complexity theory. Introduction to modern cryptography. Security services: confidentiality, integrity, authentication and non-repudiation. Symmetric Algorithms. Block cipher Principles. Feistel Cipher. DES (Data Encryption Standard). Snowball effect. Elements of mathematical cryptanalysis. Differential and Linear Cryptanalysis. Attack on DES. Advanced Encryption Standard. Evaluation criteria for AES. The AES cipher. More on Symmetric Ciphers. Double DES, Triple DES. Block cipher. Modes of Operation. Cipher Block Chaining (CBC). Output FeedBack (OFB). Cipher FeedBack (CFB). Counter Mode (CTR). Stream Ciphers and RC4. Confidentiality using symmetric encryption. Placement of encryption function. Traffic confidentiality. Key distribution. Random number generation. Linear congruential generators. Blum Blum Shub generator. Truly Random Number Generators. ANSI X9.17. Skew. Asymmetric algorithms. Public- key cryptography and RSA. Trapdoor One-way functions. Principles of public-key cryptosystems. Diffie-Hellman. ElGamal Cryptosystem. Hybrid cryptosystems. The RSA algorithm. Cryptanalysis of RSA. Factoring and primality testing. Hybrid cryptosystem. Key Management. Public Keys Distribution. Secret key distribution protocol using public key cryptography. Diffie- Hellman key Exchange. Elliptic curve cryptography. Message authentication and Hash functions. Security of hash functions and Macs. Birthday Attacks. Brute-force attacks. Cryptanalysis. Hash and MAC algorithms. SHA-1, SHA-2, MD5, Whirlpool, HMAC, CMAC. Digital signature. Direct digital signature. Arbitrated digital signature. Authentication Protocols. The standard DSS. The DSA algorithm. Authentication applications. Kerberos. X.509. Advanced protocols. Zero-knowledge proofs . Blind signatures. Secure elections. Digital cash. basics of quantum computation. Breaking crypto with quantum computers. Fundamentals of quantum cryptography: Heisenberg uncertainty principle, Quantum entanglement. Protocols utilizing Heisenberg's uncertainty principle: BB84 protocol, B92 Protocol. Protocols utilizing quantum entanglement: Eckert's protocol (EPR), Entangled BB84 variants. Experimental implementation. Practical security concerns in QKD.

Testi di riferimento: -W. Stallings, Crittografia e Sicurezza delle Reti, Mc Graw Hill - W. Stallings ,Cryptography and Network Security: Principles and Practice, Global Edition, Pearson - D. Stinson, Cryptography Theory And Practice, CRC Press - A.J. Menezes, P.C. van Oorschot, and S.A. Vanstone, Handbook of Applied Cryptography, CRC Press, Free at http://www.cacr.math.uwaterloo.ca/hac/ -Schneier: Applied cryptography. Wiley M.A. Nielsen, I.L. Chuang, "Quantum Computation and Quantum Information", Cambridge Univ. Press (2000)

Elenco delle unità didattiche costituenti l'insegnamento

Docente: GIOVANNA MARTINO

Orario di Ricevimento - GIOVANNA MARTINO

GiornoOra inizioOra fineLuogo
Giovedì 11:00 13:00Dipartimento di Ingegneria, Blocco B, piano 8, studio n.841
Note:
  • Segui Unime su:
  • istagram32x32.jpg
  • facebook
  • youtube
  • twitter
  • UnimeMobile
  • tutti