LA FIRMA ELETTRONICA: STRUMENTO PER LA SICUREZZA DELLE INFORMAZIONI di Marco Pironti Ricercatore di Economia e Gestione delle Imprese presso il Dipartimento di Informatica della Facoltà di Scienze MM.FF.NN. dell’Università degli Studi di Torino Indice Abstract Introduzione ...........................................................................................................3 Il contesto normativo ..............................................................................................4 La certificazione elettronica ....................................................................................7 L’autenticazione...................................................................................................7 L’integrità............................................................................................................8 La riservatezza.....................................................................................................8 Sistema di crittografia a chiave segreta..................................................................8 Il sistema a chiave pubblica/privata.......................................................................8 Algoritmo di hashing..........................................................................................11 L’Autorità di Certificazione (CA) .......................................................................11 Come ottenere chiavi e certificati per la firma digitale .........................................13 Il Directory Server .............................................................................................13 I messaggi firmati ..............................................................................................13 Marco Pironti – La firma elettronica - 2 Abstract A fronte della rapida diffusione di tecnologie informatiche per il trattamento delle informazioni, ad oggi non sono ancora diffuse adeguate tecniche per la gestione della sicurezza nel trattamento dei dati. Infatti, anche un semplice messaggio di e-mail è privo di alcuni requisiti fondamentali: non si è sicuri di chi lo ha spedito, del contenuto del messaggio e della sua riservatezza. La firma digitale è l‘equivalente elettronico di una tradizionale firma apposta su carta. La sua funzione principale è perciò quella di attestare la validità e la veridicità di un documento. Dal punto di vista tecnico la firma digitale è una codifica crittografica del documento che garantisce, oltre che l’autenticazione del mittente del documento e del messaggio trasmesso, anche l’integrità del messaggio permettendo di verificare che non ci siano state modifiche rispetto all’originale. In altre parole, attraverso la firma digitale si evita che il nostro documento venga intercettato e manipolato senza che nessuno se ne accorga. Esistono oggi i mezzi per garantire la sicurezza dei dati che coinvolgono nuove tecnologie, quali la posta elettronica e l’impiego di strumenti web. Questo articolo intende fornire le indicazioni fondamentali su queste tematiche. Marco Pironti – La firma elettronica - 3 Introduzione Nell’informatica basata su strumenti tradizionali, fondata principalmente su mainframe, l’utente può essere certo di stabilire un collegamento sicuro dal proprio terminale alla macchina che intende raggiungere. Inoltre l’identificazione dell’utente è sufficientemente garantita dalle regole di sicurezza relative alla gestione delle password. L’avvento delle Reti “moderne” (Internet, Intranet, Extranet) ha determinato un rapido incremento delle potenzialità di connessione clie nt-server, al quale non è corrisposto un altrettanto rapido incremento sulle garanzie di sicurezza del nuovo ambiente. La necessità di sicurezza legata all’invio o alla ricezione di una e-mail, oppure allo scambio di dati e informazioni con un sito web è evidenziata dai seguenti interrogativi: − I dati sono trasmessi alla persona voluta? − Come avere la sicurezza di essere collegati effettivamente al sito desiderato? − I dati trasmessi arriveranno con lo stesso contenuto con cui sono stati inviati? − Come far sì che i dati trasmessi siano visti solo dal destinatario? − Il destinatario può negare l’avvenuta ricezione del messaggio inviato? − Ecc. Analogamente il destinatario potrebbe chiedersi: − Il mittente è veramente quello dichiarato? − Gli utenti che si collegano ad una particolare applicazione sono proprio quelli autorizzati? − I dati ricevuti sono quelli effettivamente inviati? − Come essere sicuri che i dati ricevuti non siano stati intercettati e letti da terze persone? − Il mittente può disconoscere la paternità del messaggio? − Ecc. Tutti questi interrogativi ed altri analoghi possono preoccupare i soggetti coinvolti, in funzione del valore che essi attribuiscono alle informazioni trasmesse o ricevute e quindi richiedere misure di sicurezza più o meno estese, potenti e costose. Marco Pironti – La firma elettronica - 4 Il contesto normativo Nel corso dell’ultimo decennio alcuni ordinamenti stranieri, nei quali l’uso di strumenti telematici per la comunicazione di informazioni è diffuso, hanno introdotto regole più o meno coerenti con le scelte del nostro legislatore. Per quanto riguarda gli Stati Uniti d’America, quasi tutti gli Stati della Federazione hanno emanato atti legislativi in tema di firma digitale. Tra quelli che per primi hanno disciplinato organicamente la materia, vi è lo Stato dello Utah, con il Digital Signature Act, datato 27 febbraio 1995. Anche se le norme in esso contenute sono estremamente tecniche, vi sono disposizioni che abbracciano il diritto sostanziale: in special modo, l’equivalenza tra sottoscrizione su carta e firma digitale (§ 46-3-401). Pur non esistendo una legge federale, sono stati prodotti standards per il riconoscimento della sottoscrizione elettronica, ai quali fanno riferimento le leggi dei singoli Stati. Un grande contributo allo sviluppo di questi standards è stato fornito da organizzazioni non governative . Anche le Nazioni Unite si sono occupate delle problematiche inerenti la firma digitale. L’UNCITRAL ha predisposto il Model Law for Electronic Commerce, un modello di legge che prevede l’uso della sottoscrizione elettronica per fini legali e commerciali e dell’elaboratore elettronico quale mezzo di prova nei procedimenti giudiziari ed arbitrali. All’inizio del 1998 è stata pubblicata una bozza, contenente regole uniformi in materia di sottoscrizione elettronica . Tra le iniziative di carattere internazionale è da rimarcare la Dichiarazione di Bonn , attraverso la quale i Governi dei principali paesi europei hanno sottolineato la necessità di disegni e strutture tecniche e giuridiche a livello europeo ed internazionale. In tale sede sono state promosse iniziative per rimuovere le barriere all’utilizzo della firma digitale in ambito giuridico ed economico. Anche l’Unione Europea, nel corso degli ultimi anni, si è impegnata sul fronte delle nuove forme di comunicazione. Il Parlamento Europeo ha invitato gli Stati Membri e la Commissione Europea a predisporre misure consistenti per assicurare l’integrità e l’autenticità dei documenti trasmessi per via telematica. Nell’autunno del 1997 la Commissione ha adottato una Comunicazione rivolta al Parlamento Europeo, al Comitato Economico e Sociale ed al Comitato delle Regioni, sollecitando un disegno comune per la firma digitale e la crittografia, strumenti ritenuti essenziali per una maggiore sicurezza del commercio telematico. Con una successiva Comunicazione si è richiesto al Parlamento Europeo l’elaborazione di una direttiva che formuli un riconoscimento, all’interno dell’Unione Europea, delle sottoscrizioni elettroniche attraverso la definizione dei requisiti essenziali per l’armonizzazione delle legislazioni degli Stati membri, e determini i meccanismi di cooperazione con Paesi terzi per un mutuo riconoscimento sulla base di accordi bilaterali o multilaterali. L’attività svolta dagli Organi dell’Unione Europea per un riconoscimento delle forme elettroniche non ha lasciato indifferenti i legislatori degli Stati membri. Molti di questi sono ancora ad una fase preparatoria dei lavori (così il Regno Unito), altri, invece, hanno introdotto negli ordinamenti interni alcune norme significative. Il legislatore francese ha adottato, in data 27 Luglio 1996, una nuova legge sulle telecomunicazioni che si pone l’obiettivo di ridurre le restrizioni esistenti sui sistemi di crittografia, essenziali per la tecnica della firma digitale. Il Parlamento tedesco ha approvato, nel corso del 1997, disposizioni rilevanti sulla firma digitale senza però disciplinare direttamente il profilo della validità giuridica della firma digitale. Piuttosto, essa ha l’obiettivo di stabilire requisiti generali per la sicurezza della la firma digitale. Questo è il quadro internazionale più recente, dal quale il legislatore italiano ha ricevuto l’impulso per una disciplina del documento informatico e della firma digitale. La materia della documentazione elettronica e della firma digitale ha trovato una disciplina nell’ordinamento giuridico italiano con il D.P.R. 10 novembre 1997, n. 513, “Regolamento recante criteri e modalità per la formazione, l’archiviazione e la trasmissione di documenti con strumenti informatici e telematici, a norma dell’articolo 15, comma 2, della legge 15 marzo 1997, n.59”. Il risultato, prodotto dalle norme del regolamento, è la piena rilevanza giuridica della documentazione informatica e la sua equiparazione alla tradizionale documentazione “cartacea”. All’intenso valore giuridico della disciplina regolamentare non si accompagna un equivalente valore pragmatico, in quanto, per quest’ultimo, occorrerà attendere l’emanazione di ulteriori ed indispensabili regolamenti tecnici di Marco Pironti – La firma elettronica - 5 attuazione. Successivamente all’emanazione di tali regolamenti, il D.P.R. 513 diventerà pienamente operativo. Il regolamento si compone di tre capi. Il primo di questi, dedicato ai principi generali, si apre con l’enunciazione delle definizioni dei termini di carattere tecnico, utilizzati nel corso della disciplina giuridica . Alla nozione di documento informatico ed alla descrizione dei requisiti che lo caratterizzano, segue la disciplina dell’atto informatico come forma scritta e dell’efficacia probatoria ad esso attribuita e quella della validità e rilevanza attribuita alla copia di atti e documenti. Lo stesso capo si occupa (sommariamente) della disciplina delle attività da compiersi per il rilascio delle chiavi asimmetriche all’utente da parte dell’Autorità di certificazione, nonché degli obblighi inerenti entrambe le parti. Dopo alcune enunciazioni di carattere funzionale relative alle forme e modalità di utilizzo delle chiavi, il secondo capo, rubricato “firma digitale”, si dedica alla validità e rilevanza a tutti gli effetti di legge dei contratti stipulati con strumenti informatici o per via telematica. L’attenzione è poi rivolta ai criteri di conclusione del contratto e di notificazione del documento informatico, nonché alla segretezza della corrispondenza trasmessa per via informatica ed alla possibilità di effettuare pagamenti elettronici, come pure alla formazione di libri e scritture contabili, a carattere obbligatorio, in formato elettronico. Le successive disposizioni attengono all’autenticazione della firma digitale, riconosciuta ai sensi dell’art. 2703 cod. civ., ai criteri di validità e di applicazione delle chiavi di cifratura della pubblica amministrazione. Il secondo capo si chiude con la disciplina della firma digitale e del documento informatico relativa alla pubblica amministrazione. Le norme di attuazione del regolamento sono contenute nel capo terzo, il quale pone alle pubbliche amministrazioni dei termini per l’adozione di piani di sviluppo e di realizzazione nonché di un rapporto tra costi e benefici del recupero su supporto informatico dei documenti e degli atti cartacei. Il regolamento presenta norme di carattere sostanziale che si inseriscono nel percorso positivo della definizione di documento informatico, per il quale si intende la rappresentazione informatica di atti, fatti, o dati giuridicamente rilevanti (art. 1, a). Nozione breve che permette di attribuire al documento informatico, da chiunque formato, all’archiviazione ed alla trasmissione telematica di questo, validità e rilevanza a tutti gli effetti di legge (art. 2). Dall’esame dell’art. 1, contenente le definizioni dei termini tecnici presenti nelle successive norme, è possibile richiamare, quasi per intero, la disciplina scelta per il documento informatico firmato digitalmente. Il sistema che attribuisce al documento informatico con firma digitale l’efficacia della scrittura privata (art. 5) è così concepito: una Autorità di certificazione (o certificatore) , consultata da un utente interessato, descrive a quest’ultimo la procedura e concede il know how per la “generazione” di una coppia di chiavi asimmetriche. L’utente ha il dovere di custodire segretamente la propria “chiave privata” , che utilizzerà per apporre la firma; tuttavia, è data facoltà di depositare in forma segreta la chiave presso un notaio (secondo la disciplina del testamento segreto). La propria “chiave pubblica” verrà pubblicata in un registro telematico da parte del certificatore. Quest’ultimo, ricevuta la chiave pubblica dell’utente, emette un “certificato”, il quale garantisce la corrispondenza biunivoca tra chiave pubblica, necessaria per la verifica della firma , chiave privata e soggetto titolare. Il contenuto del certificato riguarda l’indicazione delle generalità della persona, della corrispondente chiave pubblica e del termine di scadenza (art. 1, h). La validità di tale certificato è stabilita in una durata massima di tre anni, ma può essere revocato, ossia perdere validità irretroattivamente, ovvero sospeso per un periodo di tempo determinato. Il regolamento si occupa di disciplinare i requisiti dei certificatori, i quali hanno il delicato compito di assicurare la corrispondenza, e quindi la titolarità, delle chiavi asimmetriche, e di conseguenza della firma digitale. Con riferimento al settore privato , per svolgere l’attività di certificatore occorre l’inclusione in un apposito elenco pubblico tenuto dall’Autorità per l’Informatica nella Pubblica Amministrazione (art. 8, comma 3). Si tratta di un regime autorizzatorio i cui requisiti per accedervi sono stati in parte mutuati da quelli richiesti per l’esercizio dell’attività bancaria . Inoltre è data possibilità di agire sul territorio italiano ai certificatori operanti sulla base di licenza od autorizzazione rilasciata da altro Stato membro dell’Unione Europea o dello Spazio economico europeo, purché in possesso di requisiti equivalenti . In numerose leggi e progetti di legge stranieri e sovranazionali sulla materia, la struttura ed il quadro di funzionamento delle Autorità di Certificazione sono disciplinati in maniera puntuale ed esaustiva prevedendo, nella maggior parte dei casi, due livelli gerarchici, con il livello sovraordinato di emanazione statale o pubblica che certifica le autorità sottordinate, normalmente private. Le norme del regolamento necessitano una integrazione che avverrà attraverso l’emanazione dei successivi regolamenti di attuazione previsti dall’art. 3. Il regolamento prevede la disciplina della “firma digitale autenticata”. L’autenticazione consiste nell’attestazione da parte di un pubblico ufficiale che la firma digitale Marco Pironti – La firma elettronica - 6 è stata apposta in sua presenza dal titolare. Tale autenticazione deve essere preceduta dall’accertamento dell’identità personale, della validità della chiave utilizzata e del fatto che il documento sottoscritto risponde alla volontà della parte e non è in contrasto con l’ordinamento giuridico (art. 16). La funzione di autentica non si esaurisce nella mera certificazione, ma comporta un controllo di legalità sul contenuto del documento informatico sottoscritto . La firma digitale autenticata si considera come riconosciuta ai sensi dell’art. 2703 cod. civ., formando piena prova della provenienza delle dichiarazioni da chi ha sottoscritto il documento informatico. La disciplina regolamentare incide anche sulla comunicazione telematica del documento informatico. L’art. 12, dedicato alla trasmissione del documento, stabilisce che il documento informatico trasmesso per via telematica si intende pervenuto al destinatario se inviato all’indirizzo elettronico da questi dichiarato. La determinazione della data e dell’orario, opponibili ai terzi, in cui ad esempio è avvenuta la conclusione del contratto, dipende dall’adozione di tecniche di validazione temporale . Come si può notare da questa rassegna il regolamento contiene norme la cui incidenza sul diritto sostanziale è estremamente rilevante, pur mancando una immediata applicabilità, rinviata a successive norme tecniche. L’Autorità per l’informatica nella pubblica amministrazione ha predisposto uno schema di Decreto del Presidente del Consiglio dei Ministri contenente “Regole tecniche per la formazione, la trasmissione, la conservazione, la duplicazione, la riproduzione e la validazione, anche temporale, dei documenti informatici ai sensi dell’articolo 3, comma 1, del Decreto del Presidente della Repubblica, 10 novembre 1997, n. 513”. Senza entrare nel dettaglio degli articoli di tale bozza, è opportuno sottolineare come alcune discipline, richieste dal d.p.r.. 10 Novembre 1997, n. 513, non siano parte dello schema predisposto . Il tecnicismo informatico non permette di fare ulteriori considerazioni, salvo notare come sia difficile rinvenire un disegno complessivo. Le norme, a volte estremamente tecnicistiche, altre volte molto vaghe nei contenuti, sembrano prive di un tracciato comune che consenta all’interprete una lettura agevole ed una loro attuazione a breve. Marco Pironti – La firma elettronica - 7 La certificazione elettronica In prima approssimazione la certificazione elettronica consiste nell’utilizzare tecniche in modo da attribuire a documenti elettronici la stessa validità degli analoghi cartacei. A tal proposito vengono descritti ed analizzati i concetti di autenticazione, integrità e riservatezza, le tecniche di crittografia a chiave segreta, crittografia a chiave pubblica/privata, gli algoritmi di hashing e gli strumenti necessari per raggiungere tale scopo. Ma, come si dimostrerà nei paragrafi successivi, la certificazione elettronica permette di aumentare la sicurezza di un documento. Mentre un documento cartaceo può essere manomesso da terze parti, senza che sia possibile rilevarne la manipolazione , con la certificazione elettronica ogni alterazione del contenuto viene evidenziata. In generale la sicurezza può riguardare un messaggio, un documento, un file scambiato tra due parti. Per proteggere, cioè rendere sicuro, si intende contrastare le frodi dovute all’osservazione ed alle modifiche non autorizzate o la possibilità di negare di aver trasmesso o ricevuto un messaggio. Predisporre contromisure di protezione o sicurezza significa: − autenticare, cioè assicurare l’effettiva provenienza del documento, − assicurare l’inviolabilità della posta, mantenendo la riservatezza delle informazioni, − assicurare l’integrità dei dati, − evitare il ripudio, chi trasmette non deve poter negare di aver trasmesso, così come chi riceve non deve poter negare di aver ricevuto. È possibile riepilogare brevemente quanto sopra detto con la seguente tabella che correla rischi con requisiti. Rischio Frode Osservazione non autorizzata Modifica dati Diniego Requisito Autenticazione Riservatezza Integrità Non ripudio L’autenticazione L’autenticazione è il procedimento utilizzato per verificare l’identità dell’utente o dell’autore di un documento. Questa verifica richiede lo scambio di informazioni segrete tra l’utente e l’applicazione che vuole utilizzare; di solito l’autenticazione avviene tramite password in possesso all’utente confrontata con quella contenuta in un database a cui accede l’applicazione. L’utente invia la password all’applicazione che verifica l’identità dell’utente confrontando la password ricevuta con quella che nel database corrisponde all’identificativo utente immesso. Ad esempio, nell’ambito della sicurezza aziendale si possono identificare tre tipi di rischi: rivelazione di informazioni riservate, accesso non autorizzato ed interruzioni di servizio non autorizzate. Il primo rischio riguarda la rivelazione di informazioni segrete o riservate; questa tipologia di violazione consiste nella possibilità da parte di utenti non autorizzati di accedere ad informazioni riservate sul sistema aziendale. Le informazioni riservate devono essere memorizzate e trasmesse in maniera codificata. Un sistema di codifica poco efficace può portare a tale tipo di problemi. Gli accessi non autorizzati sono possibili dove non esista un utilizzo di password corretto oppure manchi l’autenticazione degli utenti. Esiste inoltre il rischio di interruzione del servizio; in questo caso viene bloccato il sistema con conseguente mancata disponibilità del sistema informatico e delle sue risorse. Un testo scritto al computer è modificabile per definizione e se vogliamo usarlo come documento inoppugnabile dobbiamo renderlo non più modificabile senza che tale modifica venga segnalata. Per ottenere questo si ricorre alla cifratura utilizzando la tecnica delle coppie di chiavi, una segreta ed una pubblica. Pertanto un sistema di autenticazione sicura è quello a chiave pubblica. I normali sistemi di codifica e decodifica richiedono una chiave comune segreta che viene utilizzata sia per la codifica sia per la decodifica. Marco Pironti – La firma elettronica - 8 L’integrità Il termine integrità indica la protezione delle informazioni dalle eventuali modifiche apportate da altri utenti non autorizzati. Il concetto di integrità dei dati è diverso da quello di riservatezza. La protezione dei dati da modifiche non autorizzate può essere ottenuta in due passaggi: durante il primo passaggio il mittente deve applicare ai dati una funzione hash non invertibile. Il risultato della funzione, chiamato valore di controllo, viene accodato ai dati. A sua volta, per assicurarsi che i dati ricevuti non siano stati modificati, il destinatario esegue la stessa funzione di hash del mittente sui dati e confronta il risultato ottenuto con il valore di controllo accodato ai dati. Se i dati non coincidono significa che sono stati modificati ed il destinatario può non accettarli. Per una maggiore sicurezza occorre effettuare un secondo passaggio che consiste nella codifica del valore di controllo. Un eventuale intruso che riuscisse ad intercettare i dati durante la trasmissione potrebbe modificarli solamente conoscendo la chiave di codifica applicata con il secondo passaggio. La riservatezza La riservatezza dei dati riguarda l’impossibilità di rivelare i dati riservati ad utenti non autorizzati, mentre l’integrità impedisce agli utenti non autorizzati di apportare modifiche a questi dati. Le informazioni riservate devono essere protette sia durante le operazioni di memorizzazione sia durante la trasmissione in rete. I dati memorizzati possono essere protetti sia tramite codifica sia utilizzando il controllo di accesso. Il controllo di accesso consente all’utente di utilizzare la propria autorizzazione per accedere alle risorse disponibili; l’accesso viene limitato solo agli utenti autenticati ed autorizzati. Se le informazioni vengono trasmesse in rete devono essere necessariamente codificate. La codifica richiede l’utilizzo della chiave apposita. Sistema di crittografia a chiave segreta L'invio di messaggi segreti si è sempre basato sulla comune conoscenza, tra chi invia un messaggio e chi lo riceve, di un codice, una procedura, una chiave da utilizzare per crittografare i messaggi e decrittografarli. La crittografia è un modo per proteggere i dati trasformandoli in maniera tale che solo colui che è autorizzato può accedervi. I sistemi che utilizzano questo tipo di codifica sono detti “sistemi con crittografia a chiave segreta”. Le debolezze dei sistemi a chiave segreta sono da ricercarsi nella necessità di comunicare la chiave segreta e nell'uso ripetuto della chiave. Se la chiave viene smarrita o diventa pubblica non vi è più garanzia di segretezza; poiché la chiave deve essere scambiata e questo scambio non può che avvenire “in chiaro”, cioè senza crittografia, esiste almeno un momento in cui è possibile impossessarsi della chiave. Chi si impossessa della chiave è anche in grado di inviare falsi messaggi o alterare gli originali, senza che il destinatario si renda conto della sofisticazione. L'uso ripetuto della stessa chiave rappresenta un potenziale problema. Più volte la chiave viene utilizzata più è facile decodificarla, anche se con l'uso di elaboratori elettronici è però possibile utilizzare chiavi sufficientemente complesse, tali da rendere impossibile la decodifica; rimane tuttavia il problema della segretezza. Il sistema a chiave pubblica/privata Nel 1976 Whitfield Diffie e Martin Hellman pubblicarono su “Le Scienze” un sistema rivoluzionario per scambiare messaggi segreti senza scambiare preventivamente chiavi segrete. Il sistema, reso pratico con lo sviluppo di calcola tori sempre più veloci, è in grado di risolvere i due principali problemi legati all'invio di messaggi segreti: garantire la riservatezza e l'autenticità del messaggio. Con il sistema a chiave segreta, la riservatezza del messaggio si basa sul fatto che la chiave segreta è stata scambiata in un momento diverso da quello in cui avviene lo scambio del messaggio e si presume che la chiave non sia stata intercettata. L'autenticità del messaggio si basa sulla assunzione che solo il nostro corrispondente abbia la chiave. Ne consegue che se la chiave viene intercettata, non abbiamo più nè riservatezza nè autenticità; chiunque la intercetti è in grado di leggere i nostri messaggi e di falsificarli. Marco Pironti – La firma elettronica - 9 Invece di utilizzare la stessa chiave per codificare e decodificare un messaggio, il sistema proposto da Diffie e Hellman è basato sull'utilizzo di una coppia di chiavi, ognuna delle quali è in grado di effettuare una trasformazione del messaggio. In pratica ogni chiave è in grado di decodificare quello che l'altra ha codificato. Delle due chiavi, una viene tenuta segreta (la chiave privata), l'altra viene resa pubblica (la chiave pubblica). Un messaggio codificato con la chiave privata può essere decodificato solo con la corrispondente chiave pubblica così come un messaggio codificato con la chiave pubblica può essere decodificato solo con la corrispondente chiave privata. A differenza dei sistemi classici a chiave segreta, in cui la stessa chiave viene utilizzata sia per codificare che per decodificare i messaggi, un messaggio codificato con la chiave pubblica non può essere decodificato con la chiave pubblica, ma solo con quella privata. Rispetto al sistema classico a chiave segreta, il sistema a chiave pubblica/privata ha i seguenti vantaggi: non richiede una informazione segreta, per la codifica o la decodifica, che deve essere comunicata tra i due soggetti che si vogliono scambiare messaggi; evita di tenere una chiave segreta per ogni soggetto con il quale si vuole parlare (la chiave per spedire messaggi segreti ad A è sempre la stessa, sia che provengano da B, sia che provengano da C); ed è questo un vantaggio particolarmente importante per istituzioni che hanno a che fare con una vasta clientela in quanto garantisce l'autenticità del messaggio. Rispetto ai sistemi a chiave segreta, il sistema a chiave pubblica ha lo svantaggio di dover utilizzare chiavi molto lunghe e, conseguentemente di richiedere un processo di criptazione relativamente lento. Il sistema a chiave pubblica è un sistema di codifica in cui gli utenti non hanno alcun bisogno di condividere e rendere pubbliche le proprie chiavi segrete. In molti sistemi di crittografia (crittografia con chiave simmetrica) per la codifica viene utilizzata la stessa chiave utilizzata per la decodifica. Nei sistemi più intelligenti viene utilizzato un algoritmo di crittografia con chiave asimmetrica che è alla base dei sistemi a chiave pubblica. I sistemi a chiave pubblica hanno una caratteristica fondamentale: è praticamente impossibile ricavare la chiave di decodifica conoscendo solamente quella di codifica e l’algoritmo di cifratura. Ciascun utente autorizzato possiede due chiavi, una privata, nota solo a lui, ed una pubblica, nota a tutti coloro che vogliono comunicare con lui. La chiave pubblica di ogni utente viene pubblicata e resa disponibile. Un utente A che desideri inviare un pacchetto codificato all’utente B può utilizzare la chiave pubblica di B per codificare il messaggio che verrà decodificato da B utilizzando la propria chiave privata. Poiché solo B conosce la propria chiave privata, nessun altro utente è in grado di decifrare il messaggio. Riservatezza Utente A Utente B Messaggio/Documento Chiave Privata di B Chiave Privata di A Decodifica Codifica Chiave Pubblica di A Chiave Pubblica di B Marco Pironti – La firma elettronica - 10 Inoltre in alcuni sistemi a chiave pubblica è possibile codificare i dati utilizzando una qualsiasi delle due chiavi, mentre l’altra viene utilizzata per la decodifica. Tale metodo utilizza l’algoritmo a chiave pubblica RSA che consente di effettuare la codifica e l’autenticazione utilizzando la chiave pubblica e quella privata. Nel metodo precedente l’utente A codifica il proprio messaggio utilizzando la chiave pubblica dell’utente B; in tal caso però il messaggio potrebbe essere inviato da qualsiasi altro utente che conosca la chiave pubblica di B. Ciò significa che, mentre il messaggio è segreto e protetto, non è invece possibile autenticare il mittente. È possibile autenticare anche il mittente: l’utente A può infatti codificare il messaggio utilizzando la propria chiave privata, nota solo a lui. L’utente B può decodificare il messaggio ricevuto utilizzando la chiave pubblica di A, secondo lo schema seguente. Autenticazione Utente A Utente B Messaggio/Documento Chiave Privata di B Chiave Privata di A Codifica Decodifica Chiave Pubblica di A Chiave Pubblica di B In tal modo B ha la certezza che il messaggio è stato inviato da A ; tale metodo garantisce l’autenticazione di A ma riduce il livello di segretezza, poiché chiunque è in grado di decodificare il messaggio, utilizzando la chiave pubblica di A. Combinando i due metodi è possibile ottenere sia la privacy desiderata sia l’autenticazione univoca. Se A codifica il messaggio utilizzando la propria chiave privata, viene automaticamente autenticato; se però oltre ad utilizzare la propria chiave privata l’utente A ripete la codifica utilizzando la chiave pubblica di B, viene garantita anche la segretezza assoluta, poiché in questo caso soltanto B può decodificare il messaggio utilizzando la propria chiave privata. Quando riceve il messaggio, l’utente B lo decodifica con la propria chiave privata dopodiché decodifica nuovamente il messaggio ottenuto utilizzando la chiave pubblica di A, come di seguito indicato. Marco Pironti – La firma elettronica - 11 Riservatezza e Autenticazione Utente A Utente B Messaggio/Documento Chiave Privata di B Chiave Privata di A Codifica Codifica Decodifica Chiave Pubblica di A Decodifica Chiave Pubblica di B Algoritmo di hashing Si tratta di un algoritmo che partendo da un documento (o un oggetto) di qualsiasi dimensione lo elabora e produce un codice di dimensione fissa. Il metodo di elaborazione è tale che, se il documento (o l’oggetto) venisse cambiato in qualunque sua parte, questo codice cambierebbe. Per esemplificare immaginiamo un algoritmo che calcola il numero di lettere, il numero di parole, la frequenza di ogni lettera ecc., se cambiamo una qualsiasi lettera o parola anche il risultato cambia. Possiamo pensare al codice prodotto dall'algoritmo di hashing come ad una impronta del documento. Dall'impronta non è possibile risalire al documento, però se il documento cambia, anche solo in minima parte, allora cambia anche l'impronta. Nella realtà gli algoritmi di hashing (spezzettamento) sono più complessi di quanto esemplificato. Attualmente vengono utilizzati principalmente 3 algoritmi denominati MD2, MD4, MD5. Gli algoritmi sono stati ideati da Ron Rivest e producono codici di 128 bit. Una variante potenziata dell’algoritmo MD5 è l’algoritmo SHA-1, sviluppato nel 1993 presso il National Institute of Standards and Technology (NIST), che produce un codice a 160 bit ed è pertanto 232 volte più sicuro dell’MD5. L’Autorità di Certificazione (CA) L'utilizzo di un sistema di crittografia a chiave pubblica non garantisce l'identità del nostro interlocutore, non siamo certi che la persona o l'ente, al quale stiamo mandando dei messaggi, sia chi dice di essere. Siamo certi che ha la disponibilità di una certa chiave privata, alla quale corrisponde la chiave pubblica, ma non abbiamo certezza sulla sua identità. Il problema è particolarmente importante se, per esempio, stiamo per inviare delle informazioni strettamente riservate ad un particolare destinatario che dice di essere proprio la persona a cui vogliamo spedirle. Marco Pironti – La firma elettronica - 12 Usando la crittografia siamo certi che nessuno potrà carpire quei dati, ma non siamo certi dell'identità della persona con la quale siamo in contatto. Il problema può essere risolto fidandoci di una “terza parte” che garantisca e certifichi l'identità di chi usa una certa chiave pubblica, così come le autorità di pubblica sicurezza emettono documenti di identificazione quali il passaporto o la carta d'identità. Un’Autorità di Certificazione (Certification Authority, solitamente abbreviato con CA) è un’entità che riceve un insieme di informazioni, le verifica e le garantisce rispetto a una terza parte. La CA deve realizzare le seguenti cinque funzioni principali: − accettare le richieste di certificati − verificare l’identità delle persone o delle organizzazioni che richiedono un certificato − emettere i certificati − revocare i certificati − fornire informazioni sui certificati che ha emesso Le prime due funzioni vengono dette di registrazione mentre le altre di emissione e gestione dei certificati. Pertanto, accanto alla CA, esiste la Registration Authority (RA) che è l’ente responsabile degli aspetti organizzativi nella costruzione e gestione dei certificati. La RA è responsabile della identificazione e autenticazione dei proprietari dei certificati e delega la CA per la firma e l’emissione dei certificati stessi. Le informazioni certificate possono essere di vario tipo, ad esempio la possibilità di accedere ad un indirizzo di e-mail, nome e cognome, un numero di conto corrente, di carta di credito, un indirizzo IP o un sito WEB. Il certificato emesso dalla CA fornisce un mezzo per provare la propria identità in una transazione elettronica. I certificati sono basati su un sistema di crittografia a chiave pubblica. Un certificato emesso da una CA e firmato con la chiave privata della CA tipicamente contiene: − la chiave pubblica del possessore; − il nome del possessore, se il possessore è una persona fisica si tratterà di nome e cognome, data di nascita ecc., se invece è un server www sarà presente l'indirizzo www e il nome della compagnia proprietaria del server; − la data di scadenza del certificato; − il nome della CA che ha emesso il certificato; − la firma digitale della CA che ha emesso il certificato. Questo insieme di informazioni viene legato ad una Firma Digitale (Digital Signature) generata usando la propria chiave privata in un documento chiamato Richiesta di Certificazione (Certification Request). I campi dei dati inseriti nella richiesta di certificazione e le procedure utilizzate per verificarli costituiscono la “policy”. Dopo che le procedure contenute nella policy sono state eseguite, l'Autorità di Certificazione emette un documento: il certificato con la propria chiave pubblica assieme alla propria firma digitale. Chiunque può verificare la policy ed il certificato della CA che devono essere rese pubbliche dalla CA. La CA deve mantenere un pubblico registro dei certificati emessi e una Lista dei Certificati Revocati (Certification Revocation List - CRL) che devono essere disponibili come stabilito dalla policy. Esistono vari standard per i certificati, attualmente il più utilizzato è quello definito dallo standard internazionale CCITT X.509 v3. Solitamente vengono emessi quattro tipi di certificati: − Precaricati di una Autorità di Certificazione. Alcuni di questi certificati sono precaricati nei browser, cosicché questo possa riconoscere tutti i certificati emessi da queste CA. Quando qualcuno riceve una informazione firmata o criptata con un certificato deve solo verificare la firma della CA che ha emesso il certificato per fidarsi dei dati contenuti nel certificato; − Server di un sito (www, ftp, ecc. ). Questo certificato viene emesso per garantire che il server, che sta “mostrando” quel certificato, è il server di un particolare sito ( per esempio l'indirizzo www.alinet.it ); questo tipo di certificati è particolarmente utile per il commercio elettronico, il cliente vuole essere certo di rivolgersi ad un particolare server, il certificato lo garantisce in questo senso; − Personali, contenenti quindi informazioni quali nome, cognome, indirizzo, casella e-mail, ecc.; possono essere utilizzati per garantire la provenienza di una e-mail, per inviare un numero di carta di credito, ecc. Marco Pironti – La firma elettronica - 13 − Software, per garantire l'autenticità della provenienza del software, specialmente se questo viene distribuito in Rete. Pertanto, per certificare a tutti gli effetti l’identità dei titolari delle chiavi pubbliche e renderle disponibili in rete con gli accorgimenti necessari a garantire la validità e la sicurezza delle stesse, occorre fare uso, secondo il regolamento attuativo della legge 59/97, di apposite Autorità di Certificazione. Tale legge ha imposto ai certificatori privati particolari requisiti di affidabilità tra cui una capitalizzazione pari a quella richie sta per un’attività bancaria e la certificazione ISO9001. Le Autorità di Certificazione si devono avvalere a loro volta di apposite strutture chiamate Autorità di Registrazione preposte alla verifica fisica dell’identità dei titolari di chiavi pubbliche. In vari casi l’Autorità può certificare non solo l’identità della persona ma anche altri requisiti quali ad esempio i suoi poteri di rappresentanza od il possesso di determinati titoli. Esiste un’altra funzione importante delle Autorità di Certificazione che è quella di determinare con certezza la data di formazione del documento elettronico, ovvero di apposizione delle firma digitale. Questa specifica attività viene chiamata time-stamping. Come ottenere chiavi e certificati per la firma digitale Per ottenere un certificato occorrerà stabilire una prassi di comportamento che viene definita come la “PKIpolicy”. Descriviamo di seguito un esempio di passi da seguire in un ipotetico contesto aziendale: 1) definire un ente interno che si occupi di raccogliere i dati anagrafici di coloro che saranno autorizzati ad ottenere un certificato digitale. In aggiunta a tali informazioni occorrerà allegare fotocopia del documento di identità; sarà compito di tale ente tenere un archivio cartaceo relativo ai richiedenti la certificazione (Direzione del Personale); 2) l’Ente predisposto contatterà la CA consegnando a mano la documentazione relativa alle richieste dei certificati; 3) la CA elabora le richieste per rilasciare i certificati; 4) l’ente aziendale predisposto distribuisce i certificati manualmente; 5) i certificati rilasciati dalla CA, vengono memorizzati nel Directory Server (DS). I Browser più diffusi sul mercato contengono tutto l’occorrente per produrre la coppia di chiavi asimmetriche necessaria per la firma digitale e per la cifratura dei documenti, nonché una serie di certificati delle varie CA già operanti (per ora tutte CA americane). I certificati di altre CA possono essere importati manualmente nel browser. Il Directory Server Lo standard di directory X.509 fornisce uno standard per i sistemi di autenticazione che utilizzano schemi a chiave pubblica e in particolare definisce la struttura e il formato dei certificati. Lo standard X.509 fa parte della serie X.500 degli standard CCITT (Comitato Consultivo Internazionale di Telegrafia e Telefonia). Lo standard X.509 definisce le specifiche da utilizzare per offrire i servizi di autenticazione basati su certificati X.509, che vengono forniti da una Autorità di certificazione (CA Autorità di Certificazione). I certificati degli utenti vengono memorizzati su di una directory X.500 in modo centralizzato. Lo standard X.509 prevede appunto l’utilizzo di uno schema di codifica a chiave pubblica combinato con il sistema di firme digitali (algoritmo RSA). Inoltre il certificato può essere memorizzato su vari supporti quali il disco fisso del PC o un floppy disk. La chiave privata dell’utente deve essere protetta in modo particolare, e deve essere sempre disponibile all’utente stesso, sia per apporre firme digitali che per decodificare messaggi riservati a lui diretti. La tendenza è di memorizzarla, assieme al proprio certificato, in una smart card assegnata al proprietario. I messaggi firmati Dopo aver ottenuto il certificato dalla CA possiamo iniziare ad inviare messaggi in forma elettronica con tanto di firma elettronica allegata. I messaggi ricevuti avranno in alto a destra un’icona con la dicitura “signed/firmato”. Cliccando sull’icona si aprirà il nostro certificato che potrà essere verificato presso la CA che lo ha rilasciato. Marco Pironti – La firma elettronica - 14 Durante il processo di verifica viene contattata la CA che ha pubblicato sul server la lista dei certificati revocati (CRL) per controllare la validità o meno del certificato ricevuto in allegato. Un certificato valido non è una prova assoluta di identità; è possibile che nel corso del tempo la password di accesso alla chiave privata venga conosciuta da altri che potrebbero firmare al posto del titolare. Un modo per ridurre il rischio che un certificato non sia più valido è quello di inserirvi la data di emissione e quella di scadenza (Time stamping). Questo tuttavia non elimina il rischio che la chiave privata sia resa nota accidentalmente nello stesso momento in cui il certificato viene emesso (è preferibile quindi che la chiave privata non lasci mai la smart card, neanche durante la registrazione della chiave pubblica presso la Autorità di Registrazione della CA). Pertanto è necessario controllare l’elenco dei certificati revocati (CRL) che ogni CA mette a disposizione. Tale funzionalità è utilizzata anche nella gestione della posta elettronica. In quest’ambito i dati scambiati si avvalgono del “non ripudio”, che consiste nel dimostrare l’origine o la destinazione dei dati e impedisce a chi invia i dati di negare di averli inviati o a chi li riceve di negare di averli ricevuti. Marco Pironti – La firma elettronica - 15 Glossario AIPA (Autorità per l’Informatica nella Pubblica Amministrazione). CA (Certification Authority): Autorità di Certificazione. RA (Registration Authority): Autorità di Registrazione. CRL (Certificate Revocation List): lista dei certificati revocati. DES (Data Encryption Standard): tecnica di codifica dei dati; l’input dell’algoritmo di codifica DES è costituito da un blocco di testo di 64 bit e da una chiave di codifica a 56 bit; l’output è costituito da un testo cifrato di 64 bit. DS (Directory Server): Database a struttura gerarchica (ad albero). IDEA (International Data Encryption Algorithm): tecnologia più sicura del DES; codifica blocchi di dati di 64 bit utilizzando chiavi di 128 bit (utilizzo di una chiave più lunga). PKI (Public Key Infrastructure): sistema di criptazione a chiave pubblica. PKI-policy: regole per la creazione/rilascio della coppia di chiavi del sistema PKI. RC2/RC4 (Rivest Cipher 2 / Rivest Cipher 4): sono due algoritmi simmetrici di cifratura ideati da Ron Rivest (la R di RSA). RSA (Rivest, Shamir and Adleman): algoritmo di criptazione a chiave pubblica. TRIPLE-DES: tecnologia più sicura del DES, poiché gli algoritmi di codifica a 56 bit hanno dei punti deboli. Tale algoritmo esegue tre iterazioni di codifica e decodifica del testo, inoltre è possibile utilizzare la stessa chiave di 56 bit per tutte le iterazioni oppure utilizzare chiavi diverse per ciascuna iterazione. X.500: è una serie di protocolli definiti dalla ISO e dalla ITU per realizzare un sistema di Directory Service aperto multivendor. La famiglia di protocolli X.500 include DAP, DSP e DISP. Il protocollo X.500 è oggi alla sua terza versione. Hash (Hashing): è la trasformazione di una stringa di byte in un valore di grandezza fissa, di solito più piccolo, oppure in una chiave rappresentativa della stringa. MD5: è un algoritmo di codifica dei messaggi che cifra un messaggio di lunghezza arbitraria in 128 bits. MD5 è un algoritmo di crittografia a somma di controllo. SHA (Secure Hash Algorithm): è un algoritmo di codifica dei messaggi che cifra un messaggio di lunghezza arbitraria in 160 bits. SHA è un algoritmo di crittografia a somma di controllo. NIST (National Institute of Standards and Technology). X.509: è lo standard più diffuso per definire i certificati digitali. È largamente utlizzato anche al di fuori di Iso e ITU. Time -stamping (Marca temporale): è la modalità con cui non solo viene firmato digitalmente il contenuto di un messaggio ma anche la data della sua emissione e la data della sua eventuale scadenza. Lo stesso concetto viene applicato anche ai certificati digitali. CCITT (Comitato Consultivo Internazionale di Telegrafia e Telefonia). PDF (Portable Document Format): è una tecnologia sviluppata dalla Adobe ed è molto diffusa per al formattazione dei documenti in modo che possano essere visti e stampati su molteplici piattaforme usando un reader rilasciato gratuitamente dalla Adobe. Directory Service: è il servizio fornito da un Directory Server. API (Application Programming Interface): sono una serie di funzioni che possono venire usate dai programmi per interagire con un servizio o con una libreria. LDAP (Lightweight Directory Access Protocol): è il protocollo Internet che permette di accedere e ricercare informazioni su (numerosi) Directory Server. Giunto oggi alla sua terza versione, LDAP è ancora solo un protocollo di accesso e non un protocollo per realizzare Directory Server distribuiti. Shadow: modalità di configurazione di un Directory Server in cui non si può intervenire con aggiornamenti o modifiche di dati, ma può essere utilizzato solo in lettura dei dati da parte, ad esempio, delle applicazioni. OEMS: Open Enterprise Management System è il termine generico con cui si indicano le piattaforme di management a livello enterprise, basate su standard aperti quali SNMP. LDIF (LDAP Data Interchange Format): è un standard usato per rappresentare in formato testo i dati di un directory accessibile mediante LDAP. A partire da questo formato si possono facilmente caricare i dati in un altro directory LDAP, utilizzando utility di pubblico dominio. PKCS (Public-Key Cryptography System): è un set di protocolli standard informali, sviluppati dalla RSA per rendere possibile lo scambio di informazioni sicure su una rete o informazioni relative ai certificati X.509. Marco Pironti – La firma elettronica - 16 PKIX: uno standard di rappresentazione dei certificati all’interno delle SmartCard S/MIME (Secure Multipurpose Internet Mail Extensions): definisce un modo per rendere i messaggi di posta più sicuri aggiungendo sia la firma digitale sia la criptazione. PEM (Privacy-Enhanced Mail): uno standard Internet per lo scambio di messaggi di posta confidenziali JSSL: implementazione in Java di una libreria SSL CSSL: implementazione in C di una libreria SSL IPSEC: standard di sicurezza per proteggere la riservatezza e l’integrità dei pacchetti della rete IP. DAP (Directory Access Protocol): è un protocollo di X.500 usato per accedere ai directory services. PIN (Personal Identification Number): è un insieme di caratteri numerici o alfanumerici che viene consegnato ad una persona per essere usato come identificativo. PCMCIA (Personal Computer Memory Card International Association): indica lo standard di interfacciamento di schede per Personal Computer emesso dalla stessa associazione. Key Escrow: la possibilità di lasciare una chiave segreta in “deposito” presso una terza parte fidata. PC/SC: lo standard che viene proposto da Microsoft e altri partner per lo scambio di informazioni fra applicazioni e SmartCard; include una standard API di interazione fra applicazioni e SmartCard. DISP (Directory Information Shadowing Protocol): è un protocollo di X.500 usato per propagare da master a shadow le modifiche apportate sui dati del directory. Fault tolerance: la capacità di un sistema di reagire in modo prevedibile, in genere senza smettere di funzionare ma al più degradando le proprie prestazioni (Fail Soft), a guasti e malfunzionamenti di qualsiasi natura. Più è ampio lo spettro dei malfunzionamenti a cui il sistema sa reagire, maggiore è la sua fault tolerance Metadirectory: Una tecnologia che permette sia la costruzione e il mantenimento di un directory che contenga tutte le informazioni di rilevanza aziendale, sia l’allineamento di tali informazioni in tutti i database aziendali che dipendono da tali informazioni (fra le altre) per il loro corretto funzionamento. Master: modalità di configurazione di un Directory Server in cui si può intervenire con aggiornamenti o modifiche di dati. HTTPS: HTTP sopra SSL. S-HTTPS: è un altro protocollo che serve a trasmettere dati in modo sicuro su una rete. Dove SSL crea una connessione sicura tra client e server attraverso la quale può essere trasferita qualsiasi quantità di dati, il protocollo S-HTTPS invece è disegnato per trasmettere singoli messaggi in maniera sic ura. Questi due protocolli possono essere visti come complementari piuttosto che come tecnologie competitive. SSL (Secure Sockets Layer): è un protocollo sviluppato dalla Netcsape per trasmettere documenti privati attraverso Internet. SSL lavora usando una chiave privata per autenticare il server o il client e per scambiare una chiave DES con cui criptare i dati che verranno trasferiti attraverso la connessione SSL. Sia Netscape Navigator che Internet Explorer supportano il protocollo SSL, e molti siti Web lo usano per ricevere informazioni confidenziali dai propri utenti. Per convenzione le pagine Web che richiedono l’uso del protocollo SSL aprono una connessione con https: invece che con http:. SSO (Single Sign On): vedi SSSO. SSSO (Secure Single Sign On): è la sigla con cui viene identificata la sinergia di tre tipi di necessità. Dalla prospettiva dell’utente, SSSO si riferisce alla possibilità di usare un singolo identificativo personale e una singola password per accedere con un singolo controllo a tutte le risorse di cui uno ha i diritti di accesso. Dalla prospettiva dell’amministratore, SSSO permette di gestire tutti gli aspetti relativi alla sicurezza di una azienda tramite un unico punto centralizzato. Dalla prospettiva dell’azienda, SSSO fornisce la possibilità di proteggere la privacy e l’integrità delle transazioni così come fornisce la possibiltà di effettuare transazioni verificabili e non ripudiabili. Robustezza della cifratura: la robustezza della cifratura viene misurata attraverso lo sforzo necessario a rompere un sistema di cifrazione. Normalmente viene classificata attraverso la lunghezza delle chiavi usate per la codifica. La robustezza della cifratura è dipendente dall’algoritmo che viene usato. Per esempio, la lunghezza minima accettabile di una chiave per il DES è di 56 bits, mentre la lunghezza minima accettabile per una RSA è di 512 bits. Algoritmo simmetrico: è un algoritmo dove la stessa chiave può essere usata sia per la cifratura che per la decifratura. Algoritmo asimmetrico: è un algoritmo di criptazione che richiede due differenti chiavi per la cifratura e la decifratura. Queste chiavi sono comunemente chiamate chiavi pubbliche e private. Gli algoritmi asimmetrici sono più lenti di quelli simmetrici oltre al fatto che la velocità di cifratura può essere differente dalla velocità della decifratura. Generalmente gli algoritmi asimmetrici vengono usati sia per scambiare delle chiavi di Marco Pironti – La firma elettronica - 17 sessione simmetriche o per firmare digitalmente un messaggio. RSA, RPK, e ECC sono esempi di algoritmi asimmetrici Certificato Digitale : è una struttura che serve a legare l’identità di un ente o di una persona con la sua relativa chiave pubblica. Una CA emette e firma digitalmente un certificato digitale. Firma Digitale : è un metodo per verificare che un messaggio generato da un mittente non sia modificato durante il suo tragitto. La firma digitale viene tipicamente applicata cifrando un’impronta del messaggio con la chiave privata del firmatario. Non-ripudio: è la ragionevole sicurezza che un mittente non possa negare di essere l’autore di un messaggio che ha spedito. Il non-ripudio viene realizzato cifrando l’impronta del messaggio con la chiave privata dell’autore. La chiave pubblica dello stesso autore dovrà essere certificata da una CA riconosciuta. Chiave di sessione : è una chiave simmetrica temporanea che è valida solo per un breve periodo. Una chiave di sessione è tipicamente un numero casuale che può essere scelto da una delle due parti della conversazione, da tutte e due le parti o da una terza parte riconosciuta. Smart card: è una periferica non modificabile dove possono essere archiviate informazioni delicate. Tipicamente una smart-card contiene la/le chiave/i privata/e di qualcuno. Possono essere usate anche per cifrare o decifrare i dati all’interno della carta stessa. Questo da il notevole vantaggio di non esporre la chiave privata, neanche al proprietario stesso. Le smart-card sono protette da password, in questo modo una applicazione che faccia uso della chiave e delle funzioni di una smart card avrà bisogno del corretto inserimento da parte dell’utente della password per sbloccare la carta. FAQ : Frequently Asked Questions = Raccolta delle domande e, ovviamente, delle risposte poste più frequentemente su un certo argomento. Kerberos : servizio di autenticazione e autorizzazione all’accesso a risorse su rete, sviluppato all MIT e orientato ad ambiti tipicamente soggetti ad attacchi contro la sicurezza, quali gli ambienti degli studenti universitari. Attualmente sono utilizzate due versioni : le release 4 e 5, rilasciata come standard Internet (RFC 1510) ITU : International Telecommunication Union. Organismo situato a Ginevra, ex CCITT, per l’emissione di standard internazionali di telecomunicazioni (protocolli OSI), concordati fra i governi e le compagnie private RFC : Request For Comments = meccanismo di emissione degli standard Internet. Sono documenti il cui codice numerico identifica il particolare standard (protocolli, interfacce, applicazioni, ecc.). Marco Pironti – La firma elettronica - 18 Riferimenti minimali http://www.aipa.it/ http://www.salford.ac.uk/its024/Version.Web/Contents.htm http://www.baltimore.com/library/whitepapers/mn_vpn_white_paper.html http://www.rsa.com/rsalabs/pubs/PKCS/ http://www.baltimore.com/ http://www.isocor.com/ http://www.verisign.com http://developer.netscape.com/tech/security/security.html http://www.rsa.com/ http://www.microsoft.com/security/default.asp http://www.ncsa.com/ http://www.cert.org http://www.w3.org/Security/Faq/www-security-faq.html http://www.fortify.net/ http://www.epm.ornl.gov/~dunigan/security.html http://www.lns.cornell.edu/public/COMP/krb5/user-guide/userguide_toc.html http://www.sans.org/ http://www.itsec.gov.uk/ http://www.itu.org http://www.rfc-editor.org/rfc.html AIPA Info su DS White Paper su PKI-Plus (Baltimore) e IPSEC Riferimenti per standard PKCS Baltimore Isocor Verisign Netscape Developer Center RSA Microsoft Security NCSA - International Computer Security Association CERT : Carnegie Mellon University Coordination Center : Osservatorio sulla sicurezza FAQ sulla sicurezza Fortify : Prodotti ad alta sicurezza Ottimi link per la sicurezza User guide su Kerberos SANS - System Administration Network and Security ITSEC ITU RFC