Mac
I codici per l’autenticazione dei messaggi permettono di
- identificare ed autenticare il mittente
- controllare l’integrità del messaggio
Entrambe le parti devono condividere un segreto che Adv non conosce
Costruzione
Tre algoritmi PPT
- $k \leftarrow Gen(1^n)$ con $|k| \geq n$ che genera le chiavi
- $t \leftarrow Mac_k (m)$ con $m \in \{0,1\}^*$ dove $t$ è il tag associato ad $m$
- $b:= Vrfy_k(m,t)$ con $b \in \{0,1\}$
tali che $\forall$ $n,$ $\forall$ $k$ dato in output da $Gen(1^n)$ e $\forall$ $m \in \{0,1\}^*$ $Vrfy_k(m,Mac_k(m)) = 1$
Sicurezza
Nessun Adv PPT dovrebbe essere in grado di generare un tag su qualsiasi messaggio nuovo, che non sia stato autenticato ed inviato in precedenza da una delle parti
Rottura di un Mac
Adv dà in output $(m,t)$ tale che:
- $t$ è un tag valido su $m$, cioè $Vrfy(m,t) =1$ → $m$ viene accettato come valido
- Adv non ha ottenuto $t$ per $m$ con una precedente richiesta all’oracolo → ha generato $t$ da solo
Esperimento $Mac\text{-} forge_{A,\Pi} (n)$

Non falsificabile