Crittografia - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Crittografia

Description:

Title: La sicurezza dei sistemi distribuiti Author: Alessandra Fascioli Last modified by: fascal Created Date: 6/17/1995 11:31:02 PM Document presentation format – PowerPoint PPT presentation

Number of Views:77
Avg rating:3.0/5.0
Slides: 26
Provided by: Alessan61
Category:

less

Transcript and Presenter's Notes

Title: Crittografia


1
Crittografia
DESTINATARIO
MITTENTE
messaggio
messaggio
chiave-1
chiave-2
crittografia
decrittografia
messaggio cifrato
2
Crittografia a chiave privata
3
Crittoanalisi
  • Ciphertext only
  • algoritmo di crittografia
  • testo cifrato
  • Known plaintext
  • algoritmo di crittografia
  • testo cifrato
  • una o più coppie testo in chiaro / testo cifrato
  • Chosen plaintext
  • algoritmo di crittografia
  • testo cifrato
  • messaggi in chiaro scelti dal criptoanalista con
    i corrispondenti messaggi cifrati

4
Lunghezza delle chiavi private
  • se lalgoritmo è ben progettato lunico attacco
    possibile è quello esaustivo
  • numero medio di tentativi richiesti 2N-1 con
    Nlunghezza della chiave
  • tempo medio di attacco

lungh. chiave tempo richiesto tempo
richiesto (bit) a 1 decr/?s a 106 decr/?s 56
255 ?s 1142 anni 10 ore 128 2127 ?s
1024 anni 1018 anni 168 2167 ?s 1036
anni 1030 anni
5
Cipher Block Chaining Mode
  • Produce un blocco di testo cifrato per ogni
    blocco di testo in chiaro in input
  • per evitare regolarità si fa in modo che il
    blocco cifrato di ogni blocco dati dipenda da
    tutto il testo in chiaro precedente

6
DES (Data Encryption Standard)
  • sviluppato alla IBM, adottato dal NIST nel 1977
    come standard per le applicazioni governative e
    commerciali
  • chiave da 56 bit, blocco dati da 64 bit
  • efficiente in hardware (implementato in VLSI)
  • molto studiato, non sono note debolezze
  • violato nel 1998 con attacco esaustivo su
    macchina special-purpose in meno di 3 giorni

7
DES schema complessivo
8
DES schema dell'i-ma iterazione
9
Triplo DES
  • standardizzato per le applicazioni finanziarie
    nel 1985, dal 1999 incorporato nello standard DES
  • tre esecuzioni del DES secondo uno schema EDE
  • stessa resistenza del DES alla crittoanalisi
  • tre chiavi da 56 bit equivalenti a una da 168 bit

10
AES (Advanced Encryption Standard)
  • Call for proposal emessa dal NIST nel 1997
  • specifiche
  • sicurezza almeno pari a quella del Triplo DES
  • maggiore efficienza
  • blocco dati da 128 bit, chiavi da 128/192/256 bit
  • criteri di valutazione
  • sicurezza, efficienza, uso di risorse,
    adattabilità hw e sw, flessibilità
  • standard finale pubblicato nel 2001

11
Altri algoritmi a chiave privata
  • IDEA (International Data Encryption Algorithm)
  • sviluppato nel 1991
  • blocco dati da 64 bit, chiave da 128 bit
  • operazioni XOR, addizione e moltiplicazione a 16
    bit
  • efficiente in software
  • finora appare altamente resistente alla
    crittoanalisi
  • usato nel PGP e in molti prodotti commerciali
  • RC5
  • sviluppato da Ron Rivest (RC Rons code)
  • algoritmo proprietario di RSA Data Security Inc.
  • adatto sia per hw che per sw
  • veloce (word oriented)
  • parametrizzabile (dimensione word, numero di
    round, lunghezza chiave)
  • adatto a smart card e dispositivi con ridotta
    memoria

12
Distribuzione delle chiavi
  • OOB (Out Of Band)
  • key distribution center

13
Crittografia a chiave pubblica
  • proposta nel 1976 da Diffie e Hellman
  • usata per distribuire chiavi segrete e per la
    firma digitale

Bob
Alice
14
Requirements
  • deve essere computazionalmente semplice per un
    utente B generare una coppia di chiavi KUb, KRb
  • deve essere computazionalmente semplice per un
    mittente A ottenere il testo cifrato C EKUb(M)
  • deve essere computazionalmente semplice per il
    ricevente B recuperare il testo originale M
    DKRb(C)
  • deve essere computazionalmente complesso per un
    impostore determinare KRb da KUb
  • deve essere computazionalmente complesso per un
    impostore ricavare M da KUb e C
  • le chiavi KUb e KRb devono avere funzionalità
    reciproche

15
RSA (Rivest - Shamir - Adleman)
  • sviluppato nel 1977 da Rivest, Shamir, Adleman
  • algoritmo a chiave pubblica più diffuso

Encryption Plaintext Mltn Ciphertext
C Memodn
Decryption Ciphertext C Plaintext M
Cdmodn
Key Generation Select p,
q p and q both prime Calculate n p x
q Calculate ?(n) (p-1)(q-1) Select integer
e gcd(?(n),e)1 1ltelt ?(n) Calculate d de
mod?(n) 1 Public key KU e, n Private
key KR d, n
16
RSA un esempio
  • Si scelgono due numeri primi p7, q17
  • si calcola n pq 7 x 17 119
  • si calcola ?(n) (p-1)(q-1) 6x16 96
  • si sceglie e lt ?(n), relativamente primo con
    ?(n), e 5
  • si determina d tale che de mod 96 1 e dlt96,
    d 77 (infatti 77x5 385 96x41)

17
Sicurezza di RSA
  • Possibile attacco esaustivo nella scelta di e e
    d trade-off tra sicurezza e prestazioni
  • Crittoanalisi fattorizzazione di n
  • 1977 sfida degli inventori su un testo criptato
    con una chiave pubblica n di 129 cifre decimali
    (circa 428 bit)
  • 1994 sfida vinta su Internet con 1600
    calcolatori in otto mesi di lavoro
  • attualmente chiavi di 1024 bit sono considerate
    sufficientemente sicure

18
Diffie - Hellman
  • primo algoritmo a chiave pubblica proposto (76)
  • tecnica per lo scambio di chiavi segrete
  • si basa sulla difficoltà di calcolare il log
    discreto

Global Public Elements q prime
number ? ?ltq and ? primitive root of q
User A Key Generation Select private
XA XAltq Calculate public YA YA ?XAmodq
User B Key Generation Select private
XB XBltq Calculate public YB YB ?XBmodq
Generation of secret key by A K
(YB)XAmodq Generation of secret key by B K
(YA)XBmodq
19
Diffie - Hellman un esempio
  • Si scelgono un numero primo q71 e una sua radice
    primitiva ?7
  • A sceglie la chiave privata XA5 e calcola la
    chiave pubblica YA 75mod71 51
  • B sceglie la chiave privata XB12 e calcola la
    chiave pubblica YB 712mod71 4
  • A e B si scambiano le chiavi pubbliche
  • A calcola la chiave segreta K 45mod71 30
  • B calcola la chiave segreta K 5112mod71 30

20
Diffie - Hellman aspetti critici
  • non protegge da attacchi di tipo replay
  • possibile attacco man-in-the-middle

YM
YA
A
M
B
YM
YB
  • richiede pre-autenticazione

YA, firma A(YA)
A
B
YB, firma B(YB)
21
Uso della crittografia a chiave pubblica per
l'autenticazione
Bob
Alice
22
Firma digitale
  • Garantisce che
  • il messaggio è autentico
  • il messaggio è integro
  • il mittente non può disconoscere il messaggio

23
Funzione di hash
  • Produce un'impronta del messaggio
  • Deve possedere le seguenti proprietà
  • accetta un messaggio di dimensione variabile
  • produce un digest di lunghezza fissa
  • è veloce da calcolare
  • è difficilmente invertibile
  • è estremamente improbabile che messaggi diversi
    generino lo stesso digest

24
Esempi di funzioni di hash
  • MD5 (Message Digest 5)
  • sviluppata da Ron Rivest
  • digest da 128 bit
  • era la più usata, ora non più considerata sicura
  • SHA (Secure Hash Algorithm)
  • sviluppata dal NIST nel 1993, SHA-1 revised
    version nel 1995
  • digest da 160 bit
  • ogni bit del digest è funzione di tutto l'input

25
Uso della crittografia a chiave pubblica per la
distribuzione di chiavi segrete
  • Bob vuole comunicare con Alice in forma riservata
  • Bob prepara il messaggio
  • lo cripta usando la crittografia a chiave privata
    con una chiave di sessione
  • cripta la chiave di sessione usando la
    crittografia a chiave pubblica con la chiave
    pubblica di Alice
  • acclude al messaggio la chiave di sessione
    criptata e invia il messaggio
Write a Comment
User Comments (0)
About PowerShow.com