informatica n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Informatica PowerPoint Presentation
Download Presentation
Informatica

Loading in 2 Seconds...

play fullscreen
1 / 24

Informatica - PowerPoint PPT Presentation


  • 154 Views
  • Uploaded on

Informatica. Lezione 10 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico: 2006-2007. La sicurezza nelle reti. Comunicazione sicura: voluta per le transazioni commerciali in Internet, informazione sulla sicurezza nazionale, messaggi personali, ecc.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Informatica' - jola


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
informatica

Informatica

Lezione 10

Psicologia dello sviluppo e dell'educazione

(laureamagistrale)

Anno accademico: 2006-2007

la sicurezza nelle reti
La sicurezza nelle reti
  • Comunicazione sicura: voluta per le transazioni commerciali in Internet, informazione sulla sicurezza nazionale, messaggi personali, ecc.
    • Problema: Internet è una rete pubblica, e informazione può essere intercettata
  • Attacchi a una rete privata possono arrivare dall’esterno
  • Firewall: un dispositivo posizionato tra una rete private (di un’organizzazione) e l’esterno
    • Controlla e regola l’entrata e l’uscita di pacchetti, per evitare che i pacchetti di malintenzionati penetrino la rete
la sicurezza nelle reti1
La sicurezza nelle reti
  • Proprietà necessario per la sicurezza in rete:
    • Riservatezza: solo il mittente e il destinatario dovrebbero essere in grado di comprendere il contenuto del messaggio trasmesso
      • Un messaggio può essere intercettato: quindi dovrebbe essere cifrato (dal mittente) e decifrato (dal destinatario)
      • Il messaggio cifrato dovrebbe essere incomprensibili a chi non possiede il codice di decifratura
      • Esistono altri tipi di riservatezza: per esempio, forse il mittente vuole mantenere segreto non solo il contenuto del messaggio mandato al destinatario, ma anche il fatto che sta comunicando con il destinatario
la sicurezza nelle reti2
La sicurezza nelle reti
  • Altre proprietà necessario per la sicurezza in rete:
    • Autenticazione: il mittente e il destinatario devono essere reciprocamente sicuri della loro identità
    • Integrità del messaggio: il contenuto di una comunicazione non deve subire alterazioni durane la trasmissione
      • Alterazioni: per esempio, a manipolazioni
    • Disponibilità e controllo dell’accesso: i servizi forniti devono essere disponibile e accessibile agli utenti autorizzati in rete
      • Attacchi di negazione del servizio (denial-of-service): rende inutilizzabili reti, host e altre componenti di Internet da parte degli utenti
la sicurezza nelle reti3
La sicurezza nelle reti
  • Durante la comunicazione, un malintenzionato potrebbe:
    • Ascoltare i messaggi in transito (per esempio, per rubare un password)
    • Rimuovere e aggiungere messaggi o modificare il loro contenuto

Dati

Messaggi

Dati

A: mittente (sicuro)

B: destinatario (sicuro)

Malintenzionato

crittografia
Crittografia
  • Crittografia: consente il mittente di mascherare i dati in modo che un malintenzionato non possa comprendere il contenuto
  • Il destinatario deve essere in grado di recuperare i dati originali
  • Testo in chiaro (plaintext o cleartext): il messaggio originario scritto dal mittente
  • Messaggio cifrato (ciphertext): la versione cifrata del messaggio
crittografia1
Crittografia
  • In molti casi te tecniche di crittografia sono nel dominio pubblico
    • Occorrono delle informazioni segrete che impediscono ai malintenzionati di decifrare i messaggi: le chiavi
    • Il mittente ha una chiave KA usata per generare la versione cifrata KA(m) del messaggio m in testo in chiaro
    • Il destinatario ha una chiave KB e un algoritmo di decifratura che restituisce il messaggio m in testo in chiaro: cioè calcola KB(KA(m))=m
crittografia2
Crittografia

Chiave KA

Chiave KB

Testo in chiaro

Testo in chiaro

Testo cifrato

A: mittente (sicuro)

B: destinatario (sicuro)

Malintenzionato

chiave simmetrica
Chiave simmetrica
  • Le chiavi di A (mittente) e B (destinatario) sono identiche e segrete
  • Per esempio: un antico algoritmo - cifrario di Cesare
    • Considerare un messaggio di testo
    • Sostituire ogni carattere del testo con un altro sfasato (rispetto al primo) i un numero k di posti nell’alfabeto
    • Per esempio: se k=3, “a” diventa “d”, “c” diventa “f”, ecc.
    • Ciclico: a volta terminato l’alfabeto si ricomincia con la lettera “a”
    • La chiave: il valore k
    • “Brad, I love you. Angelina” (con k=3) diventa “eudg, l oryh brx. dqjholqd” (nell’alfabeto inglese)
chiave simmetrica1
Chiave simmetrica
  • Per esempio: cifrario monoalfabetico
    • Considerare un messaggio di testo
    • Sostituire ogni carattere del testo con un altro, ma la sostituzione avviene seguendo uno schema arbitrario
    • Però una data lettere è sostituita con sempre la stessa lettera
    • Per esempio:
      • “Brad, I love you. Angelina” diventa “bomv, s gktc wky.mjzcgsjm”
chiave simmetrica2
Chiave simmetrica
  • Nel caso di cifratura monoalfabetica: un attacco può essere basato sulla ricerca tra tutti le combinazioni possibili (un attacco di “forza bruta”)
    • Alcune lettere e gruppi di lettere (in italiano, “che”, “zione” e “mente”) ricorrono con maggiore frequenza: rende più facile un attacco al codice
  • Cifratura polialfabetica: usa moltiplici sostituzioni monoalfabetiche
    • Per esempio, la sequenza C1 C2 C2 C1 C2
    • Cifrare la prima lettera del messaggio usando C1, la seconda lettera con C2, …, la quinta con C2
    • Poi ripetiamo la sequenza: la sesta lettera è cifrata con C1, la settima con C2, ecc.
chiave pubblica
Chiave pubblica
  • Svantaggio delle chiavi simmetriche: le due parti coinvolte nella comunicazione devono sapere la chiave
    • Ma come? Comunicato fisicamente? Tramite un canale sicuro? Non è sempre possibile
  • Una soluzione: chiave pubblica
    • Proposta da Diffie e Hellman nel 1976
    • Il sistema usa due chiavi:
      • Una chiave pubblica (KB+): disponibile a chiunque, anche alle malintenzionati
      • Una chiave privata (KB-): conosciuta solo del destinatario della comunicazione
chiave pubblica1
Chiave pubblica
  • L’uso delle due chiavi:
    • Il mittente usa un dato algoritmo di cifratura e la chiave pubblica KB+ per generare un messaggio criptato (scritto KB+(m) )
    • Il destinatario usa un algoritmo di decifratura e la chiave privata KB- per decodificare il messaggio criptato (cioè il destinatario calcola KB- (KB+(m)) )
    • Esistono metodi per scegliere chiavi pubbliche e private in modo tale che KB- (KB+(m)) = m
chiave pubblica2
Chiave pubblica

Chiave pubblica KB+

Chiave privata KB-

Messaggio in chiaro, m

Messaggio in chiaro, m

Testo cifrato KB+(m)

A: algoritmo di cifratura

B: algoritmo di decifratura

KB-(KB+(m))

chiave pubblica rsa
Chiave pubblica: RSA
  • Il sistema a chiave pubblica RSA è il più noto dei sistemi a chiave pubblica
    • RSA: nome derivato dalle iniziali degli inventori Rivest, Shamir e Adleman
    • Due punti fondamentali:
      • La scelta della chiave pubblica e di quella privata
      • Gli algoritmi di cifratura e di decifratura
    • Basato sui numeri primi: i numeri naturali che sono divisibili solo per 1 e per se stessi: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, …
    • Fattori di un numero naturale z: qualsiasi insieme di interi che, moltiplicati insieme, danno z
    • Notazione: y mod z sta per il resto della divisione y/z
chiave pubblica rsa1
Chiave pubblica: RSA
  • Per ottenere la chiave pubblica e la chiave privata, il destinatario deve:
    • Scegliere due numeri primi, p e q (tanto più grande sarà il loro valore tanto più difficile risulterà violare RSA: raccomandato che il prodotto di p e q sia dell’ordine di 768 o 1024 bit)
    • Calcolare n = pq e z = (p-1)(q-1)
    • Scegliere un numero e (encryption), tale che e<n, diverso da 1 e che non ha fattori in comune con z
    • Scegliere un numero d (decryption), tale che ed – 1 sia un multiplo di z (in altri termini, tale che il resto della divisione ed/z sia 1)
    • La chiave pubblica KB+ è la coppia (n, e), la chiave privata KB- è la coppia (n, d)
chiave pubblica rsa2
Chiave pubblica: RSA
  • Angelina vuole inviare a Brad un numero m, tale che m<n
  • Per codificarlo, Angelina usa la chiave pubblica (n, e) per calcolare il messaggio cifrato c, dove

c = me mod n

  • Per decifrare il messaggio ricevuto, Brad usa la chiave privata per calcolare

m = cd mod n

  • La scelta di e e d garantisce che

(me mod n)d mod n = m

chiave pubblica rsa3
Chiave pubblica: RSA
  • Per esempio:
    • Brad sceglie p=5 e q=7
    • Poi n = pq = 35, e z = (p-1)(q-1) = 24
    • Brad sceglie e = 5 (5 e 24 non hanno fattori in comuni)
    • Brad sceglie d = 29 ((5x29) – 1 è divisibili per 24)
    • Brad rende pubblica la chiave (35, 5), e mantiene segreta la chiave (35, 29)
    • Angelina vuole inviare le lettere “l”, “o”, “v”, “e” a Brad
    • Interpretiamo le lettere come numeri fra 1 e 26 (i numeri corrispondono alle posizioni delle lettere nel alfabeto inglese)
chiave pubblica rsa4
Chiave pubblica: RSA
  • Esempio:
    • Codifica di Angelina (chiave pubblica n=35, e=5)
    • Decodifica di Brad (chiave privata n=35, d=29)
chiave pubblica rsa5
Chiave pubblica: RSA
  • Perché funziona RSA?
    • (me mod n)d mod n = (me)d mod n = med mod n
    • Teorema: se p e q sono primi, e n = pq, allora:

xy mod n = xy mod (p-1)(q-1)

    • Applicando questo risultato, possiamo scrivere:

med mod n = m(ed mod (p-1)(q-1)) mod n

    • Ricordiamo che e e d sono tali che ed – 1 sia divisibile per (p-1)(q-1)
    • Quindi il resto di (p-1)(q-1)/ed è 1
    • Così ed mod (p-1)(q-1) = 1
    • Dato che m<n, abbiamo:

med mod n = m1 mod n = m

    • Poi abbiamo il risultato che volevamo:

med mod n = m

chiave pubblica rsa6
Chiave pubblica: RSA
  • L’efficacia di RSA:
    • Non si conoscono algoritmi veloci per la fattorizzazione dei numeri interi
    • Quindi, anche con la conoscenza del numero n, è computazionalmente proibitivo calcolare i fattori p e q
    • Se un algoritmo veloce per la fattorizzazione sia sviluppato, il sistema RSA non sarebbe più sicuro
integrit
Integrità
  • Firme digitale: usati come le firme nel mondo “non-informatico”
    • Per esempio, per indicare il titolare di un documento, o di dichiarare di approvare del contenuto di un documento
    • Devono essere verificabile, non falsificabile e non ripudiabile
    • Usiamo la crittografia a chiave pubblica
  • Esempio:
    • Brad vuole firmale digitalmente un documento m che manda a Angelina
    • Calcola KB-(m) usando la sua chiave privata
    • Angelina riceve KB-(m) da Brad, e vuole convincere un giudice che il documento è stato firmato da Brad
    • Angelina applica la chiave pubblica di Brad per calcolare KB+(KB-(m)) = m, che corrisponde al documento originale
integrit1
Integrità

Chiave pubblica KB+

Chiave privata KB-

Messaggio in chiaro, m

Messaggio in chiaro, m

Testo cifrato KB-(m)

B: algoritmo di cifratura

B: algoritmo di decifratura

KB+(KB-(m))

integrit2
Integrità
  • Il giudice conclude che Brad ha firmato il documento, perché:
    • La firma digitale è stato realizzato che la chiave privata KB-
    • Solo Brad è in possesso della sua chiave privata
  • Si nota che per un altro messaggio m’m, poi KB+(KB-(m’)) m