Capitolo I. 1. Sicurezza Informatica e Crittografia



Documenti analoghi
La firma digitale CHE COSA E'?

Informatica per la comunicazione" - lezione 13 -

La Firma Digitale La sperimentazione nel Comune di Cuneo. Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

RETI DI CALCOLATORI. Crittografia. La crittografia

Corso di ARCHITETTURA DEI SISTEMI INFORMATIVI - Prof. Crescenzio Gallo. 114 Sistemi informativi in rete e sicurezza 4.6

Firma digitale: aspetti tecnologici e normativi. Milano,

DOCUMENTO ELETTRONICO E FIRMA DIGITALE

Documenti cartacei e digitali. Autenticità. Cosa si vuole garantire? Riservatezza. Integrità 11/12/2012. PA digitale: documenti e firme (I.

Introduzione alla crittografia con OpenPGP

La Firma Digitale. Manuale d uso Fornitore. Introduzione alla Firma Digitale. Aprile 2015

! La crittoanalisi è invece la scienza che cerca di aggirare o superare le protezioni crittografiche, accedendo alle informazioni protette

Firma digitale Definizione

SSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer

Firma Digitale. dott. Andrea Mazzini

e-government La Posta Elettronica Certificata

Lezione 7 Sicurezza delle informazioni

Protezione delle informazioni in SMart esolutions

La sicurezza nelle comunicazioni Internet

Allegato 3 Sistema per l interscambio dei dati (SID)

Quasar Sistemi S.r.l.

Diritto dei mezzi di comunicazione. Indice

Approfondimento di Marco Mulas

La Posta Certificata per la trasmissione dei documenti informatici. renzo ullucci

PEC un obbligo che semplifica

Centro Tecnico per la Rete Unitaria della Pubblica Amministrazione

Una minaccia dovuta all uso dell SNMP su WLAN

Gennaio. SUAP On Line i pre-requsiti informatici: La firma digitale

FIRMA DIGITALE Cos'è e come funziona

Sicurezza dei sistemi informatici Firma elettronica E-commerce

La firma digitale e le sue possibili applicazioni

Serve a garantire la nostra privacy nell era era della comunicazione digitale.

Una rivoluzione importante. Sottoscrizione e trasporto di un documento digitale

La firma digitale: a cosa serve

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

POSTA ELETTRONICA (TRADIZIONALE e CERTIFICATA) FIRMA DIGITALE PROTOCOLLO INFORMATICO. Maurizio Gaffuri 11 ottobre 2007

Sicurezza a livello IP: IPsec e le reti private virtuali

SCHEMA DI DELIBERAZIONE

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione


La Fatturazione Elettronica

POSTA ELETTRONICA CERTIFICATA

Posta Elettronica Certificata. dott. Andrea Mazzini

FONDO UNICO NAZIONALE PER L ASSICURAZIONE CONTRO I RISCHI DI NON AUTOSUFFICIENZA DEI DIPENDENTI DEL SETTORE ASSICURATIVO

Certificati digitali con CAcert Un'autorità di certificazione no-profit

Appunti sulla Macchina di Turing. Macchina di Turing

Allegato A: Regole tecniche per la gestione dell identità.

Lextel Servizi Telematici per l Avvocatura

LA PEC (POSTA ELETTRONICA CERTIFICATA)

Strutturazione logica dei dati: i file

Problematiche correlate alla sicurezza informatica nel commercio elettronico

Analisi di programmi: Crittografia

Capitolo 8 La sicurezza nelle reti

Documento informatico e firme elettroniche

PIANO PER LA SICUREZZA DEI DOCUMENTI INFORMATICI

DOCUMENTO INFORMATICO E FIRME ELETTRONICHE, PAGAMENTI, LIBRI E SCRITTURE

Sicurezza digitale. requisiti: confidenzialità, integrità, autenticazione, autorizzazione, assicurazione, riservatezza. soddisfatti mediante

ARCHIVIAZIONE E. Obblighi & Opportunità. 8 Gennaio 2010

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Le imprese di nuova costituzione dovranno dotarsi di certificata da subito, all atto della costituzione.

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica.

CHE COS E LA FIRMA DIGITALE

Autorità per l'informatica nella pubblica amministrazione Deliberazione n. 42/2001

La sicurezza nelle reti di calcolatori

SETEFI. Marco Cantarini, Daniele Maccauro, Domenico Marzolla. 19 Aprile 2012

PRINCIPI DI COMPUTER SECURITY. Andrea Paoloni

Sottoscrizione dell accordo

La firma digitale. Autore: Monica Mascia

Riconoscibilità dei siti pubblici: i domini della Pa e le regole di.gov.it

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA

Crittografia. Appunti a cura del prof. Ing. Mario Catalano

DOCUMENTI INFORMATICI, POSTA CERTIFICATA E DEMATERIALIZZAZIONE

della manutenzione, includa i requisiti relativi ai sottosistemi strutturali all interno del loro contesto operativo.

Firma Digitale. Informazioni sul servizio ORDINE DEGLI INGEGNERI DELLA PROVINCIA DI GENOVA

Soluzioni per archiviazione sicura di log di accesso server Windows. PrivacyLOG

Vendere online. Andrea Marin. Università Ca Foscari Venezia SVILUPPO INTERCULTURALE DEI SISTEMI TURISTICI SISTEMI INFORMATIVI PER IL TURISMO

Tecnologicamente, la firma digitale è il risultato di una procedura complessa che si basa su tre elementi:

REGOLAMENTO PER L USO DELLA POSTA ELETTRONICA CERTIFICATA

Identità e autenticazione

Cos'è, in concreto la firma digitale? Come si utilizza?

PARCO OGLIO NORD ENTE DI DIRITTO PUBBLICO

Introduzione ai certificati S/MIME e alla posta elettronica certificata...2 Procedura di installazione del certificato personale S/MIME rilasciato

ARCHITETTURA DI RETE FOLEGNANI ANDREA

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Sicurezza: necessità. Roberto Cecchini Ottobre

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

DELIBERAZIONE 19 febbraio 2004

Procedure di utilizzo e di descrizione applicativa

Seminario formativo. Firma Digitale

Firma digitale INTRODUZIONE

Reti di Telecomunicazione Lezione 8

NOTE LEGALI E PRIVACY

Comune. di Borgo a Mozzano GUIDA ALLA PRESENTAZIONE ON LINE DI PRATICHE SUAP [2013]

Guida alla compilazione on-line delle domande di Dote Scuola A.S per le Famiglie INDICE

Scambio delle chiavi. mercoledì 7 dicembre 2011

Firewall, Proxy e VPN. L' accesso sicuro da e verso Internet

Sommario. Introduzione alla Sicurezza Web

FIRMA DIGITALE. Aspetti normativi. Novembre 2004 Paoli Luigi 1

Ordine degli Ingegneri Provincia di Latina Commissione dell Ingegneria dell Informazione

Cos è e come funziona la Firma Digitale attivata in convenzione con Aruba PEC SpA

Transcript:

1. Sicurezza Informatica e Crittografia 1.1 Problematiche di sicurezza 1.1.1.1 Cos è la Sicurezza Informatica La sicurezza informatica ha come obiettivo principale quello di garantire, riducendo i rischi, un adeguato grado di protezione dei beni mediante l attuazione di un progetto di sicurezza globale che, partendo dalla definizione di una politica di sicurezza, tenga conto di tutti gli aspetti del problema e pervenga ad un livello di protezione, organizzativo ed informatico, che possa essere monitorato nel tempo. In questa definizione sono esclusi il furto di computer, le minacce ambientali e gli eventi non intenzionali. Eventuali difetti del software sono inclusi, ma solo se conducono a vulnerabilità nel Tesi di Laurea di Elena Nuti 6

sistema che possano essere sfruttate per fornire accesso o uso non autorizzati. Per l argomento di questa tesi ci soffermeremo maggiormente sugli aspetti di sicurezza inerenti i sistemi di comunicazione. Per i sistemi in rete, indipendentemente dalla categoria di comunicazione, un requisito di base in tutte le trasmissioni sicure è un comune contesto di sicurezza tra le parti comunicanti. Questo include il mutuo accordo su requisiti, funzioni e meccanismi di sicurezza utilizzati. 1.1.2 Il modello di riferimento Costruiamo per lo studio di questa problematica un apposito modello di riferimento (cfr. Fig. 2), costituito da: Sistemi finali (end systems) costituiti da utenti o processi applicativi che offrono e utilizzano servizi. Nell esempio gli utenti Alice (A) e Bob (B) vogliono scambiarsi delle informazioni. Una rete non fidata che collega tra loro i sistemi finali. Una terza parte fidata al di fuori della rete, per esempio un Autorità Certificatrice (ed eventualmente un server sicuro fidato on-line). Il mondo esterno che include nemici (generalmente indicati, forse in maniera impropria 1, con il termine hackers) che 1 Il termine hacker proviene dall'inglese to hack che significa fare a pezzi, tagliare, farsi strada, e addirittura dare calci nello stomaco all'avversario. Inoltre la parola pirata (e quindi anche pirata informatico), può essere tradotta in inglese come hijacker o highjacker, che contratta diventa proprio hacker. L hacker è pertanto una persona intelligente con conoscenza superiore dell'uso del computer, un programmatore attento alle novità e amante del web, capace di mettere in crisi i sistemi di società e organizzazioni superiori. Chi agisce in modo criminale penetrando nei sistemi informatici e cercando di accedere a passwords e dati sensibili è invece il cracker. Tesi di Laurea di Elena Nuti 7

attaccano i sistemi finali, sia attraverso la rete sia direttamente. Fig. 2 - Modello di riferimento Passiamo adesso ad effettuare alcune osservazioni sul modello di riferimento: I sistemi finali, inclusi i terminali locali e le applicazioni in esecuzione su di essi, sono considerati fidati dai loro utenti (anche se di fatto i pericoli maggiori provengono spesso dall interno dei sistemi medesimi), tuttavia gli utenti non ripongono fiducia in altri utenti sullo stesso sistema finale. Ovviamente un utente non pone fiducia in un sistema finale sconosciuto. La rete è una rete di reti, ovvero costituita da un certo numero di reti interconnesse, la cui sicurezza non può essere garantita. La rete può perdere, duplicare, generare o cambiare messaggi che passano su di essa. Quando un sistema sicuro e fidato in locale viene connesso ad una rete, attraverso la stessa si affacciano un insieme di nuove minacce da tenere in considerazione. Per condurre comunicazioni sicure è necessaria almeno un autorità di certificazione fidata, cioè una terza parte di cui Tesi di Laurea di Elena Nuti 8

fidarsi per certificare i parametri di autenticazione delle altre parti comunicanti ed eventualmente per ratificare gli accordi. Tuttavia il numero di terze parti fidate deve essere mantenuto al minimo. In questa tesi si assume che ogni utente si fidi della propria autorità di certificazione. Si assume anche la transitività della fiducia, cioè si pone fiducia nelle autorità di certificazione fidate dalle autorità di certificazione di cui noi ci fidiamo. Questo rende possibile la formazione di una catena globale di fiducia delle autorità di certificazione. Anche se possono sembrare ovvie, è importante fare due ulteriori considerazioni: - la prima è che la sicurezza in rete termina dove inizia la sicurezza degli host: è infatti abbastanza inutile approntare un sistema che permetta di comunicare in maniera sicura se poi le macchine e i dati ivi immagazzinati sono accessibili a chiunque. - la seconda è che, anche se in questo studio i sistemi finali comunicanti non sono assunti come sicuri e protetti fisicamente, essi devono comunque essere resi tali per non essere colpiti da attacchi locali (minacce poste dagli utenti interni, Trojans, etc); questo rappresenta un esigenza primaria in ambito di sicurezza. 1.1.3 Valutazione del rischio e requisiti di sicurezza Tutte quelle circostanze potenziali che possono causare un danno rappresentano un rischio. E' da notare che, come abbiamo visto prima parlando della sicurezza informatica, un progetto o un programma di sicurezza non azzerano mai il relativo rischio. La sicurezza totale infatti è un astrazione e come tale non esiste nella realtà. Si deve allora seguire la logica secondo cui un Tesi di Laurea di Elena Nuti 9

progetto di sicurezza ha l'obiettivo di ridurre il rischio fino ad un livello giudicato accettabile per il contesto in esame. Questo significa che il primo studio da fare è sul grado di sicurezza necessario agli utenti e alle applicazioni, ai sistemi e alle reti che stiamo utilizzando, all organizzazione, etc. Per raggiungere quello che è l'obiettivo principale di sicurezza, occorre garantire che il bene mantenga inalterate nel tempo alcune proprietà ben definite: Integrità Si vuole garantire che dati e informazioni non subiscano modifiche, manipolazioni o cancellazioni non autorizzate, in particolare durante il transito dal mittente al destinatario. L'integrità dei dati è un interesse fondamentale in qualsiasi servizio informatico: tutti i dati critici devono essere resi sicuri contro la manomissione accidentale o premeditata. Identificazione e Autenticazione Si vuole garantire l'identità degli interlocutori. Per identificazione si intende la procedura tramite la quale un utente fornisce la sua identità (es. tramite la digitazione di un codice utente). L autenticazione è la procedura con cui si stabilisce la validità di tale identità (es. tramite la digitazione di una password), ovvero se le parti coinvolte nella transazione sono chi dicono di essere. Questa procedura prevede vari importanti aspetti, tra i quali: memorizzazione (collecting) dei dati di autenticazione, trasmissione sicura dei dati stessi, verifica che l utente autenticato originariamente sia lo stesso utente che sta utilizzando il servizio. Tesi di Laurea di Elena Nuti 10

Ci sono essenzialmente tre mezzi di autenticazione: qualcosa che l utente conosce (es. password, PIN) qualcosa che l utente possiede (es. Smart Card, e-token) qualcosa che l utente è (sistemi biometrici 2 es. impronte digitali, voce, retina) Sistemi di autenticazione basati sul primo parametro sono chiamati sistemi di autenticazione debole; quelli che utilizzano invece almeno uno degli altri parametri sono chiamati sistemi di autenticazione forte (strong authentication). L autenticazione può comunque essere garantita con varie modalità, ossia utilizzando uno solo degli elementi sopra riportati (Single-factor Authentication), una combinazione di due di essi (Two-factor Authentication), oppure tutti e tre (Three-factor Authentication). A seconda delle diverse combinazioni che possono essere sfruttate, viene fornito un livello di sicurezza più o meno alto, così come mostrato in Fig. 3. Fig. 3 - Impatto di Smart Cards e Sistemi Biometrici sulla sicurezza (fonte: Smart Card Alliance) 2 Cfr. Appendice E. Tesi di Laurea di Elena Nuti 11

Riservatezza Si vogliono impedire accessi in lettura non autorizzati alle risorse, garantendo la segretezza del contenuto della comunicazione. La confidenzialità dei dati diventa una problematica essenziale se ad essere trasferite sono informazioni sensibili. Irriproducibilità Si vuole impedire la possibilità, da parte di intrusi, di intercettare e riprodurre in qualsiasi modo le informazioni scambiate. Garantire l irriproducibilità è un problema complesso: qualcuno potrebbe infatti replicare un informazione anche senza comprenderla. Se un intruso riuscisse ad accedere a dei dati scambiati e a riprodurli, potrebbe riuscire a sfruttarli in maniera fraudolenta anche nel caso in cui essi siano crittografati 3 ; potrebbe infatti limitarsi a reintrodurli al momento opportuno nel sistema di comunicazione senza bisogno di interpretarli, così da ottenere ad esempio l accesso a risorse o informazioni. Autorizzazione Si vuole permettere l'accesso a determinate risorse o servizi solo a chi è autorizzato a farlo (basandosi su un servizio di autenticazione). Il controllo di accesso è una funzionalità che rientra nel dominio delle applicazioni e della gestione. Basandosi su un autenticazione affidabile, è relativamente semplice ed immediato, all interno di un unico sistema, controllare i privilegi dell'utente e permettergli di accedere ai servizi appropriati. 3 Per la definizione di crittografia cfr. par. 1.2 Tesi di Laurea di Elena Nuti 12

Non è invece altrettanto semplice se ci si deve interfacciare con più sistemi diversi. In questo caso vi sono due possibili approcci: il primo è l utilizzo di un unico servizio che profili l utente per tutti i sistemi, il secondo è la realizzazione di uno standard per profilare allo stesso modo l utente all interno di ogni singolo sistema. Disponibilità Si vuole garantire l'operatività di un servizio e la sua fruibilità da parte degli utenti autorizzati, evitando che azioni di disturbo possano compromettere la disponibilità del sistema. Non repudiabilità Si deve impedire che le parti neghino di aver inviato (o ricevuto) dati che hanno effettivamente inviato (o ricevuto). Il problema è particolarmente rilevante nelle comunicazioni commerciali e/o legali dove occorre provare la sottoscrizione di un accordo. Vediamo ora quali relazioni possono sussistere tra i vari aspetti di sicurezza. Un canale confidenziale (o riservato) è un canale in cui chiunque può scrivere, ma solo il destinatario legittimo può leggere. Un canale autenticato ed integro è un canale in cui solo il mittente legittimo può scrivere ma chiunque può leggere. L'integrità da sola è inutile, ma deve sempre essere combinata con l'autenticazione per essere effettiva: se non è possibile essere sicuri dell'identità dell'altra parte, ha poco valore sapere che i dati che ci sono stati inviati non sono stati manomessi. Allo stesso modo l'autenticazione ha poca efficacia senza l'integrità: se non si è sicuri che i dati siano intatti ha poca importanza chi li ha inviati. Tesi di Laurea di Elena Nuti 13

È facile rendere nullo l'effetto di una di queste due funzioni se non vengono combinate opportunamente. L'integrità e la riservatezza sono funzionalità ortogonali e di solito sono implementate utilizzando lo stesso meccanismo. L autenticazione e la non repudiabilità non sono ortogonali, ma la prima è una forma più debole della seconda. Con l'autenticazione si può sapere chi sia l'altra parte, con la non repudiabilità si può provarne l'identità davanti ad un giudice imparziale. Il controllo di accesso è strettamente legato all'autenticazione, in quanto non è possibile applicare il controllo d'accesso senza sapere chi sia l'altra parte. Il controllo d'accesso è imposto all'utente dal fornitore del servizio o dalla parte che risponde ad una richiesta dell'utente. Basandosi sulla discussione precedente, le tre funzioni di sicurezza fondamentali sembrano essere l autenticazione, l'integrità e la riservatezza; la non repudiabilità, che acquista comunque un importanza rilevante in transazioni con valore legale, può essere vista come una forma più forte di autenticazione legata a meccanismi che rendano il documento inalterabile, mentre il controllo dell accesso può essere lasciato alla gestione del sistema e alle applicazioni, basandosi sul servizio sicuro di autenticazione. 1.1.4 Tipologie di attacco Gli attacchi alla sicurezza di un sistema possono essere molteplici, e colpire l'uno o l'altro dei requisiti di sicurezza richiesti. Un intruso può ad esempio intercettare dei dati (colpendo quindi la riservatezza), modificare delle informazioni in transito (colpendo l integrità), sostituirsi ad uno degli interlocutori (colpendo Tesi di Laurea di Elena Nuti 14

l autenticazione), rendere indisponibile un servizio (colpendo la disponibilità). Una prima classificazione delle tecniche di attacco è in attacchi passivi ed attacchi attivi. Negli attacchi passivi l intruso si limita ad intercettare le informazioni scambiate e a decifrarle con tecniche di crittoanalisi, senza modificarle. Negli attacchi attivi l intruso intercetta le informazioni scambiate, riesce a inserire nuovi messaggi e, in alcune varianti, anche a cancellare o modificare i dati in transito. All interno di queste due macrocategorie possono essere successivamente distinte varie tipologie; vediamo di seguito le più diffuse: interrogazione: questo attacco permette di venire a conoscenza dei servizi offerti da una macchina man-in-the-middle (MITM): attacco classico in cui un intruso si inserisce nella comunicazione impersonando ciascun interlocutore agli occhi dell'altro (masquerade), e può così leggere tutti i dati scambiati, modificarli, eliminarli o inserirne dei nuovi. Questo si verifica di solito durante la sequenza di autenticazione. spoofing (falsificazione): è una tecnica di attacco complessa e composta di diverse parti. Si tratta di ingannare un sistema che partecipa ad una relazione di fiducia a credere che la macchina pirata sia una macchina fidata. In questo modo, un messaggio inviato da un utente o da un sistema apparentemente legittimo proviene in realtà da un altro. sniffing e eavesdropping (intercettazione e monitoraggio): i pirati sono in possesso di strumenti che permettono loro di Tesi di Laurea di Elena Nuti 15

monitorare attivamente le reti alla ricerca di specifiche sequenze di scambio dei protocolli (in particolare le sequenze di autenticazione dell'identità), che vengono registrate e conservate per farne un successivo uso improprio misrouting (dirottamento): questo attacco si verifica quando una comunicazione diretta ad una persona od una macchina viene deviata e reindirizzata ad un'altra manipolazione: se i dati possono essere manipolati durante la trasmissione o quando sono memorizzati su disco, la loro integrità è compromessa replay (riproduzione): una sequenza di eventi viene registrata e poi riprodotta dopo un certo periodo di tempo nel tentativo di indurre una macchina a svolgere una qualche azione. Questo attacco riguarda in particolare le sequenze di autenticazione, riproducendo il nome e la password di un altro utente e si conclude quindi in un attacco di impersonificazione cut-and-paste (copia e incolla): combina parti di due o più messaggi cifrati 4 messaggio. con la stessa chiave per produrre un nuovo time-resetting: attacco utilizzato contro protocolli che utilizzano l orario corrente. denial of service (negazione del servizio): attacco in cui il pirata impedisce agli utenti legittimi di usare un servizio. Questo attacco può essere portato non solo attraverso l'interruzione o il danneggiamento del servizio stesso, ma anche tramite la negazione della possibilità di accedervi o il ritardo di operazioni critiche. La negazione di servizio può anche cercare di rendere una risorsa troppo impegnata 4 Cfr. par. 1.2 per la definizione di testo cifrato Tesi di Laurea di Elena Nuti 16

provocando risposte a richieste di servizio legittime, ma non autorizzate. Un altro scopo della negazione di servizio è cercare di mantenere la vittima occupata mentre l intruso sta impersonandola, impedendole di smascherarne la vera identità. brute force (forza bruta o ricerca esaustiva): attacco che cerca di decrittare un messaggio crittografato 5 semplicemente provando tutte le possibili combinazioni di chiavi di codifica. 1.2 Tecniche Crittografiche 1.2.1 Definizioni La crittografia è la scienza che si occupa di proteggere delle informazioni rendendole incomprensibili a chi le dovesse intercettare, in modo che possano essere lette e capite solo dal destinatario. La crittoanalisi è viceversa la scienza che cerca di scoprire e rendere chiare le informazioni rese incomprensibili tramite la crittografia. Il messaggio da proteggere viene detto testo in chiaro, mentre quello trasformato in modo da essere incomprensibile viene detto testo cifrato o crittografato; la trasformazione da testo in chiaro a testo cifrato si dice cifratura, mentre la trasformazione inversa, in cui un testo viene decifrato o decrittografato, si dice decifratura. La trasformazione crittografica è detta algoritmo di cifratura, e specifica la procedura che trasforma il testo in chiaro in cifrato. Mentre la crittografia antica era fondata sulla segretezza dell algoritmo di crittazione, la crittografia moderna segue il 5 Cfr. par. 1.2 per la definizione di messaggio crittografato Tesi di Laurea di Elena Nuti 17

principio di Kerckhoff (1883), che afferma che l algoritmo deve essere pubblico ma basato su una trasformazione parametrica, il cui parametro è detto chiave, la quale invece deve essere mantenuta segreta. Questo significa che la trasformazione in sé è soltanto un procedimento, che però per essere attuato ha bisogno di un'informazione ulteriore, da cui dipende il risultato. Per decifrare il messaggio non basta conoscere l'algoritmo di cifratura utilizzato, ma è necessario conoscere anche la chiave. Come già accennato, nello studio degli algoritmi crittografici moderni e della loro sicurezza si ipotizza che l'algoritmo sia noto a tutti e che ciò che non è noto sia esclusivamente la chiave: questo perché oggi si considera inaffidabile un sistema crittografico la cui sicurezza si basi sulla segretezza dell'algoritmo. Il problema principale riguardante la crittografia è la gestione delle chiavi, ovvero la regola da seguire per decifrare il testo. In merito, in funzione del tipo di chiave utilizzato, possiamo distinguere due tipi di algoritmi crittografici: simmetrici, o a chiave segreta asimmetrici, o a chiave pubblica 1.2.2 La Crittografia Simmetrica Il sistema di crittografia simmetrico o a chiave segreta adotta un unica chiave che serve sia per codificare il testo che per decodificarlo. Tale chiave crittografica deve essere nota sia al mittente che al destinatario, i quali devono scambiarsela in anticipo; pertanto è Tesi di Laurea di Elena Nuti 18

necessario che per lo scambio vengano utilizzati dei sistemi di comunicazione sicuri. Altra caratteristica del sistema simmetrico è la necessità, nelle comunicazioni con più parti, di adottare tante chiavi segrete per ognuno degli interlocutori. Se non si procedesse in questo modo, infatti, ciascun interlocutore potrebbe decrittare l'informazione diretta ad altro destinatario ed inoltre le parti, conoscendo la chiave di crittografia, potrebbero alterare l'informazione originaria rendendo ripudiabile il documento crittografato. Fig. 4 - Schema di crittografia simmetrica Indicando con M il testo iniziale in chiaro, con C il testo crittografato, con E K e D K rispettivamente la crittografia e la decrittografia con chiave K, possiamo descrivere funzionalmente l'algoritmo simmetrico nel seguente modo: C= E K (M) M= D K (C) E quindi: M= D K (C K (M)) Tesi di Laurea di Elena Nuti 19

Gli algoritmi simmetrici si basano su sostituzioni e trasposizioni degli elementi e possono essere suddivisi in block ciphers (cifratori a blocco), che codificano e decodificano il testo a gruppi di bit, e stream ciphers (cifratori a flusso), che operano bit a bit. Uno dei più noti algoritmi simmetrici è il DES (Data Encryption Standard), che utilizza una chiave da 56 bit producendo un blocco codificato di 64 bit. Una sua successiva estensione è il Triple DES (TDES o 3DES), che utilizza una chiave a 168 bit ed effettua tre esecuzioni consecutive del DES classico. Da notare che il DES non è più utilizzato in quanto è oggi attaccabile con strumenti largamente diffusi in tempi brevi. Dal maggio 2002 è quindi stato dichiarato effettivo 6 un nuovo metodo simmetrico in sostituzione del DES, chiamato AES (American Encryption Standard), che utilizza chiavi a 128, 192 e 256 bit per crittare e decrittare dati in blocchi di 128 bit. Altri algoritmi simmetrici molto noti sono IDEA, Blowfish e RC4. Una caratteristica generale degli algoritmi a chiave simmetrica è la loro efficienza che li rende utilizzabili per crittografare messaggi in tempo reale. Per maggiori informazioni in merito alle principali tecniche crittografiche simmetriche si rimanda all Appendice B. 1.2.3 La Crittografia Asimmetrica La crittografia asimmetrica, o a chiave pubblica, si è sviluppata negli anni Settanta. Gli algoritmi a chiave asimmetrica sono 6 In vista della data di scadenza della validità del DES, nel 1997 il National Institute of Standard and Technology (NIST) aveva indetto un concorso pubblico per la nomina dell'advanced Encryption Standard elencando una serie di requisiti di base che l algoritmo avrebbe dovuto possedere. Tale concorso è stato vinto dall algoritmo di Rijndael. che si è dimostrato particolarmente efficiente in termini di velocità e basso sfruttamento di memoria. Tesi di Laurea di Elena Nuti 20

caratterizzati da una coppia di chiavi: la prima è detta chiave pubblica e può essere conosciuta da parte di chiunque, la seconda è detta chiave privata ed è invece conosciuta solo dal suo titolare. La chiave pubblica viene impiegata per la codifica dei messaggi, ovvero per trasformare un testo in chiaro in un testo crittografato, impossibile da leggere e decifrare. Per mandare un messaggio riservato si dovrà pertanto semplicemente utilizzare la chiave pubblica del destinatario per la codifica. Per il passaggio inverso la chiave pubblica è inutile: il testo può essere decodificato unicamente utilizzando la chiave privata custodita dal destinatario. Il metodo matematico alla base di questa tipologia di crittografia a chiave pubblica si basa sui numeri primi e su funzioni matematiche che, per chiavi sufficientemente lunghe, è quasi impossibile invertire 7. Indicando con M il testo iniziale in chiaro, con C il testo crittografato, con E KPUB e D KPRIV rispettivamente la crittografia (utilizzando la chiave pubblica) e la decrittografia (utilizzando la chiave privata), possiamo descrivere funzionalmente l'algoritmo asimmetrico nel seguente modo: C=E KPUB (M) M=D KPRIV (C) E quindi: M=D KPRIV (E KPUB (M)) 7 Si tratterebbe in pratica di fattorizzare un numero molto grande per risalire ai due numeri primi che lo compongono (cfr. Appendice B per maggiori informazioni). Oggi vengono normalmente utilizzate chiavi a 1024 bit o superiori. E da notare che già le chiavi a 512 bit non sono più considerate sicure. Tesi di Laurea di Elena Nuti 21

Idealmente, per ogni coppia di chiavi la chiave privata non può essere dedotta in alcun modo dalla chiave pubblica. Ciò consente di poter rendere nota (distribuire apertamente) la chiave pubblica: solo il possessore della chiave privata è in grado di decrittografare il testo crittografato con chiave pubblica. Questa soluzione a due chiavi semplifica il problema della gestione della chiave: due entità possono scambiare dati crittografati senza dover scambiare alcuna informazione segreta sulle chiavi. E importante notare come il sistema asimmetrico permetta di garantire le tre funzioni di sicurezza fondamentali (riservatezza, autenticazione, l'integrità). Andiamo adesso a vedere come le tecniche di crittografia asimmetriche possono essere utilizzate per garantire questi importanti aspetti. Se il mittente vuole garantire la sicurezza della trasmissione del messaggio, si procura inizialmente la chiave pubblica del destinatario e cripta il messaggio utilizzando tale chiave. Il destinatario, invece, userà la propria chiave privata per decifrarlo e quindi trasformarlo in chiaro: così facendo, il destinatario potrà apprendere il contenuto del documento e accertarsi che esso non abbia subito alterazioni. Tale ultima verifica è data dal fatto che, se il documento fosse stato alterato in itinere, esso non potrebbe essere decifrato con la chiave privata del destinatario, in quanto modificando anche un solo bit verrebbe meno la corrispondenza tra chiave pubblica e chiave privata del destinatario. In altri termini, il testo non si decifrerebbe, ragion per cui il destinatario si accorgerebbe dell alterazione del testo medesimo. In Fig. 5 è riportato lo schema di una comunicazione in cui la riservatezza viene garantita tramite l uso di tecniche crittografiche asimmetriche. Tesi di Laurea di Elena Nuti 22

Fig. 5 Riservatezza tramite crittografia asimmetrica Questa prima applicazione garantisce la segretezza del documento, ma non la sua paternità. Chiunque, infatti, può utilizzare la chiave pubblica del destinatario, cifrando il documento e inviandolo. Il destinatario, quindi, non potrà essere sicuro della paternità del documento. Sono, però, soddisfatte le esigenze di riservatezza poste alla base dell'invio del documento da parte del mittente. Per ottenere invece l'autenticazione con un sistema di cifratura asimmetrico, si inverte l'uso delle chiavi rispetto alla cifratura con scopo di segretezza: il mittente cifra il documento con la sua chiave privata, il destinatario lo decifra con la chiave pubblica del mittente, verificandone l autenticità. Fig. 6 Autenticazione tramite crittografia asimmetrica Tesi di Laurea di Elena Nuti 23

In Fig. 6 è riportato lo schema di una comunicazione in cui la viene garantita autenticazione per mezzo della crittografia asimmetrica. Il mittente, utilizzando la sua chiave privata per cifrare un testo, appone la propria firma digitale. Il destinatario potrà leggere il contenuto del documento applicando la chiave pubblica del mittente accertandosi, in tal modo, che quel documento è associato a quella determinata chiave privata in possesso di colui che asserisce esserne l'autore. Il destinatario, dunque, non fa altro che decodificare la firma del mittente attraverso la corrispondente chiave pubblica: se la verifica ha esito positivo, è assicurata l'autenticità del documento, poiché soltanto il mittente può aver usato la chiave privata per cifrare il documento. Diversamente, se l'operazione di verifica dovesse avere esito negativo, ciò significherebbe che il documento non appartiene al mittente. Per completezza è opportuno segnalare che gli algoritmi a chiave asimmetrica, a differenza di quelli a chiave simmetrica, risultano inefficienti, specialmente se il documento da crittografare è molto grande. Ciò comporta che spesso, nella procedura di firma con la chiave privata, al fine di rendere sicuro e veloce il sistema di elaborazione, non si codifica l'intero documento, ma soltanto una parte compressa di questo, ottenuta tramite l applicazione di una funzione di hash. L'hashing produce un'impronta digitale del documento (message digest o hash code, una specie di riassunto codificato della struttura del testo, della sua lunghezza, del suo contenuto) che consente la creazione della firma digitale. In altri termini, la funzione di hash effettua una compressione del messaggio, con una quasi totale perdita di informazione. Tesi di Laurea di Elena Nuti 24

La chiave privata si applica solo sul message digest, e non sull'intero documento, in modo da consentire una cifratura più veloce. Dopo l'apposizione della firma digitale da parte del mittente viene creato un documento in chiaro associato ad un insieme invece incomprensibile di caratteri che è il frutto della funzione di hash. Il destinatario del documento, una volta pervenutogli il documento firmato digitalmente, provvede alla decifrazione dell'hash della firma tramite la chiave pubblica del mittente. Ricalcola poi l hash del documento e verifica che questa quantità risulti uguale a quella precedentemente decrittata. Se, al termine dell'operazione, la verifica effettuata attraverso la chiave pubblica del mittente si conclude positivamente, sono garantite: - autenticità del documento: non vi è alcun dubbio, infatti, che la firma è stata creata con la chiave privata corrispondente alla chiave pubblica usata per decifrare; - integrità del documento: il documento non può essere stato alterato dopo l'apposizione della firma digitale. Apponendo la firma digitale su un documento, però, se da un lato si ottiene la garanzia dell'autenticità e dell'integrità del documento stesso, dall'altro non è possibile assicurare la sua segretezza, in quanto il documento rimane leggibile e, d'altro canto, chiunque potrebbe accedere alla chiave pubblica del mittente al fine di compiere la verifica necessaria ad accertare la provenienza del documento. Si può ovviare a questo problema abbinando un messaggio firmato e crittografato: il mittente cifra il documento con la chiave pubblica del destinatario e lo firma con la sua chiave privata; il Tesi di Laurea di Elena Nuti 25

destinatario decifra il documento con la sua chiave privata e verifica la firma con la chiave pubblica del mittente. Come già segnalato questa procedura è però inefficiente. Di fatto, si procede creando una chiave simmetrica random e crittando il documento con tale chiave. La chiave verrà poi crittografata con la chiave pubblica del destinatario. Il documento e la chiave così crittografati verranno inviati poi al destinatario che provvederà ad aprire la chiave simmetrica con la propria chiave privata (utilizzando l algoritmo asimmetrico) e successivamente il documento con la chiave e l algoritmo simmetrico. In questo modo il mittente ha la certezza che soltanto il destinatario potrà leggere il documento, poiché solo quest'ultimo dispone della chiave privata necessaria alla decifratura della chiave simmetrica. Inoltre, il mittente può utilizzare questa tecnica qualora intenda assicurare al suo interlocutore anche la certezza della paternità e dell'integrità del documento (firmando il documento prima della crittazione). La doppia chiave consente pertanto di accertare l'imputabilità e l'integrità del messaggio trasmesso, assicurandone anche la non repudiabilità, considerato che solo il titolare della chiave privata è in grado di crittografare il messaggio. Uno degli algoritmi asimmetrici più conosciuti e diffusi è detto RSA dai nomi dei tre ricercatori che lo hanno elaborato (Rivest, Shamir, Adleman). Per quanto riguarda lo scambio preventivo delle chiavi tramite mezzi non sicuri, tra i più diffusi protocolli possiamo elencare quello di Diffie e Hellman (DH) e la sua evoluzione STS (Station to Station Protocol). Per maggiori informazioni riguardo alle principali tecniche crittografiche asimmetriche si rimanda all Appendice B di questa tesi. Tesi di Laurea di Elena Nuti 26

1.2.4 La Certificazione Il sistema della crittografia asimmetrica non è da solo sufficiente ad assicurare al destinatario di un messaggio, elettronicamente firmato, che una chiave pubblica appartenga, realmente, ad un determinato soggetto. L'autore di un documento potrebbe, infatti, spacciarsi per un'altra persona, oppure per un soggetto inesistente. Per poter attribuire valore legale alle transazioni telematiche si deve pertanto avere la garanzia che la chiave pubblica appartenga effettivamente all'utente preventivamente identificato e che essa non sia stata contraffatta, ovvero occorre verificare se colui che utilizza una determinata firma digitale con chiave asimmetrica sia in realtà il legittimo assegnatario. Tale problema è stato risolto prevedendo una procedura detta di certificazione, definita dai d.p.r. 513/97 e 445/2000 come quella "procedura informatica, applicata alla chiave pubblica e rilevabile dai sistemi di validazione, mediante la quale si garantisce la corrispondenza biunivoca tra chiave pubblica e soggetto titolare cui essa appartiene, si identifica quest'ultimo e si attesta il periodo di validità della predetta chiave ed il termine di scadenza del relativo certificato, in ogni caso non superiore a tre anni". L Autorità di Certificazione (CA), soggetto pubblico o privato terzo ai rapporti tra le parti, garantisce nei confronti dei terzi la corrispondenza della chiave pubblica al soggetto titolare, effettuando: - la procedura di certificazione; - il rilascio del certificato della chiave pubblica; Tesi di Laurea di Elena Nuti 27

- la pubblicazione del certificato e della chiave pubblica in un elenco di pubblico dominio accessibile per via telematica; - la pubblicazione e l'aggiornamento dell'elenco dei certificati sospesi e revocati. E inoltre fondamentale, in particolare per quello che riguarda le transazioni a carattere legale, considerare che le firme digitali sono considerate legalmente valide se e solo se, nel momento in cui sono state apposte, il certificato dell utente era valido. Questo può essere provato tramite l apposizione di una marcatura temporale (timestamp) sulla firma digitale. Per attribuire in modo non equivocabile una precisa collocazione temporale ad un documento è necessario l intervento di Autorità di validazione temporale (TSA, TimeStamping Authorities), che si preoccupino di allegare un timestamp al documento e si facciano garanti della sua autenticità. Le TSA sono in pratica terze parti fidate in grado di fornire la prova dell esistenza di un documento informatico ad un certo istante nel tempo. L utente accede al server di marcatura temporale (es. attraverso Internet), utilizzando gli strumenti software appositamente forniti. Per mezzo di questi strumenti è possibile conferire a qualsiasi applicazione la capacità di richiedere ed ottenere marche temporali, oltre ad analizzare le marche temporali ottenute. Il servizio di timestamping è comunemente costituito dalle seguenti fasi: - generazione dell impronta (hash) del documento digitale di cui si richiede la validazione temporale - firma da parte dell utente di tale impronta - invio della richiesta alla TSA Tesi di Laurea di Elena Nuti 28

- generazione della marca temporale costituita dall hash firmato, dall istante certificato e dalla firma della TSA. Il dispositivo di firma utilizzato nell erogazione delle marche temporali è di solito un prodotto certificato come conforme a certi requisiti di sicurezza, come ad esempio i requisiti FIPS 140-1 di Livello 3. Anche il formato delle marche temporali ed il protocollo di colloquio sono basati sul uno specifico standard, come ad esempio RFC 3161. Il server di marcatura temporale ricava il riferimento temporale da un ricevitore radio di estrema precisione, tarato e certificato. - invio della marca temporale al richiedente; 1.2.5 Protocolli per comunicazioni sicure Esistono vari approcci possibili per fornire servizi di sicurezza per scambio dati via Web, e la scelta dell'uno o dell'altro dipende dalle politiche di sicurezza stabilite in base ai requisiti necessari per la particolare comunicazione che si vuole instaurare (cfr. par. 1.1.3). Con particolare riferimento allo stack TCP/IP, possono essere evidenziati tre tipologie di protocolli per comunicazioni sicure (cfr. Fig. 7), ognuna delle quali corrisponde ad una diversa collocazione delle funzionalità di sicurezza all'interno della pila dei livelli. Fig. 7 Protocolli di sicurezza Nel caso (1) la sicurezza è garantita a livello rete, ovvero all'interno del protocollo IP: è questo il caso del protocollo IPSec, Tesi di Laurea di Elena Nuti 29

che offre il vantaggio di una totale trasparenza rispetto ai livelli superiori. Un'altra possibile soluzione è quella di SSL, mostrata in (2): in questo caso le funzionalità di sicurezza sono inserite al di sopra del protocollo di trasporto, ovvero in corrispondenza del livello di sessione secondo la nomenclatura OSI. Un ultimo approccio, come evidenziato nel caso (3), consiste nell includere i servizi di sicurezza a livello applicativo, con soluzioni specifiche e dedicate alla singola applicazione: esempi di questo tipo sono SET per le transazioni sicure e PGP per la posta elettronica. Per maggiori dettagli su tali protocolli si rimanda all Appendice C di questa tesi. Tesi di Laurea di Elena Nuti 30