Crittografia Flashcards

1
Q

Quali aspetti coinvolge la sicurezza della comunicazione in rete

A

Riservatezza (Confidentiality) →solo il mittente ed il destinatario “legittimo” dovrebbero essere in grado di comprendere il contenuto del messaggio
Integrità (Integrity) dei messaggi →mittente e destinatario di un messaggio desiderano essere certi che i messaggi scambiati non siano alterati da una terza parte senza che se ne possano accorgere
Disponibilità (Availability) e accessibilità dei servizi →i servizi offerti in rete devono essere protetti da eventuali attacchi
Autenticazione →mittente e destinatario di un messaggio desiderano essere reciprocamente sicuri dell’identità della controparte

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Esempi di comportamenti malevoli

A
  • intercettare i messaggi inviati da Alice a Bob
    (eavesdropping)
  • inserire messaggi fasulli nel flusso della comunicazione da Alice a Bob
  • inviare pacchetti con il campo source address fasullo
    (spoofing) in modo da fingere di essere Alice
  • dirottare la comunicazione tra Alice e Bob, piazzandosi “in mezzo”, ad es. fingendo con Alice di essere Bob e con Bob di essere Alice (hijacking)
  • impedire al servizio offerto da Bob di essere utilizzabile (es. sovraccaricando le risorse di Bob) (denial of service)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Cos’è la crittografia

A

Un sistema crittografico è un sistema in grado di cifrare e decifrare un messaggio attraverso l’uso di un algoritmo e di una chiave (una stringa alfanumerica)
Il messaggio da cifrare è detto “testo in chiaro” (plaintext) mentre il risultato dell’algoritmo crittografico è detto “testo cifrato” (ciphertext)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Come può essere la crittografia

A

Crittografia a chiave simmetrica: mittente e destinatario usano la stessa chiave (segreto condiviso) per encryption e decryption (KA = KB= KA-B)
Crittografia a chiave pubblica: la chiave per la encryption è pubblica (nota a tutti),
la chiave per la decryption è segreta (privata)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Come funziona il cifrario per sostituzione

A

Cifrario per sostituzione →unità di testo del plaintext sono sostituite con corrispondenti sequenze di simboli nel testo cifrato secondo uno schema regolare
In particolare, cifrario monoalfabetico →una corrispondenza fissa tra ciascuna lettera dell’alfabeto in chiaro ed una lettera dell’alfabeto cifrato ma con la critto-analisi abbastanza facile da cifrare (pattern ricorrenti ed analisi statistica delle frequenze di occorrenza)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Cosa cambia nei cifrari a blocchi

A

Un blocco di k bit del testo in chiaro è codificato con altri k bit nel testo in codice secondo uno schema fisso
Per una maggiore sicurezza occorre aumentare k
Per valori di k grandi, difficoltà di implementazione: cifratura e decifratura richiedono una tabella di 2k elementi in memoria

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Cos’è DES e come funziona

A

DES codifica blocchi di 64 bit e usa una chiave di 56 bit
Chiave da 56 bit + 8 bit di parità
Funzionamento:
* permutazione iniziale
* 16 iterazioni in cui si applica una funzione f, usando in ciascuna iterazione 48 bit della chiave
* struttura «Feistel»
* f include elaborazioni non lineari (S-boxes)
* permutazione finale

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Perché c’è bisogno di 3-DES

A

DES con chiave a 56 bit ha mostrato i suoi limiti
La dimensione ridotta della chiave permette il successo di attacchi a forza bruta
Per rendere DES più sicuro:
*usare tre chiavi (168 bit) sequenzialmente (3-DES) su ogni blocco
*usare Cipher Block Chaining (CBC)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Cos’è Cipher Block Chaining

A

Debolezza dei cifrari a blocchi →blocchi in input uguali producono lo stesso testo cifrato
Per ovviare a questo inconveniente si usa la tecnica detta cipher block chaining → c(i) si calcola con l’algoritmo di cifratura applicato al blocco ottenuto tramite XOR del testo in chiaro m(i) con il blocco di testo cifrato c(i-1) calcolato sull’input precedente

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Perché anche 3-DES non è più sicuro

A

La dimensione del blocco (64 bit) implica che, cifrati abbastanza dati con la stessa chiave, si verificheranno ripetizioni (birthday attack)
Se il blocco è lungo m, la probabilità di ripetizioni è significativa dopo 2^(m/2) messaggi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Cos’è AES

A

AES (Advanced Encryption Standard) ha sostituito DES.
Elabora i dati a blocchi da 128 bit e utilizza chiavi da 128, 192 o 256 bit. Ha un algoritmo di decifratura diverso da quello di cifratura rispetto a DES
Un elaboratore in grado di decifrare DES con un attacco a forza bruta in 1 secondo, impiegherebbe 149 trilioni di anni a decifrare AES

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Come funziona la crittografia a chiave pubblica

A

Mittente e destinatario non condividono una chiave segreta
Chiave pubblica usata per la cifratura, nota a tutti
Chiave privata usata per la decifratura, nota solo al destinatario

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Cos’è RSA

A

RSA è l’algoritmo di cifratura a chiave pubblica.
I requisiti sono trovare una coppia di chiavi Kb+ e Kb- tali che Kb-(kb+(m))=m e nota una chiave pubblica Kb+ dovrebbe essere impossibile risalire alla chiave privata

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Come vengono scelte le chiavi nell’algoritmo RSA

A
  1. Si scelgono due numeri primi grandi p e q
  2. Si calcolano n = pq, z = (p-1)(q-1)
  3. Si sceglie un numero e (e<n) che non abbia fattori comuni con z
  4. Si sceglie un numero d tale che e*d-1 sia multiplo di z
  5. La chiave pubblica è (n,e), la chiave privata è (n,d)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Come avviene cifratura e decifratura in RSA

A

Dati (n,e) ed (n,d) calcolati precedentemente
La cifratura del testo in chiaro m (stringa di bit)
si effettua calcolando c = m ^e mod n
La decifratura del testo cifrato c (stringa di bit) si effettua calcolando m = c ^d mod n
m = (m^e mod n)^d mod n

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Perché RSA è cosi robusto

A

La robustezza di RSA dipende dal fatto che non sono noti algoritmi veloci per la fattorizzazione di numeri interi grandi
Anche se n = p*q è noto, i due fattori p e q non sono velocemente determinabili, di conseguenza non è velocemente determinabile z, da cui si potrebbe facilmente risalire alla componente d della chiave privata, nota la parte e della chiave pubblica