La sicurezza dei dati nelle reti IoT
La protezione dei dati può essere affidata alla tecnologia blockchain, che si sta diffondendo rapidamente anche in applicazioni non finanziarie. Nel campo dell’IoT infatti permette il tracciamento di miliardi di dispositivi connessi e interagenti
di Valerio Alessandroni
La sicurezza delle reti IoT è un po’ più impegnativa della tradizionale sicurezza di rete perché può essere presente una più ampia gamma di protocolli di comunicazione, standard e funzionalità dei dispositivi, tutti fattori che pongono problemi specifici e una maggiore complessità. Tra le soluzioni più interessanti oggi disponibili c’è la tecnologia blockchain.
Un database distribuito in crescita costante
La blockchain (letteralmente “catena di blocchi”) è un database in continua crescita di record, chiamati blocchi, che sono collegati tra loro e resi sicuri mediante crittografia. Ogni blocco della catena contiene un puntatore (hash) come collegamento al blocco precedente, un timestamp e i dati della transazione. La blockchain può registrare le transazioni tra due parti in modo efficiente, verificabile e permanente. Una volta registrati, i dati in un blocco, non possono essere alterati retroattivamente senza che vengano modificati tutti i blocchi successivi, il che richiederebbe il consenso della maggioranza della rete. La tecnologia blockchain permette quindi di registrare le transazioni o le interazioni digitali fra nodi in modo sicuro, trasparente, resistente alle interruzioni ed efficiente. Non esiste un solo computer che disponga dell’intera catena: piuttosto, tutti i nodi partecipanti ne hanno una copia. Inoltre, la blockchain non permette di memorizzare alcun tipo di informazione fisica, ma può solo certificarne l’esistenza.
Tre tipologie di blockchain: pubblica, federata e privata
La blockchain si basa su transazioni, ovvero sulle azioni create dai nodi partecipanti, e su blocchi, che registrano le transazioni e assicurano che queste ultime siano nella sequenza corretta e non siano state manomesse. Tutti i partecipanti possono vedere i blocchi e le transazioni in essi memorizzate. Quando un nodo vuole aggiungere una transazione alla catena, tutti i partecipanti alla rete ne verificano la validità. Un insieme di transazioni approvate viene quindi raggruppato in un blocco, inviato a tutti i nodi della rete che, a loro volta, convalidano il nuovo blocco. Ogni blocco successivo contiene un’impronta digitale univoca (hash) del blocco precedente. Esistono tre tipi di blockchain. In una blockchain pubblica tutti possono vedere tutte le transazioni e chiunque può partecipare al processo di consenso. Una blockchain federata consente a un numero limitato di nodi di partecipare al processo di consenso. Le blockchain private vengono solitamente utilizzate all’interno di un’azienda, e solo membri selezionati possono accedervi ed eseguire transazioni.
Elaborazione delle transazioni e coordinamento tra i dispositivi
Nel campo dell’IoT, la tecnologia blockchain può essere utilizzata per il tracciamento di miliardi di dispositivi connessi e interagenti, consentendo l’elaborazione certificata delle singole transazioni e il coordinamento tra i dispositivi, eliminando i singoli punti di errore e creando un ecosistema più resiliente. Ci sono oggi molte diverse tecnologie che vanno sotto il nome “blockchain”, come Blockchain di Bitcoin, Ethereum, Hyperledger, Corda e Blockchain-as-a-service di Microsoft. La prima applicazione della tecnologia blockchain, di cui oggi si parla molto, è la criptovaluta Bitcoin. Ma la blockchain può essere utilizzata anche nel settore immobiliare, sanitario o per creare la propria identità digitale. Molti ritengono che la blockchain sia la nuova generazione di Internet, o meglio ancora la Nuova Internet, una sorta di Internet delle Transazioni.
La WSN assicura confidenzialità, integrità e autenticità
Le reti di sensori wireless, un’implementazione dell’Internet of Things, sono composte da sensori autonomi distribuiti in un certo spazio per tenere sotto controllo condizioni fisiche o ambientali come temperatura, suono, pressione e via dicendo, e per trasferire in modo cooperativo i loro dati a una postazione centrale attraverso la rete. Le reti più moderne sono bidirezionali, permettendo di controllare anche l’attività dei sensori dalla postazione centrale. La WSN è quindi formata da “nodi”, dove ogni nodo è collegato a uno o più sensori. L’obiettivo primario della sicurezza nelle WSN è quello di garantire confidenzialità, integrità e autenticità. “Confidenzialità” significa che i dati trasportati nella rete non possono essere letti da altri che non siano il destinatario previsto. Per “Integrità” si intende che ogni messaggio ricevuto è esattamente uguale al corrispondente messaggio trasmesso, senza aggiunte, cancellazioni o modifiche del contenuto. Infine, “autenticità” significa che un messaggio proveniente da una certa sorgente sia davvero stato trasmesso da quella sorgente. Se nell’ambito dello schema di autenticazione si utilizza il tempo, l’autenticità serve anche a proteggere un messaggio contro registrazioni e repliche.
Strumenti adatti per costruire comunicazioni wireless sicure
Il problema dell’autenticazione nelle reti IoT è particolare: infatti, mentre nella maggior parte delle reti aziendali i processi di autenticazione richiedono l’inserimento di una credenziale da parte di un essere umano, molti scenari di autenticazione IoT (come i sensori embedded) sono basati su interazioni machine-to-machine senza alcun intervento umano. Le conseguenze di una scarsa sicurezza non sono sempre facilmente prevedibili. Per esempio, quando fu introdotta la tecnologia ZigBee, nella maggior parte delle reti non vi era alcuna sicurezza. Di conseguenza, nelle dimostrazioni di interoperabilità multi-vendor, molte reti ZigBee fallivano drammaticamente, perché interpretavano un comando trasmesso su un’altra rete. Fortunatamente, esistono oggi degli strumenti potenti per costruire comunicazioni wireless sicure e robuste: strumenti di criptazione, verifiche di integrità dei messaggi, generatori di numeri casuali, chiavi condivise, controllo degli accessi e così via. Utilizzando dei principi ben stabiliti, protocolli appropriati e sistemi di cifratura, oltre alla casualità intrinseca nel rumore fisico e termico, è possibile costruire dei sistemi sicuri ed efficienti.