Due soluzioni hardware per la protezione di progetti IoT

Nei progetti embedded la protezione è stata sinora trattata come un aspetto di serie B, soprattutto per ragioni di tempi e costi. Ma hanno contribuito anche altri fattori poiché, ad esempio, la protezione embedded è diventata sinonimo di complessità. Ha anche giocato un ruolo il mancato apprezzamento per l'importanza della protezione e dei metodi per implementarla efficacemente.

Tutto ciò ha condotto a relegare la protezione in secondo piano, con gli ingegneri che "mettono pezze" qui e là con le patch software. I nodi embedded iperconnessi dell'Internet delle cose (IoT), tuttavia, stanno determinando un mutamento, poiché necessitano di una progettazione che tenga conto di requisiti di protezione molto stringenti in grado di far fronte alle vulnerabilità dei termostati, dei frigoriferi, delle TVCC e degli impianti HVAC connessi.

Nel mezzo del crocevia tecnologico in cui ci troviamo, è opportuno rendersi conto che la progettazione per la IoT rappresenta un mondo completamente diverso, dove non esistono soluzioni adatte a tutte le circostanze. Persino nell'ambito delle minacce alla sicurezza esistono vulnerabilità fisiche come tentativi di tampering, clonazione di progetti, furto di IP e contraffazione di prodotti. Sul versante degli attacchi cibernetici si verificano iniezioni di codice malware, attacchi DDoS (interruzione distribuita del servizio) e attacchi del canale laterale.

Tuttavia, diversamente dai progetti per i server e i gateway che possono contare su consistenti investimenti per la protezione, i nodi IoT come ad esempio i termostati connessi, necessitano di meccanismi di protezione più semplici, in grado di affrontare sia le vulnerabilità fisiche sia quelle comunicative senza sforare i limiti imposti dai costi e dai consumi energetici.

I microcontroller SAM L11 di Microchip Technology rappresentano una soluzione di protezione di facile implementazione ed economicamente sostenibile adatta a contrastare gli attacchi fisici e in remoto per i nodi IoT a basso consumo. Il processore ha una frequenza di clock di 32 MHz ed è supportato da una configurazione della memoria che arriva a 64 kB di flash e a 16 kB di SRAM. La tecnologia su scheda picoPower garantisce bassi consumi energetici sia nella modalità attiva sia in quella di sospensione.

Per il provisioning delle chiavi, SAM L11 consente il ricorso a servizi di terze parti sviluppati da produttori di software come Trustonic, Secure Thingz e Segger Microcontroller Systems. Ciò semplifica molto le cose, estrapolando i dettagli di livello più basso delle funzionalità di protezione dei microcontroller con un'interfaccia GUI modulare.

Figura 1: Il provisioning delle chiavi di Trustonic estrapola i dettagli di livello più basso delle funzioni di protezione del SAM L11. (Immagine per gentile concessione di Trustonic Inc.)

A voi restano solo da scegliere le caratteristiche di protezione idonee all'applicazione. SAM L11, tuttavia, offre anche la possibilità di sviluppare il proprio software per il provisioning e di implementarlo tramite gli esempi di codice e le demo prodotto.

In secondo luogo, abbinando la protezione a livello di chip con TrustZone per Armv8-M di Arm SAM L11 intende isolare il firmware protetto dal codice software che non è di vitale importanza per la protezione. L'ambiente TrustZone, ad esempio, è in grado di proteggere lo stack del protocollo di comunicazione di un termostato da un attacco malevolo che potrebbe consentire a un hacker di prendere controllo di una casa domotica.

Confronto tra soluzioni con Secure Element e moduli di sicurezza hardware (HSM)

E se vi servisse un framework di protezione più solido per i vostri progetti IoT, in grado di individuare un collegamento debole in tutto l'ecosistema dell'applicazione IoT?

A questo punto vale la pena menzionare il fatto che la protezione basata sull'hardware dei sistemi embedded consiste in genere in chip che integrano un modulo di protezione hardware (HSM). Tale modulo si comporta come una sentinella indipendente addetta al monitoraggio dello scambio di dati. Si tratta di un sottosistema isolato dotato di un chip che esegue algoritmi di protezione avanzati che rappresentano uno scudo nei confronti dei attacchi malevoli.

Ma se gli approcci basati sugli HSM alleggeriscono la CPU principale dalle attività connesse alla protezione, possono rappresentare una soluzione costosa e scomoda, che richiede un database sofisticato per l'archiviazione e la distribuzione delle chiavi di sicurezza.

Sicuramente le soluzioni basate su moduli HSM sono più accessibili alle grandi imprese con volumi di produzione importanti. Ma cosa si può fare per progetti IoT destinati a volumi di produzione più piccoli che necessitano comunque di una solida protezione contro gli hacker e i ladri i identità digitale che prendono di mira le risorse digitali nei microcontroller? È qui che ci viene in aiuto il Secure Element.

Il Secure Element è un costoso microcontroller che comunica con il MCU o MPU principale tramite interfaccia I2C o monofilare, proteggendo i dispositivi collegati con l'autenticazione end-to-end.

Ad esempio, un elemento di protezione come ATECC608A di Microchip svolge tre attività fondamentali: generazione delle chiavi di sicurezza, cripto-accelerazione per l'autenticazione reciproca e archiviazione delle chiavi in uno spazio di memoria sicuro. In altre parole, crea confini protetti per le chiavi private isolandole da altri componenti software, impedendo così agli hacker di impadronirsi dei segnali di alimentazione e di clock di un progetto IoT e di utilizzare tali informazioni per creare un canale secondario per sferrare i loro attacchi sul canale laterale.

Figure 2: Immagine del Secure Element ATECC608A di Microchip che implementa il provisioning delle chiavi in un dispositivo IoT. (Immagine per gentile concessione di Microchip Technology)

I Secure Element stanno guadagnando terreno nella progettazione IoT, come dimostra il fatto che fornitori di servizi in cloud come Google e Amazon Web Services (AWS) hanno dato il loro sostegno ad ATECC608A per il collegamento dei nodi IoT al cloud. E la tecnologia TrustZone integra ATECC608A con una protezione firmware contenuta all'interno di un framework IoT. Non sono sostenitori di piccolo calibro.

Il chip del Secure Element viene proposto insieme a un generatore di numeri casuali (RNG) aggiornato in conformità con i nuovi requisiti del National Institute of Standards and Technology (NIST) definiti negli standard SP800-90A/B/C per la generazione di bit.

Conclusione

Le vulnerabilità aventi come fulcro la connettività dei progetti IoT hanno portato in primo piano i problemi legati alla sicurezza. Sebbene il numero di dispositivi collegati sia ancor oggi maggiore dei progetti di protezione implementati, la disponibilità di chip di protezione a basso costo incentrati sulla semplificazione del provisioning delle chiavi potrebbe presto determinare un'inversione di tendenza.

Un altro aspetto che salta agli occhi è la convergenza di soluzioni hardware e software per la protezione congiunta dei dispositivi IoT da un numero sempre crescente di vettori di attacco. Quest'alleanza tra il mondo dell'hardware e quello del software potrebbe anche contribuire a superare la ripida curva di apprendimento necessaria ad implementare solide soluzioni di protezione.

Informazioni su questo autore

Image of Majeed Ahmad

Majeed Ahmad è un ingegnere elettronico con un'esperienza ultraventennale nel settore della tecnologia multimediale B2B. È stato caporedattore di EE Times Asia, una pubblicazione affiliata di EE Times.

Majeed è autore di sei libri sull'elettronica. I suoi contributi appaiono spesso in pubblicazioni specializzate di progettazione elettronica, tra cui All About Circuits, Electronic Products ed Embedded Computing Design.

More posts by Majeed Ahmad
 TechForum

Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.

Visit TechForum