DIGITAL
SICUREZZA
51
- ELETTRONICA OGGI 445 - MAGGIO 2015
Microcontrollori sicuri
L’uso di microcontrollori con funzionalità aggiuntive per
la sicurezza, combinato con gli algoritmi di cifratura soft-
ware, può offrire una soluzione eccellente quando il dis-
positivo embedded non è fisicamente accessibile da par-
te dei pirati informatici. Un esempio potrebbe essere il
termostato di un’abitazione. Una fonte di preoccupazione
potrebbe derivare dal fatto che qualcuno possa acced-
ere da remoto per entrare nella rete interna. Ma probabil-
mente non ci si preoccupa dell’eventualità che qualcuno
si introduca in un’abitazione per sondare il microntrol-
lore del termostato allo scopo di estrarre la chiave AES.
D’altro canto, se si dispone di un contatore intelligente
collocato all’esterno di un’abitazione, questo potrebbe
essere un obiettivo più interessante per i pirati informa-
tici che vogliono condurre un attacco fisico e rubare le
chiavi. Dato che il flusso di entrate per un fornitore di
energia elettrica costituisce un patrimonio importan-
te da proteggere, quest’ultimo è propenso a spendere
denaro per dotare i propri contatori di funzionalità per la
sicurezza a prova di manomissione.
La combinazione di un microcontrollore con un elemento
per la sicurezza può aggiungere a un sistema embedded
un grado di sicurezza pari a quello delle applicazioni
bancarie (Fig. 2). Un elemento per la sicurezza è un IC
a prova di manomissione che fornisce locazioni di me-
moria sicure per le chiavi e per i certificati, e include
spesso algoritmi RSA ed ECC accelerati dall’hardware
per un’autenticazione più veloce.
Mentre la cifratura AES accelerata dall’hardware è an-
cora gestita dal microcontrollore, più veloce, l’elemento
per la sicurezza migliora l’integrità del dispositivo e si
occupa autonomamente di stabilire una connessione si-
cura e di proteggere le chiavi AES. NXP Semiconductors
ha annunciato di recente i microcontrollori LPC18Sxx e
LPC43Sxx – estensioni delle proprie serie già esistenti
LPC1800 e LPC4300 – che aggiungono funzionalità har-
dware per la protezione del codice e dei dati (Fig. 3). Le
famiglie LPC18Sxx e LPC43Sxx includono numerose car-
atteristiche per la connettività di alta fascia come Ether-
net, USB ad alta velocità 2X o SDIO (importanti per una
connessione più rapida ai moduli WiFi). Esistono versio-
ni con supporto a connessioni verso display LCD grafici.
Gran parte dei microcontrollori LPC di NXP offrono una
funzione di protezione dalla lettura del codice (CRP) che
può essere usata per proteggere il codice dello sviluppa-
tore. Le funzionalità per la sicurezza aggiunte includono
un acceleratore hardware AES-128, un generatore fisico
di numeri casuali e due locazioni da 128 bit in una me-
moria programmabile una sola volta per la memorizzazi-
one delle chiavi AES.
Le due locazioni da 128 bit programmabili una sola volta
(OTP), allocate per le chiavi, aiutano a proteggere il siste-
ma contro tentativi di estrazione delle chiavi da remoto
per mezzo di un attacco condotto via software. Una volta
che le chiavi sono scritte (in un formato cifrato) all’inter-
no della memoria OTP, non sono più accessibili via soft-
ware o con tecnica JTAG boundary scan. Solo il blocco
hardware AES interno può accedere alle chiavi.
I microcontrollori LPC18Sxx e LPC43Sxx includono sia le
versioni con Flash (interna da 512 kB fino a 1MB), sia le
versioni senza Flash. Questi ultimi dispositivi, a seguito
del ripristino del sistema, devono avviarsi da locazioni
di memoria esterna – ad esempio una Flash QSPI esterna
– e successivamente funzionano usando la RAM inter-
na, di grandi dimensioni. Per evitare che il codice ven-
Fig. 4 – Diagramma a blocchi di una porta sicura per IoT