EO_507
DIGITAL SECURE CRYPTO ENGINE essere iniettata) al SCE; la chiave dell’applicazione vie- ne emessa in un formato “wrappato” unico per MCU che può essere archiviato in modo sicuro nella memoria non volatile. Poiché la chiave di installazione della chiave stessa e la chiave dell’applicazione utente sono entrambe critto- grafate, non è necessario utilizzare un modulo di sicu- rezza hardware (HSM) o un servizio di programmazione sicuro per l’inserzione della chiave utente in produzione. Renesas fornisce un servizio “offline” gratuito a tutti i suoi clienti per generare il pacchetto dati necessari per la chiave di installazione in fabbrica, tramite un’infra- struttura dedicata chiamata server DLM (Device Li- fecycle Management) (Fig. 2). La comunicazione comple- ta tra l’utente e il server è sicura e crittografata tramite PGP; la chiave dell’applicazione non è esposta allo stesso server DLM in nessun momento. L’applicazione utente può sfruttare la capacità SCE per mezzo di driver crittografici dedicati, inclusi nel Rene- sas Flexible Software Package (FSP). L’FSP è un pacchet- to software avanzato progettato per fornire software di facile utilizzo, scalabile e di alta qualità per progetti di sistemi embedded che utilizzano i microcontrollori RA. Supporta Arm TrustZone, funzionalità di sicurezza avan- zate, fornisce driver ad alte prestazioni e basso footprint di memoria pronti per la produzione, integra stack midd- leware come Azure RTOS, FreeRTOS, semplificando l’im- plementazione di moduli complessi per la comunicazione e la sicurezza. Guardando in particolare ai driver SCE, questi imple- mentano due modalità di funzionamento, denominate “compatibility mode” e “protected mode”. Compatibility mode Uno dei motivi principali della sua esistenza è che mol- ti sistemi legacy richiedono la gestione di chiavi di te- sto normale o che le implementazioni effettive devono integrarsi con stack e librerie diversi che non gestisco- no in modo nativo wrapped key (a volte indicate come “key blob”). La periferica SCE è flessibile e può suppor- tare il funzionamento della chiave di testo consentendo al software applicativo di importare una chiave di testo all’interno dei confini del SCE. Dopo questo passaggio, l’applicazione potrebbe facoltativamente archiviare in modo sicuro la versione della chiave racchiusa in me- moria, riducendone l’esposizione. A questo proposito, le funzionalità SCE di wrapping delle chiavi e di archi- viazione sicura diventano trasparenti per l’applicazione dell’utente finale e consentono un’integrazione perfetta con i sistemi legacy o con qualsiasi software e soluzione di terze parti, pur offrendo prestazioni e vantaggi illimi- tati di archiviazione sicura delle chiavi. Il software appli- cativo può quindi utilizzare le chiavi in testo o wrappate tramite le API PSA Crypto e MbedCrypto. L’archiviazione sicura delle chiavi è virtualmente illimi- tata poiché qualsiasi programma o locazione di data flash disponibile negli MCU può essere scelta come posizione di archiviazione. Allo stesso tempo, la Hardware Unique Key coinvolta nel processo di wrapping impedisce la clo- nazione e la copia illecite delle chiavi. In questa modalità operativa l’utente ha anche la possi- bilità di generare wrapped key (casuali) sull’MCU stesso. Questo potrebbe essere interessante per crittografare i dati locali dell’MCU (ad esempio). Inoltre, il supporto del- le chiavi di testo potrebbe facilitare l’integrazione con i sistemi di programmazione esistenti. D’altra parte, lo sviluppatore deve valutare la minaccia di gestire le chiavi di testo nel sistema, soprattutto du- rante il funzionamento, poiché il contenuto della chiave sarà esposto al di fuori dei confini SCE. Questo rischio riguarda sia il funzionamento del software, sia qualsiasi successivo aggiornamento della chiave, quando un codice “dannoso” potrebbe sfruttare i punti deboli del software esistente per ottenere i dati della chiave. Protected mode Questa modalità fornisce un significativo miglioramento sia nella sicurezza a livello di sistema che nella gestione sicura delle chiavi, implementando un approccio basato sulle migliori pratiche esistenti. In questa modalità sono consentite solo le chiavi wrappate in modo nativo e il si- stema non supporta il funzionamento delle chiavi in te- sto. Ciò elimina completamente l’esposizione delle chiavi dalla CPU, dal DMA o da altre periferiche interfacciate sul bus di sistema e riduce drasticamente la superficie di at- tacco. Come in compatibility mode, le wrapped key (locali) pos- sono essere generate dall’SCE. Le chiavi utente note possono essere installate in modo sicuro da un programmatore di dispositivi che si interfac- cia con il firmware di boot incluso nel chip, consentendo il provisioning sicuro delle chiavi in produzione. Tali chia- vi sono archiviate in modo sicuro in formato wrapped e possono essere utilizzate direttamente nell’applicazione. La stessa interfaccia può essere utilizzata per installare key-update-key in fabbrica, ovvero chiavi che il software applicativo può utilizzare per aggiornare in modo sicuro le chiavi dell’applicazione sul campo. Ciò a sua volta si- gnifica che non vi è alcuna dipendenza dal servizio del server DLM dopo il completamento della programmazio- ne di fabbrica iniziale. Oltre a ciò, la modalità protetta abilita diverse contro- ELETTRONICA OGGI 507 - GENNAIO/FEBBRAIO 2023 43
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzg4NjYz