Protezione dei Dati Digitali: Scenari ed Applicazioni

Protezione dei Dati Digitali:
Scenari ed Applicazioni
1
Sommario
♦ Parte I : Scenari
♦ Parte II : La Teoria
♦ Parte III: La Pratica
2
Parte I: Scenari
3
Applicazioni quotidiane (1/2)
♦ Transazioni finanziarie
– E-commerce
– Online banking
– Carte pre-pagate
♦ Trasmissione di contenuti con copyright
– Pay-per-view, cable TV
– Multimedia broadcasting
– Multimedia online purchasing
4
Applicazioni quotidiane (2/2)
♦ Reti di telecomunicazione
– Protocolli di autenticazione
– Controllo di accessi
– Comunicazione sicura
♦ Dispositivi mobili e senza fili
– Telefoni cellulari (GSM, GPRS, UMTS)
– Dispositivi palmari (Palmtop)
– Wireless LANs
5
Esempio: e-Commerce
♦ Informazioni riservate come i dati di una
carta di credito possono essere inviati
attraverso la rete
…Card number…
…Expiration date…
♦ Nessuna persona non autorizzata dovrebbe essere
in grado di recuperare il messaggio originale
6
Esempio: Multimedia
Broadcasting
♦ Un film o un evento potrebbe essere diffuso
attraverso Internet
♦ La sottoscrizione al servizio è necessaria
7
Esempio: Autenticazione di Rete
♦ Le comunicazioni su una rete potrebbero
essere monitorate da altre macchine
login:
****
♦ Protocolli di sicurezza sono impiegati per
schermare le comunicazioni ed assicurare la
riservatezza
8
Esempio: Dispositivi Wireless
♦ Le comunicazioni senza fili (radio o ad
infrarossi) sono aperte all’ intercettazione
♦ Il rischio di
intercettazione è
direttamente
proporzionale alla
portata della
trasmissione
9
Parte II: La Teoria
10
Le Quattro Proprietà (1/2)
Un sistema di comunicazione sicura richiede:
♦ Confidenzialità: nessuna estraneo è
autorizzato a conoscere l’ informazione
♦ Integrità: l’ informazione non è stata
alterata
♦ Autenticazione: l’ informazione proviene
veramente dalla sorgente che la reclama
♦ Non-repudiabilità: la sorgente dell‘
informazione non può negare tale
trasmissione
11
Le Quattro Proprietà (2/2)
♦ Confidenzialità
♦ Integrità
♦ Autenticazione
♦ Non-repudiabilità
Simmetrica (storica)
Crittografia
Asimmetrica (recente)
12
Crittografia Simmetrica
♦ Usata da secoli: Cesare usava un codice molto
semplice basato su metodi simmetrici
♦ Il messaggio trasmesso non è comprensibile senza
una certa informazione (la chiave)
♦ Per stabilire il canale di comunicazione la chiave
usata viene condivisa tra mittente e ricevente
♦ Principali standard: Data Encryption Standard
(DES), 3DES, Advanced Encryption Standard
(AES)
13
Crittografia Simmetrica
Plain
Message
Enciphering
routine
Attacks
Sender
Insecure
Communication
Channel
Coded
Message
Deciphering
routine
Shared key
Plain
Message
Coded
Message
Receiver
14
Crittografia Simmetrica
♦ Pregi:
– Molto scalabile: l’algoritmo di cifratura può essere
scelto in base alle esigenze dell’applicazione
– Processi di de/cifratura molto veloci ed efficienti
– Struttura algoritmica semplice, comunque assicura
riservatezza dei dati
♦ Difetti:
– Lo scambio della chiave deve avvenire attraverso un
canale sicuro alternativo
– Numero di chiavi esagerato: ogni singola coppia di
utenti deve avere la sua propria chiave
♦ Gli algoritmi possono essere classificati in:
– Cifratura a blocco: dati processati per blocchi
– Cifratura a flusso: dati processati come un flusso di byte
15
Crittografia Asimmetrica
♦ Utilizza coppie di chiavi: una è pubblica, l’altra
assolutamente segreta (privata)
♦ Le chiavi sono strettamente correlate: ciò che è
criptato con una chiave può essere decriptato solo
dall’altro elemento della coppia
♦ Non c’è nessuna necessità di condividere chiavi;
in ogni caso le chiavi pubbliche devono essere
facilmente recuperabili da ciascuno ed associabili
al corretto proprietario senza dubbi
♦ Esempi: RSA, ECC
16
Crittografia Asimmetrica
Attacks
Plain
Message
Encrypt
A
Encrypt
A’s private
key
Insecure
Communication
Channel
Decrypt
B’s public
key
A’s public
key
B’s private
key
Decrypt
Plain
Message
B
17
Autorità di Certificazione
♦ Lo schema asimmetrico presuppone la
disponibilità delle chiavi pubbliche
♦ Un’ autorità potrebbe immagazzinare tutte le
chiavi pubbliche e fornirle quando necessarie
♦ Le A.C. potrebbero essere organizzate in gerarchia
(PGP): ciascuna certifica solo un ramo dell’ intero
albero ed è certificata da una A.C. più elevata
18
Coppie di Chiavi
♦ La chiave privata non dovrebbe essere
recuperabile data la chiave pubblica, o almeno tale
processo dovrebbe essere non praticabile (per costi
o tempi)
♦ Le chiavi sono correlate essendo le soluzioni di un
complesso problema algebrico
♦ La forza di un cripto-sistema risiede nella
complessità di tale problema
19
Firma Digitale
♦ E’ una tecnica usata per “firmare” un documento,
cioè per certificarne l’origine
♦ Un’immagine condensata del documento è
calcolata tramite un algoritmo di “hashing”, cifrata
con la chiave privata e attaccata al messaggio
♦ Il ricevente confronta l’hashing ricevuto con
quello calcolato da lui stesso sul messaggio
♦ La cifratura garantisce l’identità della sorgente e
preserva il messaggio da qualsiasi alterazione
20
Parte III: La Pratica
21
SSL: Secure Socket Layer - 1
♦ Permette a client e server di autenticarsi l’un
l’altro e di stabilire una connessione criptata
♦ Durante l’handshake viene creato un canale sicuro
usando crittografia asimmetrica. Una chiave di
sessione condivisa viene scambiata in questa fase
♦ La chiave della sessione segreta
viene utilizzata per creare il canale
segreto
♦ Supporta l’uso di una moltitudine
di differenti algoritmi crittografici
(chiper settings)
22
SSL: Secure Socket Layer - 2
23
Transport Layer Security
♦ E’ la nuova versione di SSL, compatibile con SSL
♦ Con il protocollo di TLS Handshake viene
negoziata la chiave segreta per il canale sicuro
usando crittografia asimmetrica (di solito RSA)
♦ Il protocollo di TLS Record viene implementato
su un protocollo di trasporto affidabile come TCP
♦ Il protocollo di Record fornisce una connessione
privata (cifratura simmetrica) e affidabile (secure
hashing)
24
IPsec
♦ E’ un insieme di protocolli che estendono IPv4;
inoltre fa parte delle specifiche di IPv6
♦ E’ simile a SSL, ma agisce a livello ‘rete’,
completamente trasparente all’applicazione:
mentre SSL assicura due applicazioni, Ipsec
assicura la rete
♦ La suite include
– Authentication Header
– Encapsulating Security Payload
25
SecureMIME e Secure Shell
(SSH)
♦ S/MIME e’ uno standard usato per spedire dati
crittografati attraverso il comune canale e-mail
♦ Secure Shell (e sFTP) e’ un protocollo che
permette comunicazione, trasferimento di file ed
esecuzione di comandi da remoto in modo sicuro
♦ Si basano su tecniche di autenticazione a chiave
pubblica (RSA, DSA) e usano crittografia
simmetrica per trasmissione dati (3DES, ArcFour,
Twofish)
26
Wireless LANs
♦ Lo standard aperto 802.1x specifica un livello di
autenticazione per le reti wireless; 802.11b è
l’attuale implementazione dello standard per
wireless LANs
♦ Attualmente funziona a 2.4GHz, oppure a 5GHz
♦ Molteplici algoritmi di cifratura sono permessi
♦ Tre attori sono coinvolti:
– Il richiedente (client software)
– L’ autenticatore (Il punto di accesso)
– Il server di autenticazione
27
Bluetooth
♦ Utilizza una portante a 2.4GHz con una banda di
79MHz, con Frequency Hopping Spread Spectrum,
che è meno affidabile ma più sicuro dell’ 802.11b
♦ La sequenza di salto (hop) è unica per ogni
sessione e nota solo ai dispositivi comunicanti
♦ Il protocollo usa indirizzi pubblici (univoci per
ciascun dispositivo), chiavi di autenticazione a
128-bit e tecniche di criptaggio
28
Radio Wave Communications
29
GSM (1/2)
♦ Autenticazione realizzata dal ‘challenge
handshake’ tramite un algoritmo proprietario noto
come ‘A3’ implementato nella SIM
♦ Il numero casuale usato per l’autenticazione viene
impiegato anche per generare la chiave di
comunicazione tramite l’algoritmo ‘A8’
♦ L’algoritmo di cifratura vero e proprio è chiamato
‘A5’ ed è implementato nell’ hardware del
dispositivo mobile
30
GSM (2/2)
♦ I dettagli degli algoritmi non furono resi pubblici
in modo da rendere più robusto il sistema: non fu
una strada molto efficiente…
♦ Nel 1998 fu dimostrato che un attacco era
possibile quando la smart card fosse fisicamente
accessibile
♦ Recentemente alcuni ricercatori hanno scoperto
che attacchi over-the-air sono possibili tramite una
falsa stazione base, che richiede un investimento
di circa 10.000$.
31
UMTS
♦ L’industria del GSM ha lasciato la via dell’
‘oscurità’ e sviluppa ora su principi scoperti da
comunità aperte
♦ Gli algoritmi di confidenzialità e integrità sono
basati sul Kasumi, un codice di cifratura a blocchi
a 64 bit, con chiave da 128 bit
♦ Nessun punto debole è noto ad oggi, anche se lo
standard è ancora recente
32
Digital Video Encryption
♦ E’ usata per controllare e limitare la distribuzione
di contenuti multimediali con diritti d’autore
♦ Diversi algoritmi sono utilizzati a seconda del
campo applicativo:
– I DVD usano un sistema di Content Scrambling per
prevenire la pirateria e controllare il mercato home
video
• Il sistema di cifratura è stato infranto da un giovane utente
Linux che voleva guardare film sul suo computer: è ancora
sotto processo, ma sembra non verrà perseguito
– La TV richiede una sottoscrizione: le chiavi per la
decifratura sono contenute in una smart card
programmabile
33
Streaming Content Protection
♦ Internet diventerà una delle prime sorgenti per la
distribuzione di musica/film e diffusione di eventi
♦ Protocolli di Streaming come RTSP (RealSoftware) e MMS (Microsoft) sono già stati
infranti da applicazioni dedicate che falsano il
protocollo di handshake
♦ Le attuali tecniche si basano su protocolli di
autenticazione deboli a non sfruttano i più recenti
algoritmi crittografici per impedire duplicazione
dei dati
34
Hard Disk Encryption
♦ I dati potrebbero essere memorizzati in forma
cifrata per ottenere maggior sicurezza
♦ Le attuali soluzioni lavorano a livello dei ‘driver’:
una API su misura cifra i dati quando si scrive su
disco e li decifra quando li copia in memoria
♦ Le implementazioni software hanno un inevitabile
impatto sulle prestazioni del sistema
♦ Problemi:
– Flessibilità: dati cifrati ed in chiaro gestito nello stesso
disco, chiave resettata ad ogni cambio di utente
– La chiave deve essere memorizzata in dispositivi tipo
smart card, il computer deve avere un lettore
35
Conclusioni
♦ Le tecniche crittografiche permettono
comunicazione sicura e veloce
♦ Spesso i problemi derivano dall’implementazione:
gli algoritmi sono intrinsecamente sicuri, le
piattaforme non sempre lo sono
♦ E’ meglio adottare una soluzione pubblica che è
considerata sicura dagli esperti del settore
piuttosto che una soluzione segreta che potrebbe
avere molti difetti e bachi
♦ Il livello degli utenti potenziali conta
36