Table of Contents Table of Contents
Previous Page  12 / 28 Next Page
Information
Show Menu
Previous Page 12 / 28 Next Page
Page Background

XII

Medical

MEDICAL 14 -

MAGGIO 2017

gine integrato. Un crypto engine è un modulo indipen-

dente progettato per scaricare il processore primario del

carico computazionale legato al lavoro di cifratura/deci-

fratura. Essendo il crypto engine racchiuso in un blocco

IP indipendente, per gli hacker risulta più difficoltoso

individuare delle tecniche che consentano di accedere

al processo crittografico. L’utilizzo di un crypto engine

può avere un impatto enorme sulla capacità dell’appli-

cazione di manipolare dati sicuri in modo rapido ed ef-

ficiente.

Il partizionamento del dispositivo

Utilizzando la tecnologia ARM TrustZone (o memoria

protetta) è possibile partizionare le risorse di sistema

riservate alla memorizzazione delle chiavi di sicurezza,

impedendone l’accesso da parte di malware o di appli-

cazioni non autorizzate. L’isolamento dell’hardware

può essere esteso anche oltre la memoria di sistema, in-

cludendo le regioni di memoria destinate all’indirizza-

mento dell’I/O delle periferiche. Le risorse di sistema

possono dunque essere certificate come “sicure”, il che

ne consentirà l’accesso solo da parte delle applicazioni

sicure, in esecuzione all’interno del dominio sicuro.

Il software, la “forza vitale” all’interno di ogni dispositivo me-

dicale indossabile

Come illustrato, la selezione dell’hardware giusto, do-

tato delle dovute caratteristiche di sicurezza, è il primo

importante passo per la costruzione di un dispositivo

medicale indossabile sicuro. Senza il software appro-

priato, tuttavia, l’utilizzo delle funzionalità di sicurezza

hardware può comportare lo sviluppo di codice aggiun-

tivo, con un significativo aumento dei costi, dei tempi e

della complessità dello sviluppo. Oppure, peggio anco-

ra, l’utilizzo del software sbagliato può portare al com-

pleto inutilizzo delle funzionalità di sicurezza. Si rivela

quindi essenziale la presenza di un sistema operativo,

un OS (Operating System), dotato di un framework che

supporti la presenza all’interno del silicio dei blocchi IP

dedicati alla sicurezza, quali un crypto engine e le fun-

zioni di secure boot, ed assista nell’utilizzo dei relativi

algoritmi e della crittografia. L’OS appropriato deve in-

cludere un framework per l’implementazione di una

chain of trust che garantisca l’autenticazione del codice

prima della sua esecuzione. Ciò è indispensabile per ve-

rificare che il software non sia stato manomesso. Inoltre,

poiché le informazioni personali di natura sanitaria sono

sia confidenziali che di importanza vitale, andrebbe pre-

so in considerazione anche l’utilizzo di un OS in grado

di memorizzare i dati in file di tipo sicuro. Il che va ben

oltre l’utilizzo di una semplice protezione basata su pas-

sword. Una protezione aggiuntiva realizzata mediante

la crittografia dei dati, atta a garantire che essi possano

essere letti e modificati solo dai soggetti autorizzati, è

dunque essenziale per la sicurezza complessiva del dispo-

sitivo. Poiché i dispositivi indossabili sono caratterizzati

da stringenti vincoli di risorse, è evidente la necessità di

ricorrere a librerie di funzioni crittografiche con una fo-

otprint ridotta ma in grado di offrire funzionalità equi-

valenti a quelle delle diffuse librerie OpenSSL. A causa

delle limitazioni di memoria, inoltre, il sistema operativo

deve supportare anche l’esecuzione in-place e il carica-

mento dinamico sia per il runtime sia per il file system.

Quanto al file system, è necessario che esso supporti le

funzioni di crittografia e di hashing, per un’efficace pro-

tezione contro la compromissione dei dati.

Upgrade e aggiornamenti

Un requisito chiave per i dispositivi medicali indossabi-

li consiste nella possibilità di aggiornare il dispositivo a

fronte del rilascio di aggiornamenti relativi alla sicurez-

za. I produttori di SoC, che sono soggetti a forti pressioni

legate ai fattori di time-to-market, normalmente monta-

no a bordo dei propri chip una versione di Linux, oppu-

re di un RTOS freeware, insieme ad altri componenti e

driver open source o proprietari. Il produttore del dispo-

sitivo indossabile, d’altro canto, sceglie il chip da utilizza-

re in base sia al prezzo che alle funzionalità, ivi incluso il

software a corredo. Il problema legato a questo scenario

consiste nel fatto che, se viene identificato un problema

Fig. 2

– Il modello di sicurezza basato sulla

chain of trust garantisce che ogni file scaricato

venga firmato ed autenticato,

a partire dal boot loader e salendo

fino al livello applicativo