Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory...

61
Concetti di base

Transcript of Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory...

Page 1: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Concetti di base

Page 2: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Autenticazione

• Le persone accedono ad un sistema di calcolo, ad unaapplicazione, sulla base della loro identità.

• Il processo di verifica della identità basata sulladisponibilità di credenziali, si chiama autenticazione.

• La verifica dell’identità può avvenire in base a ciò cheegli:

è (impronte digitali,impronta vocale,modello retinico o altri identificatori biometrici)ha (es. tesserino identificativo, token, certificato digitale..)conosce (password,PIN,..)

Page 3: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Autorizzazione

• Il processo che regola l’accesso alle risorse da parte diun utente prende il nome di autorizzazione.

• Metodi di autorizzazione:DAC (Discretional Access Control)MAC(Mandatory Access Control)RBAC (Role Based Access Control)

Page 4: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Identity Management & Directories

Page 5: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Identity : insieme di attributi che rappresentano unapersona in un sistema informatico.

• Identity repository : sistema atto a contenere erendere accessibili le identità. Fornisce strumenti, API eprotocolli per creare e cercare le identità, modificarne gliattributi, costruire relazioni e definire regole per ilcontrollo di queste operazioni.

• Directory. Molti sistemi possono contenere digitalidentity (es.: database) e renderle in qualche modoaccessibiliChiamiamo directory i sistemi il cui accesso è definitodal protocollo di comunicazione DAP(Direct AccessProtocol)

Page 6: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Directory Service e data-base:differenze

• Una directory riceve quasi esclusivamente accessi inlettura. La scrittura è limitata agli amministratori disistema ed ai proprietari delle singole informazioni.

• Non sono adatte per memorizzare informazioniaggiornate di frequente.

• Modello client-server. Il client chiama una funzione(API) che genera l’invio di un messaggio al server.

• Il formato ed il contenuto dei messaggi scambiati deverispettare un protocollo concordato (LDAP)

Page 7: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• LDAP (Lightweight Directory Access Protocol)

• Protocollo standard per l’interrogazione e la modifica deiservizi di directory.

• Versione semplificata dello standard DAP( Directory AccessProtocol) che deriva da X.500 (CCITT).

• DSML (Directory Service Mark-up Language).Consente ai programmatori XML di accedere alle directoryLDAP

Page 8: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

LDAP directory

• Contiene oggetti che hanno un tipo, sono identificati dauna chiave unica (distinguished name) e sono corredatidi attributi.

• I tipi di oggetti più comuni sono• User• Group• Organizational Unit• Organization• Domain Context

Page 9: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Alcuni oggetti hanno il ruolo di contenitori, comeDomain Context (DC), la Organizational Unit (OU) e laOrganization (O), gli altri hanno un Common Name (CN).

• La directory ha un'organizzazione ad albero, cheviene costruita mediante gli oggetti “contenitori”. Il nomedi questi oggetti compone il distinguished name, ovverola chiave di accesso, di tutti gli oggetti della directory, adesempio:

CN=Paolo Rossi, OU=Vendite, O=Fiat

Page 10: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• In una rete complessa ed articolata il DS contienetutte le informazioni relative all’infrastruttura ed allesue risorse, agli enti che ne fanno parte, alpersonale ed agli utenti.

• Per le persone interessa rendere disponibiliinformazioni anagrafiche, e-mail, num.tel e fax,etc..e la loro appartenenza ad unità operative checompongono l’organizzazione.

Page 11: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

I numeri del DSA– 4266 personale docente e ricercatore

– 6531 docenti a contratto

– 3856 personale tecnico amministrativo

– 8264 dottorandi

– 5603 ospiti e collaboratori

– 316395 studenti

– 12111 gruppi sicurezza profilazione applicativa

– 1719 unità organizzative e sedi servizioIdentity Federation @ UniBO - Bologna, 09/10/2009

SLIDE 11

Page 12: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Università

studenti personale

Facolta’ X Facolta’Y

CDL 001 CDL 002 computer

Esame..

Esame..

PINxxxxxxxx

yyy

Computer: YYYDislocazione:…

Accesso: gruppo Astrolab

Nome: Mario RossiUsername: mario.rossiPassword: xxxxxxxxxE-mai:[email protected]: ..Gruppi: Astrolab, Gr1,Gr2

Page 13: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Rafforzamento della sicurezza

• Un directory service centralizza il servizio diautenticazione ed autorizzazione degli utenti.

• Consente un accesso alle risorse basato sul ruoloindividuale e sulle autorizzazioni ad esso concesse.

• Tutti i sistemi e le applicazioni che si basano suldirectory service usufruiscono del medesimo sistema diautenticazione, trasparente alla localizzazione degliutenti,che lavorano su client all’interno della rete o cheutilizzano un’applicazione Web via Internet

Page 14: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Il directory service può essere utilizzato anche daapplicazioni esterne utilizzate da personale definitoall’interno della directory.

• L’applicazione esterna interroga la directory ( webservices) per sapere se le credenziali inserite dall’utentesono contenute nella directory.

• Esempio: biblioteca comunale che vuole fare accedere alprestito gli studenti dell’Università

Page 15: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Active Directory: MicrosoftLotus Notes: IBMi-Planet: SunDirectory service: Nowell………

Page 16: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Single Sign On (SSO)

Page 17: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• SSO: autenticazione unica da parte dell’utente.

• Successive richieste di autenticazione per accesso avarie risorse vengono risolte dal software in modoinvisibile all’utente.

Page 18: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Architettura

Approccio centralizzato.

• Data base globale e centralizzato di tutti gli utenti ecentralizzazione allo stesso modo della politica disicurezza.

• Questo approccio è destinato principalmente ai servizidipendenti tutti dalla stessa entità, ad esempioall’interno di una azienda.

Page 19: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

CAS (Central Authentication Service)

• E’ un protocollo single sign-on per il web. L’obiettivo èconsentire ad un utente di accedere a più applicazionifornendo le proprie credenziali una sola volta.

• Consente alle applicazioni web di autenticare gli utentisenza avere accesso alle loro credenziali (es.password)

Page 20: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Tre componenti:

- Client web browser

- Applicazione che richiede l’autenticazione

- CAS server

• Il client vuole accedere ad una applicazione che richiedel’autenticazione.

• L’applicazione ridirige la richiesta verso il CASspecificando di quale servizio si tratta.

• Il CAS convalida l’autenticità del cliente e la suaautorizzazione.

• Se il controllo ha successo CAS invia un “security ticket”all’applicazione e ridirige il client all’applicazione.

Page 21: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• L’applicazione valida il ticket contattando CAS su uncanale sicuro fornendo l’identificatore del servizio ed ilticket.

• CAS fornisce all’applicazione informazioni “trusted” circail fatto che l’utente è stato autenticato con successo.

Page 22: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

KERBEROS

Page 23: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 24: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Kerberos• Sviluppato presso il MIT è un servizio di autenticazione

che utilizza la crittografia a chiave simmetrica ed uncentro di distribuzione delle chiavi (KDC).

• KDC, consiste di due parti separate logicamente:l'Authentication Server (AS) e il Ticket GrantingServer (TGS).

• L'AS mantiene un database delle chiavi segrete; ognientità sulla rete — che sia un client o un server —condivide la chiave segreta solo con l'AS. Serve perverificare gli utenti durante il login.

• Il TGS emette ticket da usare per convincere i serverche offrono i servizi che il loro possessore è realmentechi dichiara di essere.

Page 25: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 26: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

1. Alice inserisce il suo username A sul client che lo inoltra ad AS. AS controllase A è nel suo database e tramite la sua password genera Ka (chiave segretadi Alice).

2. AS risponde con un messaggio al client, cifrato con Ka, che contiene:

- Ks chiave di sessione client-TGS- Ktgs(A,Ks) ticket per il TGS che contiene l'identificativo di Alice e lachiave di sessione client-TGS, cifrato utilizzando la chiave segreta diTGS(contenuta in AS)

3. Il client di Alice chiede ad Alice la password solo dopo aver ricevuto ilmessaggio da AS. La password viene usata per generare Ka. Tramite Ka ilmessaggio può essere decriptato. Alice ottiene la chiave Ks ed il ticket.Ktgs(A,Ks).

4. Il client cancella la password di Alice, assicurandosi così che sia rimastaall’interno della workstation per pochi millisecondi.

Page 27: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 28: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 29: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 30: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 31: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 32: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito
Page 33: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Approccio federativo (Federated Identitymanagement)

• Le organizzazioni oggi necessitano di gestire l’accessonon solo ai propri sistemi, ma anche a sistemi cheappartengono a partner esterni o ad altre divisioni dellastessa organizzazione.

• Esempi:- Outsourcer service provider- Supply chain partners- Cross selling services- Co-developing products ….

Page 34: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Necessità di visitare molti siti ogni volta con undiverso login.

•Ampia gamma di differenti modalità di autenticazioneed autorizzazione, non integrabili tra loro con semplicità

• Necessità di far gestire ad altri le informazioni sullaidentità degli utenti: aumentano i rischi sulla sicurezza(accessi non autorizzati, furto di identità).

• Obbligo per i partners di modificare i loro sistemiogni volta c’e’ una modifica sull’identità degli utenti.

• I diritti di accesso di chi non e’ più utentedell’organizzazione possono rimanere attivi su certi sitidei partners.

Page 35: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

.

• E’ resa difficile la semplice costruzione di applicazioni chepossono condividere ed aggregare servizi offerti da sitidiversi.

• Obiettivo:Una persona appartenente ad una organizzazioneautenticandosi presso il sistema in uso nell’organizzazionepuò accedere direttamente ad altri siti senza doversiriautenticare

Page 36: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Esempio.• Fabrikam: azienda che produce biciclette.• Applicazione web che consente ai dealers autorizzati diacquistare biciclette all’ingrosso•200 dealers , ciascuno con diverse persone che possonoutilizzare l’applicazione.

Obiettivo

Costruire un sistema di logon sicuro per Fabricam

Page 37: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Soluzione

Data base centralizzato che contiene username epassword di tutte le persone che possono accedere.

Problemi- Fabrikam prima di rilasciare un user account devegarantirsi che chi chiede appartenga ad un dealerautorizzato.- Costo della gestione centralizzata degli user accounts.- Deprovisioning.- Possibilità che le passwords vengano attaccate.- Difficoltà di uso di strumenti più sofisticati (es. smartcards) dato il numero dei dealers. Molteplicità di soluzioni difficile da gestire.

Page 38: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

-Trusting tra Fabrikam ed i dealers autorizzati a mandare leliste di impiegati.

Perché costruire un nuovo data base quando ne esiste giàuno per ciascun dealer in base al quale gli impiegati sonoautenticati localmente?

Page 39: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Ogni organizzazione appartenente alla federazioneautentica i propri utenti utilizzando il proprio sistema diautenticazione.

• L’accesso ad uno dei sistemi federati permetteautomaticamente l’accesso a tutti gli altri.

• Ogni partner deve fidarsi che gli altri partnergarantiscono per i loro utenti“L’utente è OK; consentigli di utilizzare questaapplicazione”.

Page 40: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• L’accesso al server avviene senza dover specificare lapropria identità.

• Le password rimangono locali al sistema di autenticazionecui fa capo l’utente.

• Trust tra i due siti. I due siti devono essere sicuri che gliattributi vengano rilasciati al sito deciso.

• Sistema di distribuzione di certificati digitali ed unmeccanismo per associare questi certificati ai siti origine edestinazione.

Page 41: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Scambio di messaggi utilizzando un protocollo standard(SAML- Security Assertion Markup Language)

SAML Assertions:

1. Authentication statements2. Attribute statements3. Authorization statements

Page 42: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Active Directory FederationServices (ADFS)

• Un impiegato A di un dealer B tenta di accedere al sito diFabricam.

• Il web agent si accorge che la richiesta non èaccompagnata da un ticket (ADFS cookie)

• Il web agent ridirige il browser di A al servizio difederazione di Fabrikam senza che l’applicazione vedala richiesta .

• Il servizio di federazione di Fabrikam ridirige il browser alservizio di federazione del dealer con un identificatore diFabrikam in modo che il dealer sappia quale servizio èrichiesto.

Page 43: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Il servizio di federazione del dealer chiede il logon di Ae definisce un token usando SAML che descrive A.

• Il dealer ha un sistema di Identity Provisioning pertutti i suoi impiegati (appartenenza dell’impiegato aldealer, il suo ruolo attuale se ha diritto o no di farel’acquisto)

• Fabrikam legge il contenuto del token ed invia un tokenSAML che contiene l’insieme delle richieste chel’applicazione vede.

• Questo token è un cookie che consente ad A di usarel’applicazione fino al termine di validità del token (default10 ore)

Page 44: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Liberty Alliance

• 150 organizzazioni: AOL,Intel, novell,Oracle, Sun,….

• ID-FF 1.0 e 2.0

• OASIS( Organization for the Advancement ofStructured Information Standards) : SAML standard

Page 45: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Shibboleth• Shibboleth è Internet2 Middleware Initiative project that

has created an architecture and open-sourceimplementation for federated identity-basedauthentication and authorization infrastructure based onSecurity Assertion Markup Language (SAML). Federatedidentity allows for information about users in one securitydomain to be provided to other organizations in afederation. This allows for cross-domain single sign-onand removes the need for content providers to maintainuser names and passwords. Identity providers (IdPs)supply user information, while service providers (SPs)consume this information and get access to securecontent

Page 46: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Sicurezza delle reti

• I problemi di sicurezza nelle reti si possono suddividere in quattro categorieinterconnesse tra loro:

-segretezza (o confidenzialità)-autenticazione-non ripudio-controllo dell’integrità

• La segretezza si occupa di proteggere le informazioni da utenti non autorizzati.

• L’autenticazione si occupa di stabilire l’identità del soggetto con cui stiamocomunicando.

• Il non ripudio rende impossibile rinnegare l’invio di un messaggio realmenteavvenuto.

• Il controllo di integrità garantisce che il messaggio ricevuto sia realmente quelloinviato

Page 47: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Metodo di decifratura,D

Testo inchiaro, P

Chiave di cifratura, K

Testo cifrato, C = Ek(P)

intruso

Metodo di cifratura,E

Chiave di decifratura, K

L’intruso passivoascolta soltanto

L’intruso attivo puòalterare i messaggi

DK(EK(P))=P

Page 48: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• La mancanza di segretezza dell’algoritmo è fondamentale.

• Cercare di tenere segreto l’algoritmo (sicurezza peroccultamento) comporta un lavoro complesso perinventare, testare ed installarne un nuovo quando quellovecchio si pensa che sia stato compromesso.

• La chiave può invece essere cambiata tutte le volte che sivuole.

• Pubblicizzando l’algoritmo il crittografo ottienegratuitamente la consulenza di molte persone desiderosedi forzare il sistema.

• Il modello base di un sistema crittografico è dato da unalgoritmo generale stabile e noto pubblicamente e dauna chiave che può essere facilmente modificata.

Page 49: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Algoritmi a chiave simmetrica

Due tipi: cifrari a flusso (operano su sequenze di testo in chiaro bit a bit o

byte a byte); cifrari di blocco (operano su blocchi di testo in chiaro o cifrato,

generalmente di 64 bit)

Testo cifrato

Testo in chiaro

Chiave segreta

algoritmo

Chiave segreta

algoritmo

Testo in chiaro

Page 50: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

DES (Data Encryption Standard)

Adottato come standard federale nel ’77.

il DES cifra blocchi di dati di 64-bit impiegando una chiavedi lunghezza pari a 56 bit;

per ogni blocco lo schema di funzionamento prevede 16cicli (“round”); ogni round e’ semplicemente la combinazionedelle due operazioni di permutazione e sostituzione a partiredalla chiave;

DES utilizza operazioni logiche ed aritmetiche facilmenteimplementabili in hardware

Page 51: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Algoritmi a chiave pubblica

la chiave di cifratura differisce dalla chiave di decifratura; la conoscenza della chiave pubblica non permette di risalire alla

chiave privata (almeno in una ragionevole quantità di tempo)

Testo in chiaroTesto in chiaroalgoritmo

Chiave pubblicadel destinatario

Chiave privata deldestinatario

ciphertextalgoritmo

cifratura

Chiave segreta delmittente

Chiave pubblicadel mittente

autenticazione

Page 52: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

RSA

• Rivest, Shamir, Adleman. MIT (1978)

• Richiede chiavi di almeno 1024 bit per poter offrire una buonasicurezza. Complessità dell’algoritmo e quindi lentezza.

• Molto utilizzato

• Si basa su alcuni principi della teoria dei numeri.

Page 53: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Riservatezza delle comunicazionitramite sistemi ibridi

Ora come puo’ essere utilizzata la crittografia a chiave pubblica perfornire autenticazione dell’origine dei dati ed integrita’?

Al testo cifrato e’ allegatal’intestazione

Si decifra il fileutilizzando lach. simmetrica

Processo di cifratura Processo di decifratura

Si cifra il file utlizzandouna chiave simmetrica

Si cifra la ch. simmetricaper i destinatari utilizzando

La loro ch. pubblica

+

Si estrae la ch.simmetrica

utilizzando la ch.privata

Si recuperaIl file originale

Page 54: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Digital Signature

la firma e’ autentica; la firma non e’ falsificabile; il documento firmato non e’ alterabile; la firma non e’ riusabile in un altro documento; la firma non puo’ essere disconosciuta.

Page 55: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Riservatezza delle comunicazioni consistemi a chiave pubblica

Alice reperisce la chiave pubblica di Bob da undatabase; Alice cifra il messaggio utilizzando la chiave pubblicadi Bob e lo invia a Bob; Bob decifra il messaggio utilizzando la propria chiaveprivata

AliceBob

Directory delle chiavi pubbliche

Chiave Pubblica di Bob Chiave Privata di Bob

Testo cifratodecifraturacifratrura

Page 56: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Firma digitale

Firma di documenti con crittografia a chiave pubblica:

• Gli algoritmi a chiave pubblica non forniscono buoneprestazioni nella firma di documenti di dimensioni elevate.• Per migliorare le prestazioni la firma digitale vienerealizzata utilizzando le cosiddette funzioni hashunidirezionali

Acifratura

Bdecifr.

Testo cifrato

Chiave privatadi A

C h i a v epubblica di A

Testo in chiaro Testo in chiaro

Page 57: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Funzioni hash

Le funzioni hash unidirezionali rappresentano blocchicostitutivi fondamentali nella crittografia a chiave pubblica• one-way function (funzioni unidirezionali): dato x e’ facilecalcolare f(x), data f(x) e’ computazionalmente infattibilerisalire a x, cioè calcolare f-1 da una completa descrizione dif• hash function: data una stringa di ingresso di lunghezzavariabile tale stringa viene trasformata in un output dilunghezza fissa (hash value) (md2, md5, SHA-1)

Proprieta’: funzioni unidirezionali; prive di collisioni

Page 58: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

messaggio funzione hash digest del messaggiolungo di dimensione fissa

Esempi:

• Algoritmo MD5 di Ron Rivest (RFC1321)produce un digest di 128 bit

• Algoritmo SHA-1 (Secure Hash Algorithm)Standard federale USAProduce un digest di 160 bit

Page 59: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

Digital Signature

Firma digitale ottenuta combinando crittografia a chiave pubblica efunzioni hash unidirezionali:

Si confronta l’hash verificatoCon l’hash fresco

Processo di firma Processo di verifica

Si calcola l’hash

Si firma l’hashcon la chiave privata

Testo firmato

Si calcola unhash fresco

Si verifica l’hash originalecon la chiave pubblica

=

Page 60: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

SSL (Secure Socket Layer)

Page 61: Concetti di base - unibo.itlia.disi.unibo.it/Courses/ModApplRetiCalc0910... · Active Directory Federation Services (ADFS) •Un impiegato A di un dealer B tenta di accedere al sito

• Il server invia al client il suo certificato (contenente la suachiave pubblica). Il certificato e’ stato cifrato con la chiaveprivata di una CA.

• Il client usa la chiave pubblica della CA per decifrare ilmessaggio e ricavare la chiave pubblica del server(autenticazione del server).

• Il client genera una chiave simmetrica di sessione, la cifracon la chiave pubblica del server e la invia al server.

• Il server ricava la chiave simmetrica utilizzando la suachiave privata.

• Avviene lo scambio di messaggi cifrati con la chiavesimmetrica