Elettronica_Oggi_431 - page 23

23
- ELETTRONICA OGGI 431- OTTOBRE 2013
Coprocessore SHA-256
con master 1-Wire
Il coprocessore SHA-256 (si faccia
sempre riferimento alla Fig. 1) è
uno slave I²C controllato da un
processore host. Dalla porta I²C
dell’host il coprocessore appare
come una memoria di lettura/
scrittura da 256 byte con talune
regioni (elementi dati) assegnate
per scopi particolari.
Sicurezza: principi
di funzionamento
La sicurezza basata sull’algoritmo
SHA utilizza codici MAC
(Message Authentication Code
– codice di autenticazione
messaggi) elaborati in base
a dati liberamente accessibili
(open data) e un segreto. Per la
verifica dell’autenticità entrambe le componenti
interessate – l’host o il coprocessore e il
dispositivo di autenticazione 1-Wire – devono
conoscere il segreto, che non sarà mai rivelato.
Per garantire la massima sicurezza il segreto in
ogni dispositivo di autenticazione 1-Wire deve
essere unico. In questo modo non si hanno
ripercussioni sulla sicurezza dell’intero sistema
anche nel caso in cui il segreto di un singolo
dispositivo di autenticazione sia compromesso.
In prima istanza può apparire impossibile
soddisfare tali requisiti. Esiste, invece, una
soluzione molto semplice: elaborare il segreto
partendo da “ingredienti” noti e installarlo in un
ambiente di produzione affidabile e controllato.
Gli ingredienti sono i seguenti: un segreto
master, l’associazione dei dati (data binding), un
segreto parziale, l’ID della ROM del dispositivo
di autenticazione e il riempimento (padding)/
formattazione (“altri dati”). Il processo è riportato
in figura 2. Nonostante tali “ingredienti” a un certo
momento escano allo scoperto – per esempio in
un ambiente di produzione sicuro – il segreto che
viene calcolato non sarà mai rivelato e rimane
pertanto sempre celato.
Per ragioni di occupazione di spazio di memoria
e di sicurezza, i segreti unici di tutti i dispositivi di
autenticazione in un sistema non possono essere
immagazzinati nel coprocessore o nell’host. Il
coprocessore memorizza solamente il segreto
master e i dati associati in una sezione della
memoria protetta. Il segreto parziale è una
costante del sistema che può essere codificata
nel firmware del processore host e comunicato
in maniera accessibile. Dopo aver letto l’ID
della ROM di un dispositivo di autenticazione,
il coprocessore può elaborare il segreto unico
del dispositivo di autenticazione, come riportato
in figura 2. Ora che sia il coprocessore sia
il dispositivo di autenticazione condividono il
segreto unico di quest’ultimo, il sistema è pronto
per operare.
Autenticazione Challenge/Response
(Sfida/Risposta)
Lo scopo principale di un dispositivo di
autenticazione è fornire la prova che l’oggetto con
il quale è connesso è autentico. L’autenticazione
basata su chiave simmetrica (symmetric-key)
MAXIM INTEGRATED
MASTER/SLAVE
CONCETTI DI BASE
Fig. 1 – Implementazione di un sistema di autenticazione sicuro. Questo sistema
utilizza il coprocessore SHA-256 DS2465 ed il dispositivo di autenticazione
SHA-256 DS28E25, entrambi di Maxim Integrated
1...,13,14,15,16,17,18,19,20,21,22 24,25,26,27,28,29,30,31,32,33,...104
Powered by FlippingBook