La sicurezza SEMPRE
Capita che i sistemi si arrestino. A volte siamo noi a farlo di proposito, per motivi di manutenzione, di risparmio energetico o altro. Altre volte, invece, si arrestano quando non è il momento, ed è proprio questo che bisogna evitare. È importante che non accada mai mentre il sistema si sta accendendo o spegnendo, perché è un momento in cui la sicurezza può essere volutamente minore.
Esistono molti documenti che spiegano come garantire la sicurezza del sistema quando va tutto bene. Ma non sempre è così se il sistema si sta accendendo o spegnendo, soprattutto se si verifica un'interruzione di energia elettrica imprevista. Quindi cosa bisogna fare in queste situazioni?
La risposta più semplice è progettare un MCU che integri le caratteristiche di sicurezza più recenti. La parte più difficile è capire come farlo, visto che gli standard e le caratteristiche cambiano piuttosto rapidamente e i malintenzionati diventano sempre più abili. Per saperne ancora di più su questa tecnologia, leggete l'articolo "Disamina dei microcontroller di sicurezza per applicazioni IoT".
Figura 1: Le aree di confine della protezione in una piattaforma industriale. (Immagine per gentile concessione di Maxim Integrated Products)
In una tipica progettazione "sicura", tutti i componenti che costituiscono la sicurezza embedded operano all'unisono entro un limite comune. Il livello superiore di questa gerarchia di protezione della sicurezza comprende tecnologie come la crittografia e la sicurezza hardware (Figura 1). Questo confine isola le chiavi di autenticazione dal software, tentando di prevenire gli attacchi degli hacker, anche quelli che potrebbero avvenire durante lo spegnimento e la riaccensione del sistema. Ma se l'alimentazione viene tolta, è essenziale che il sistema sia riavviato con la sequenza corretta, cioè che venga prima caricata la sicurezza, a debita distanza da occhi indiscreti.
La famiglia RX di dispositivi di Renesas, come i microcontroller RX651, implementa la sicurezza tramite una radice di attendibilità. Questo è uno dei metodi utilizzati dai progettisti dei sistemi per gestire il problema durante l'accensione e l'arresto. Il sistema sa che deve accendersi e spegnersi secondo una determinata sequenza e utilizzando la radice di attendibilità. Legge le parole chiave crittografate che indicano al resto del sistema che si può proseguire.
Gli MCU RX651 affrontano le problematiche di sicurezza integrando Trusted Secure IP (TSIP) e protezione dell'area flash attendibile, che consentono aggiornamenti del firmware flash sul campo attraverso comunicazioni di rete sicure. TSIP offre una robusta gestione delle chiavi, comunicazioni criptate e rilevamento delle manomissioni per garantire una robusta sicurezza contro minacce esterne come le intercettazioni, le manomissioni e i virus.
Un secondo metodo per garantire la sicurezza, oggi abbastanza diffuso, è la tecnologia TrustZone di Arm, che isola dal resto dell'applicazione il firmware di sicurezza critico e le informazioni private come l'avvio protetto, l'aggiornamento del firmware e le chiavi. In pratica, divide l'MCU in due parti, dove quella che contiene le chiavi di crittografia, ecc. è completamente sicura e l'altra viene distribuita per attività di uso generale. I due domini rimangono isolati e quindi si impediscono le manomissioni.
Un MCU che utilizza TrustZone è STM32MP151A di STMicroelectronics. Basato sul core RISC Cortex-A7 a 32 bit di Arm, usa frequenze fino ai 650 MHz e include cache per istruzioni e dati a 32 kB e una cache di Livello 2 a 256 kB. L'unità di protezione di memoria (MPU) su scheda migliora la sicurezza dell'applicazione, in aggiunta alla tecnologia TrustZone embedded.
Sicurezza da una seconda fonte
Il Secure Element ATECC608A di Microchip è un dispositivo che opera in modo indipendente dall'MCU (Figura 2). È dotato di un generatore di numeri casuali (RNG) che genera chiavi esclusive, ed è conforme agli ultimi requisiti del National Institute of Standards and Technology (NIST). Presenta anche acceleratori crittografici come AES-128, SHA-256 e ECC P-256 per l'autenticazione reciproca.
Figura 2: ATECC608A di Microchip è un coprocessore crittografico che opera a fianco di un MCU e offre memorizzazione delle chiavi sicura basata su hardware. (Immagine per gentile concessione di Microchip)
Sebbene supporti la numerosa famiglia di MCU di Microchip, il componente è indipendente da microprocessori o microcontroller. Richiede pochissima potenza e un solo GPIO su un intervallo di tensione molto ampio. Il suo fattore di forma compatto (con UDFN a 8 piazzole o SOIC a 8 conduttori) lo rende semplice da integrare su una scheda.
Quindi, come potete vedere, i modi per rendere sicuro un sistema sono molti. Non avete che da scegliere quello più adatto alla vostra applicazione.
Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.
Visit TechForum




