24
- ELETTRONICA OGGI - 431 OTTOBRE 2013
COVERSTORY
utilizza una chiave segreta e i dati che devono
essere autenticati (messaggio) come ingresso
per elaborare un codice MAC. L’host esegue
la medesima elaborazione utilizzando il segreto
previsto e gli stessi dati del messaggio: a questo
punto confronta la propria versione del MAC con
quella ricevuta dal dispositivo di autenticazione.
Se entrambi i MAC sono identici, il dispositivo di
autenticazione fa correttamente parte del sistema.
In questo sistema di autenticazione SHA-256 il
messaggio è una combinazione del challenge
dell’host e degli elementi dati memorizzati nel
dispositivo di autenticazione. È di vitale importanza
che il challenge sia basato su dati casuali. Un
challenge che non cambia mai apre la strada
ai cosiddetti “replay attacks” che utilizzano un
MAC valido di tipo statico che viene registrato
e replicato invece di un MAC che è elaborato
in tempo reale. Il dispositivo di autenticazione
elabora un codice MAC a partire dai seguenti
elementi (Fig. 3): il challenge, il segreto, i dati
in memoria e i dati addizionali che insieme
costituiscono il messaggio. Se il dispositivo di
autenticazione è in grado di generare un MAC
valido per ogni challenge, è lecito supporre che
egli conosca il segreto e di conseguenza possa
essere considerato autentico.
Sicurezza dei dati (Scrittura autenticata)
Oltre a dimostrare l’autenticità, è senza dubbio
utile sapere che i dati memorizzati nel dispositivo
di autenticazione possono essere attendibili. Per
tale motivo alcune o tutte le EEPROM presenti in
un dispositivo di autenticazione sicura devono
possedere la protezione dell’autenticazione
(authentication protected). Quando questa
protezione è attivata, l’accesso per la scrittura
in memoria richiede che l’host esibisca una
prova della sua autenticità fornendo un MAC
di autenticazione dell’host al dispositivo di
autenticazione (Fig. 4).
Il codice MAC di autenticazione dell’host viene
elaborato a partire dai seguenti elementi: i nuovi
dati in memoria, i dati esistenti in memoria, il
segreto unico del dispositivo di autenticazione, l’ID
della ROMe gli altri dati che insieme costituiscono il
messaggio. Il dispositivo di autenticazione calcola
un MAC nel medesimo modo utilizzando il proprio
segreto. Un host autentico è in grado di ricreare
il segreto del dispositivo di autenticazione e può
generare un MAC per l’accesso in scrittura valido.
Nel momento in cui riceve il codice MAC dall’host,
il dispositivo di autenticazione
lo confronta con il proprio
risultato. I dati vengono scritti
nella EEPROM solo in caso di
corrispondenza di entrambi
i MAC. Le aree della memoria
utente che sono protette da
scrittura non possono essere
modificate anche se il MAC è
corretto.
Tabella 1 - Opzioni di protezione del dispositivo di autenticazione SHA-256 1-Wire*
RP
Protezione da lettura. Se attivata, i dati sono accessibili solamente per uso interno del
dispositivo, cioè come un segreto
WP
Protezione da scrittura. Se attivata, i dati non possono essere modificati
EM
Modalità di emulazione EPROM. Se attivata, i singoli bit possono essere modificati soltanto da
1 a 0
AP
Protezione dell’autenticazione. Se attivata, l’accesso in scrittura alla memoria richiede
l’autenticazione del master
*La configurazione predefinita del sistema non prevede protezioni: RP, WP, EM e AP non sono attivate. La protezione è cumulativa
Fig. 2 – Schema per la generazione di un segreto unico del dispositivo
di autenticazione
Fig. 3 – Schema per la generazione di un codice MAC per l’autenticazione
challenge/response