Sei sulla pagina 1di 9

1.

Illustrare le applicazioni della cifratura asimmetrica

La cifratura asimmetrica ha principalmente due applicazioni.


La prima la Digital Envelope, che utilizza una combinazione di cifratura simmetrica e
asimmetrica per cifrare i messaggi e gestire la chiave segreta.
In particolare con cifratura asimmetrica si effettua lo scambio della chiave segreta di un
algoritmo di cifratura a chiave simmetrica, che si utilizzer nel resto dello scambio di
messaggi.
La seconda la firma digitale in cui si cifra un messaggio con la chiave privata, il
destinatario, tramite la chiave pubblica del mittente pu decifrare il messaggio. Se la
decifratura avviene correttamente allora il destinatario ha prova che quel messaggio stato
criptato con la chiave segreta del mittente e quindi ne ha prova di auteticit.

2. Fasi del Digital Envelope

Il mittente genera casualmente una chiave segreta k per quella sessione


Cifra il messaggio con lalgoritmo simmetrico M e chiave k C = Ek (M)
Cifra la chiave segreta con la chiave pubblica del destinatario kp Ekp (k) [questa
cifratura detta digital envelope]
Invia il messaggio cifrato C e la digital envelope al destinatario (C, Ekp (k))

3. Come avviene la firma digitale

Data linefficienza computazionale della cifratura asimmetrica, solitamente la firma non si applica
allintero messaggio ma si applica ad unimpronta ottenuta tramite una funzione di hash(Es. MD5 e
SHA) applicata al messaggio originale. E viene accodata al messaggio.

4. Come vengono Codificati i dati della cifratura asimmetrica

Public Key Crypotographic standards (PKCS#)


XML Signature .

5. Discutere il protocollo Kerberos

Kerberos un sistema server in ambito distribuito che fornisce un servizio di autenticazione


centralizzato, che si basa sul protocollo Needham-Shroeder ed utilizza solo crittografia simmetrica.
Si chiama kerberos per i tre servizi che offre:
Autentication
Authorization
Outh ???
Il sistema Kerberos formato da:
Un Autentication Service (AS) che utilizzato per fornire lautenticazione dellutente.
Un Tiket granting Server (TGS) che fornisce lautorizzazione per il servizio richiesto
Il tutto avviene sotto criptazione e quindi garantisce riservatezza.
I passaggi dellutilizzo sono:
user AS : lutente invia una richiesta
AS user : se lautenticazione avviene correttamente riceve un Tiket (che un messaggio
criptato con la chiave del TGS) e una chiave di sessione per la comunicazione.
user TGS : quando lutente vuole accedere a un servizio invia la richiesta per il servizio
al TGS inviando il Tiket in suo possesso
TGS user : riceve un nuovo tiket.
user server che offre il servizio richiesto : richiede il servizio includendo il nuovo tiket
server che offre il servizio richiesto user : fornisce unautenticazione del server
Differenze tra V4 e V5
Autenticazione tra diversi realm (in kerberos un realm linsieme di server e utenti gestiti
dallo stesso server Kerberos )
Nuovi algoritmi crittografici
Ticket lifetime flessibili (timestamp inizio, timestamp fine)
Cont.
Kerberos in grandi network
Kerberos Diviso in sotto reti dette realm
lutente si autentica nel proprio realm
chiede al proprio TGS un tiket spendibile nel realm2
usa questultimo per parlare con il TGS2 del realm2
ottiene il tiket spendibile con il server che offre quel servizio gestito nel realm2

6. Presentare il contenuto dei messaggi scambiati dal protocollo SSL-Handshake quando si


adotta il metodo di scambio delle chiavi RSA temp

In RSA temp Il server potrebbe avere un certificato per una chiave pubblica valida solo per la firma,
ma non per la cifratura.
Il funzionamento:
server genera una coppia di chiavi RSA temporanee
invia al client la nuova chiave pubblica temporanea, firmata con la chiave RSA valida per la
firma, allegandone il certificato
il client genera il pre-master secret e lo cifra con la nuova chiave pubblica

7. Esporre le fasi dellHandshaking SSL

Il protocollo Handshake viene eseguito prima di inviare qualunque tipo di dato applicativo e
autentica client e server.
Permette al client e al server di:
Negoziare gli algoritmi di cifratura (cipher suite)
modello per lo scambio delle chiavi
l'algoritmo di cifratura (utilizzato nel Protocollo SSL Record);
l'algoritmo per il MAC (utilizzato nel Protocollo SSL Record);
Autenticare sia client che server, o solo il server o instaurare una sessione anonima (tramite
certificati digitali).
Scambiare le informazioni necessarie per la generazione delle chiavi segrete.
Fasi sono:
Fase 1: Attivazione delle funzionalit di sicurezza per negoziare gli algoritmi che verranno
utilizzati nella sessione
Fase 2: Autenticazione del server e scambio delle informazioni per la generazione delle
chiavi
Fase 3: Autenticazione del client, se presente, e scambio delle informazioni per la
generazione delle chiavi
Fase 4: Fine
8. Cosa contiene il messaggio ServerKeyExcange del protocollo SSL-Handshake in caso si
adotti il metodo di scambio delle chiavi Fixed di Diffie-Helmann?

Fixed Diffie-Hellman: utilizza lalgoritmo di Diffie-Hellman per generare il pre-master secret.


I parametri pubblici (a, q, Y s ) del server sono contenuti in un certificato rilasciato da un autorit
di certificazione.
Il client risponde con il parametro (Y c ) con relativo certificato (se richiesta lautenticazione) o
senza
Non molto utilizzato
Server Key Excange contiene il certificato

9. Descrivere il protocollo DES

Il des una rete di feistel con 16 round, chiave a 56 bit e sottochiavi a 48 bit.
La funzione F:
Perm/espansion 48 bits E

XOR con chiave

sostituzione SBOX

Devono convertire linput a 48 bit in un output a 32 bit

8 S-box 4 x 16, dove ognuna delle quali accetta un input di 6


bit (2 bit riga 4 bit colonna) e produce un output di 4 bit
Permutazione:

La permutazione finale serve per garantire che alla fase


successiva la S-box coinvolga quanti pi valori possibili.
Generazione sottochiavi
La chiave subisce una permutazione
iniziale (Shift Left)
Successivamente viene suddivisa in due
met di 28 bit
Selezione di 48

10. Descrivere il comando Revoke in SQL

In Sql i privilegi e ruoli concessi possono essere revocati tramite il comando REVOKE (dallutente
che lo ha concesso).
Revoke per Utenti
REVOKE [{GRANT OPTION FOR| HIERARCHY OPTION FOR} <lista privilegi>]
ON [<qualificatore oggetto>] <nome oggetto>
FROM {<lista utenti>|<lista ruoli>}
{RESTRICT | CASCADE};
Le clausole opzionali GRANT OPTION FOR e HIERARCHY OPTION FOR servono per
revocare la sola grant o hierarchy option, mantenendo il diritto ad esercitare i privilegi
oggetto del comando di revoca
<lista privilegi> indica l'insieme di privilegi oggetto del comando di revoca

<nome oggetto> indica il nome dell'oggetto della base di dati su cui sono revocati i privilegi

<lista utenti> indica l'insieme degli utenti a cui sono revocati i privilegi

<lista ruoli> indica l'insieme dei ruoli a cui sono revocati i privilegi

Le clausole RESTRICT e CASCADE servono per gestire l'operazione di revoca

Revoke per ruoli


REVOKE [ADMIN OPTION FOR] <lista ruoli revocati>
FROM {<lista utenti>|<lista ruoli>}
{RESTRICT | CASCADE};

La clausola opzionale ADMIN OPTION FOR serve per revocare la sola admin option,
mantenendo il diritto a ricoprire i ruoli oggetto del comando di revoca
<lista ruoli revocati> indica l'insieme di ruoli revocati con il comando

<lista utenti> indica l'insieme degli utenti a cui viene revocata l'abilitazione a ricoprire i
ruoli oggetto della revoca
<lista ruoli> indica l'insieme dei ruoli a cui viene revocata l'abilitazione a ricoprire i ruoli
oggetto della revoca.
Le clausole RESTRICT e CASCADE servono per gestire l'operazione di revoca

11. Discutere lalgoritmo di Diffie-Helmann, menzionando almeno un protocollo che lo usa

SSL nello scambio della chiave usa Diffie-Helmann Fixed, Emphemeral o Anonimous.
Sicurezza basata sulla difficolt del calcolo dei logaritmi discreti.
Scambio chiave:
A e B conoscono q e g (parametri pubblici),
A e B generano due parametri privati (Xa e Xb), tali che siano {1,...,q-1}
A:
Genera Xa<q
Computa Ya=g Xa mod q
A ya B
K=(Yb) Xa mod q
B:
Genera Xb<q
Computa Yb=g Xb mod q
B yb A
K=(Ya) Xb mod q
K=(Yb) Xa mod q = (Ya) Xb mod q
K =(Yb) Xa mod q
=(g Xb mod q) Xa mod q
= (g Xb ) Xa mod q
= g XbXa mod q
= (g Xa ) Xb mod q
=(g Xa mod q) Xb mod q
= (Ya) Xb mod q

12. Spiegare lattacco a replay, illustrando come viene evitato, soprattutto da Ipsec

Un attacco a replay consiste nel rimediare un vecchio messaggio inviato in passato tra client e
server e riproporlo, magari a ripetizione tentanto un DoS. LIPsec aggiunge nel pacchetto un
numero di sequenza, se un messaggio ha un numero di sequenza gi utilizzato viene ignorato. Cos
si evita lattacco a replay.

13. Descrivere i tipi di attacchi possibili ad un sistema di cifratura

Gli attacchi a un sistema di cifratura si dividono in:


Attacchi Passivi:
accedere ai dati di un sistema informativo senza modificarli
monitorare o ascoltare la trasmissione di messaggi per:
Intercettare il contenuto del messaggio
Analizzare il traffico
Attacchi Attivi:
accedere e modificare i dati di un sistema informativo
modificare il flusso dei dati per:
Mascherare identit mittente
Riprodurre il messaggio
Modificare un msg durante la trasmissione
Denial Of Service (DOS) (Distributed DOS - DDOS)

14. Descrivere il concetto di associazione di sicurezza Ipsec

Ci sono 4 tipi di associazioni di


sicurezza:
Sicurezza garantita tra gli
host terminali (end-to-end)
Sicurezza garantita solo tra i gateway di sicurezza (VPN
semplice)
Estende il caso 2, aggiungendo la sicurezza tra gli host
terminali (VPN con
sicurezza end-to-end tra
host)
Una o pi associazioni di
sicurezza
La sicurezza consiste nel creare un tunnel di sicurezza in cui i
messaggi sono criptati.
Per poter generare unassociazione di sicurezza SA due host si devono mettere daccordo sui
parametri (algoritmi da utilizzare, tempo di validit, etc) e le chiavi da utilizzareIPsec prevede due
modi:
Manuale: un amministratore di sistema configura manualmente i gateway IPsec (bene per
reti piccole e statiche)
Automatico: un sistema automatico per creare le chiavi:
ISAKMP (Internet Security Association Key Management Protocol): protocollo per
attivare, negoziare, modificare, cancellare una associazione di sicurezza ( indipendente
dal protocollo per lo scambio delle chiavi)
Oakley: protocollo per lo scambio di chiavi basato sul algoritmo Diffie-Hellmann

15. Illustrare gli approcci offerti da Ipsec per garantire sia lautenticazione sia la riservatezza di
un pacchetto IP

Con Ipsec lautenticazione e la riservatezza si pu ottenere in tre modi:


ESP con opzione di autenticazione
In modalit trasporto: autenticazione e cifratura si applicano al payload IP, mentre
intestazione IP non viene protetta
In modalit tunnel: autenticazione e cifratura si applicano allintero pacchetto IP
Differenza dal punto di vista della sicurezzza: Autenticazione si applica al testo cifrato e
non al testo in chiaro
Bundle transport adjacency
Si applica ESP senza autenticazione con modalit trasporto al pacchetto IP originale
Si applica AH con modalit trasporto al pacchetto ottenuto da 1.
Vantaggio rispetto ESP con opzione di autenticazione: autenticazione include anche
lintestazione IP (quindi, indirizzi IP della sorgente e destinazione)
Autenticazione si applica al testo cifrato e non al testo in chiaro
Bundle transport-tunnel
Si applica AH con modalit trasporto al pacchetto IP originale
Si applica ESP con modalit tunnel al pacchetto ottenuto da 1.
Vantaggio rispetto ESP con opzione di autenticazione: autenticazione include anche
lintestazione IP
Autenticazione si applica al testo in chiaro

16. Descrivere lintestazione AH di Ipsec

Lautentication Header un pacchetto inviato prima del messagio.


Fornisce servizi di:
integrit e autenticazione del pacchetto IP
integrit e autenticazione di alcune informazioni dellintestazione IP
anti-replay - evita che il pacchetto possa essere riutilizzato (ad esempio per attacchi DoS)
Basato sullutilizzo di un MAC (keyed Message Authentication Codes) es HMAC-MD5-96 o
HMAC-SHA-1-96
Le due parti devono condividere una chiave segreta

17. Esporre lestensione ESP di Ipsec

Fornisce servizio di:


riservatezza del contenuto del pacchetto
riservatezza (limitata) del flusso del traffico
Pu fornire anche un servizio di autenticazione di tutto il payload e i campi dellintestazione ESP
Supporta diversi schemi crittografici:
DES, 3DES, RC5, IDEA, CAST, Blowfish
La modalit di cifratura pi utilizzata quella CBC
Si utilizza il padding per raggiungere la dimensione richiesta di blocco

18. Esporre il protocollo di Needham-Schroeder, soprattutto con cifratura, chiave simmetrica

Needham-Shroeder con chiave segreta, A condivide K AS con S e B condivide K BS con S

19. Spiegare lutilizzo di una relazione di fiducia tra due Certificate Autority (CA)

Se i certificati sono emessi da CA diverse allora:


A non conosce la CA X2 che ha emesso il certificato di B,
Ma se A sapesse che la sua CA X1 riconosce la CA X2, allora potrebbe considerare valido il
certificato di B rilasciato da essa.
A ha bisogno di una prova dellesistenza della relazione di fiducia tra le X1 e X2.
Una prova dellesistenza della relazione di fiducia tra X1 e X2 dato dal
certificato della chiave pubblica di X2 rilasciato da X1 (X1<<X2>>) che comprova che X1
riconosce X2, e dal
certificato della chiave pubblica di X1 rilasciato da X2 (X2<<X1>>) che comprova che X2
riconosce X1
Se una CA firma la chiave pubblica di unaltra CA, certifica di riconoscere loperato di quella CA e
quindi tutti i certificati da essa rilasciati.

Come gestire le relazioni di fiducia allinterno di un gruppo di CA? Organizzare in gerarchia.

...
20. Descrivere le modalit di funzionamento CBC IV

Cipher Block Chaining


P2 C

P1 +

C1
21. Presentare lo schema di cifratura Feistel

22. Descrivere il comando di Grant in SQL

Questo comando serve per concedere autorizzazioni ad utenti o a ruoli.


Grant Utenti
GRANT {<lista privilegi>| ALL PRIVILEGES}
ON [<qualificatore oggetto>] <nome oggetto>
TO {<lista utenti>|<lista ruoli> |PUBLIC}
[WITH GRANT OPTION]| [WITH HIERARCHYOPTION];
<lista privilegi> indica l'insieme dei privilegi concessi con il comando GRANT. La parola
chiave ALL PRIVILEGES indica tutti i privilegi previsti dal modello
<nome oggetto> indica il nome dell'oggetto della base di dati (relazione, viste, etc.) su cui
sono concessi i privilegi.
Se necessario possibile specificare un qualificatore dell'oggetto
<lista utenti> indica l'insieme degli utenti a cui il comando si applica. <lista ruoli> indica
l'insieme dei ruoli a cui vengono concessi i privilegi. La parola chiave PUBLIC consente di
specificare tutti gli utenti/ruoli del sistema
La clausola opzionale WITH GRANT OPTION consente la delega dell'amministrazione dei
privilegi oggetto del comando
La clausola opzionale WITH HIERARCHY OPTION pu essere specificata solo per il
privilegio select e consente, nel caso di relazioni legate da una gerarchia di ereditariet di
propagare il privilegio a tutte le sotto-tabelle della tabella riferita nel comando GRANT
Tipi di privilegi:
update, select, insert
references, che permette di utilizzare una colonna in un vincolo o asserzione
trigger, che permette di specificare trigger che operano su una certa relazione
under, che permette la creazione di sotto-tipi o sotto-tabelle
usage, che permette di utilizzare un oggetto dello schema nella definizione di un altro
oggetto,
execute, che permette l'esecuzione di una procedura o funzione.
Grant ruoli
GRANT <lista ruoli concessi>
TO {<lista utenti>|<lista ruoli> |PUBLIC}
[WITH ADMINOPTION];
<lista ruoli concessi> indica l'insieme dei ruoli concessi con il comando GRANT
<lista utenti> indica l'insieme degli utenti per cui vengono abilitati i ruoli concessi con il
comando
<lista ruoli> indica l'insieme dei ruoli per cui vengono abilitati i ruoli concessi con il
comando. La parola chiave PUBLIC consente di abilitare i ruoli specificati nel comando per
tutti gli utenti/ruoli del sistema
La clausola opzionale WITH ADMIN OPTION l'analogo per i ruoli della grant option.
Quando si abilitati a ricoprire un ruolo con admin option non solo vengono ereditate tutte
le autorizzazioni specificate per quel ruolo, ma anche possibile concedere a terzi la
possibilit di ricoprire il ruolo

23. Illustrare la modalit di funzionamento OFB-Output Feedback, discutendone vantaggi e


svantaggi

IV

Encrypte K
...

Selection
P2

P1 +

C1

24. Dare un esempio di cifratura mono alfabetica, evidenziandone i limiti

Cesare:
Analisi frequenze
26 chiavi sono poche

25. Esporre lalgoritmo usato da AES


Plaintext ADD Round Key Substitution Byte Shift Row Mix Column ADD Round Key Substitution Byte Shift Row ADD Round Key Chipertext

K Extract Key Extract Key Extract Key