Protocollo di Otway-Rees
# Protocollo di Otway-Rees

L'Otway-Rees protocol è un protocollo di autenticazione per reti di calcolatori, studiato per l'uso in reti non sicure (ad esempio internet).

Esso permette ad entità diverse di comunicare tra loro dimostrando vicendevolmente la loro identità. Dovrebbe anche prevenire gli attacchi di intercettazione o replay ed accorgersi di eventuali modifiche.

Il protocollo può essere specificato come segue, dove Alice ($A$) si autentica a Bob ($B$) usando il server $S$; $M$ identifica la sessione e $N_{A}$ ed $N_{B}$ sono nonce (ovvero numeri usati una sola volta):

* $A\rightarrow B:M,A,B,\{N_{A},M,A,B\}_{K_{AS}}$
* $B\rightarrow S:M,A,B,\{N_{A},M,A,B\}_{K_{AS}},\{N_{B},M,A,B\}_{K_{BS}}$
* $S\rightarrow B:M,\{N_{A},K_{AB}\}_{K_{AS}},\{N_{B},K_{AB}\}_{K_{BS}}$
* $B\rightarrow A:M,\{N_{A},K_{AB}\}_{K_{AS}}$

## Attacco al protocollo

Un problema di questo protocollo è che un intruso malevolo può insinuarsi tra $A$ e $B$ per sostituire le chiavi. Ecco come: dopo che $A$ e $B$ hanno concluso i primi tre messaggi del protocollo, ossia dopo che $S$ ha generato la chiave di sessione tra le due entità e l'ha inviata a $B$, quest'ultimo ha ricevuto la chiave $K_{AB}$; l'intruso intercetta e blocca il quarto messaggio, ossia blocca il messaggio tra $B$ e $A$, e reinvia il secondo messaggio al server $S$, che allora genera una nuova chiave $K'_{AB}$, inviandola poi a $B$.

L'intruso intercetta e blocca anche questo messaggio ed invia ad $A$ il messaggio che avrebbe dovuto ricevere da $B$ (ossia l'intruso si finge $B$). Così $A$ ha finalmente ricevuto il quarto ed ultimo messaggio per l'autenticazione, ma con $K'_{AB}$ invece di $K_{AB}$. Questo genera un DoS in quanto il protocollo fallisce ed è costretto a ripetersi.

Un altro problema è dato dal fatto che il server dice a $B$ che $A$ ha usato il nonce, ma $B$ non si accorge se è una replica di un vecchio messaggio.

