Scambio ed autenticazione chiave crittografici classici
Supponga il desiderio del Bob e della Alice per comunicare. Se ripartiscono una chiave comune, possono usare un cryptosystem classico. Ma come accosentono su una chiave comune? Se Alice trasmette uno a Bob, vigilia il eavesdropper lo vedrà e potrà leggere loro il traffico. Per evitare questo problema legante, i protocolli classici contano sui terzi di fiducia, Cathy. Alice e Cathy ripartiscono una chiave segreta (differente) segreta della parte di Cathy e del Bob e di chiave a. L'obiettivo è di fornire una chiave segreta che Alice e Bob ripartiscono. Il seguente protocollo semplice fornisce un punto di partenza.
Bob ora decifra il messaggio ed usa il ksession per comunicare con Alice. Questo protocollo particolare è la base per molti altri protocolli specializzati. Tuttavia, Bob non sa a chi sta comunicando. Supponga che Alice trasmette a Bob un messaggio (quale "il deposito $500 nel cliente della banca del Dan oggi") cifrato sotto il ksession. Se la vigilia registra il secondo messaggio nello scambio qui sopra ed il messaggio cifrasse sotto il ksession, può trasmettere a Bob il messaggio {il}kBob di ksession è seguito dal messaggio cifrato sotto il ksession. Bob non conoscerà chi sta trasmettendolo. Evitando i problemi come questo ripeti l'attacco aggiunge la complessità considerevole. I protocolli chiave di scambio aggiungono tipicamente, ad un minimo, una certa specie dell'autenticazione e la difesa contro ripete l'attacco. Uno dei la più note tali protocolli è il protocollo di Needham-Schroeder.
In questo protocollo, rand1 e rand2 sono due numeri generati a caso, salvo che non possono ripetere fra gli scambi differenti di protocollo. Questi numeri sono denominati nonces. (se Alice comincia il protocollo anew, il suo rand1 nel primo scambio non sarà stato usato prima là.) La base per la sicurezza di questo protocollo è che sia Alice che Bob si fidano di Cathy. Quando Bob riceve il terzo messaggio e lo decifra, vede che il messaggio chiama Alice. Poiché potrebbe decifrare il messaggio, il messaggio è stato cifrato usando una chiave che si ripartisce soltanto con Cathy. Poiché si fida di Cathy per non ripartire il kBob chiave con chiunque altro, il messaggio deve essere cifrato da Cathy. Ciò significa che Cathy vouching che ha generato il ksession in modo da Bob potrebbe comunicare con Alice. Così Bob ritenge Cathy ha trasmesso il messaggio a Alice e che Alice lo ha spedito lui. Tuttavia, se la vigilia registrasse il messaggio, potrebbe ripeterla a Bob. In quanto il caso, vigilia non avrebbe conosciuto la chiave di sessione, in modo da Bob precisano per verificare che il suo destinatario sconosciuto la conosce. Trasmette un messaggio casuale cifrato dal ksession a Alice. Se la vigilia intercetta il messaggio, non conoscerà che cosa rinviare; se trasmette qualche cosa, le probabilità di lei che seleziona a caso un messaggio che è corretto è molto basso e Bob rileveranno tentato per ripetere. Ma se Alice effettivamente sta iniziando la comunicazione, quando ottiene il messaggio può decifrarla (perché conosce il ksession), applicare una certa funzione fissa ai dati casuali (qui, decrement da 1) e cifrare il risultato e restituirlo a Bob. Allora Bob sarà sicuro che sta comunicando con Alice. Alice deve convincersi che sta comunicando con Bob, anche. Quando riceve il secondo messaggio da Cathy, lo decifra e controlla che Alice, Bob e rand1 siano presenti. Ciò gli dice che Cathy abbia trasmesso il secondo messaggio (perché è stato cifrato con il kAlice, che soltanto lei e Cathy conoscono) e che era una risposta al primo messaggio (perché rand1 è sia nei primi che secondi messaggi). Ottiene la chiave di sessione e spedisce il resto a Bob. Sa che soltanto Bob ha ksession, perché soltanto lei e Bob possono leggere i messaggi che contengono quella chiave. Così quando riceve i messaggi cifrati con quella chiave, sarà sicura che sta comunicando con Bob. Il protocollo di Needham-Schroeder suppone che tutte le chiavi crittografiche sono sicure. In pratica, le chiavi di sessione saranno generate pseudorandomly. Secondo la procedura usata, può essere possibile predire tali chiavi. Denning e Sacco hanno supposto che la vigilia potrebbe ottenere una chiave di sessione e subverted il protocollo. Supponga che il protocollo qui sopra ha avvenuto. Allora:
Ora Bob pensa che stia comunicando con Alice. Realmente sta comunicando con vigilia. Denning e Sacco suggeriscono usando i timestamps per permettere a Bob di rilevare questo per ripetere. Applicando il loro metodo al protocollo di Needham-Schroeder rende
dove la T è un timestamp. Quando Bob ottiene il messaggio a punto 3, lo rifiuta se il timestamp è troppo vecchio (troppo vecchio che è determinato a partire dal sistema in uso). Questa modifica richiede gli orologi sincronizzati. Denning e Sacco notano che un principale con un orologio lento è vulnerabile ad un attacco di ripetizione. Un partito con un orologio veloce è inoltre vulnerabile e semplicemente ripristinare l'orologio non elimina la vulnerabilità. Il protocollo di Otway-Rees corregge questi problemi evitando l'uso dei timestamps.
Lo scopo del numero intero numerico è associare tutti i messaggi con uno scambio particolare. Di nuovo, consideri gli elementi del protocollo. Quando Alice riceve il messaggio di quarto da Bob, controlla che il numerico accosenta con il numerico nel primo messaggio che ha trasmesso a Bob. In caso affermativo, sa che questo fa parte dello scambio. Inoltre ritenge Cathy ha generato la chiave di sessione perché soltanto Cathy ed Alice conoscono il kAlice ed il numero casuale rand1 accosente con che cosa Alice ha messo nella parte cifrata del messaggio. Unendo questi fattori, Alice ora è convinta che sta comunicando con Bob. Quando Bob riceve il messaggio da Cathy, determina che il numerico corrisponda a quello ch'ha ricevuto da Alice e trasmesso a Cathy. Decifra che parte del messaggio cifrato con la sua chiave e controlla che rand2 sia che cosa ha trasmesso. Allora sa che Cathy ha trasmesso la risposta e che si applica allo scambio con Alice. Poiché nessun timestamps è usato, la sincronizzazione degli orologi del sistema è irrilevante. Ora supponga che la vigilia ha acquistato una vecchia chiave di sessione ed il messaggio in 3. Spedisce quel messaggio a Alice. Della Alice scarti immediatamente esso se non ha scambi chiave continui con Bob. Se e numerico non abbina, rifiuta il messaggio della vigilia. L'unica vigilia di senso potrebbe impersonate Bob è se acquistasse il ksession per uno scambio continuo, registrasse il terzo messaggio e resent la parte relativa a Alice prima che Bob potrebbe fare così. In quanto il caso, tuttavia, vigilia potrebbe ascoltare semplicemente il traffico ed i nessun ripetono sia implicato. ciò è un articolo aggiunto da Bill Kuriko
|
|||||
|