Elettronica Plus

Tecnologia Bluetooth per comunicazioni radio affidabili..ERT

Soluzioni programmabili per la sicurezza avanzata dei dati

La sicurezza dei dati di tipo Bluetooth è inadeguata per la maggior parte delle applicazioni in cui è richiesto un alto livello di riservatezza. Tutto sommato, ci sono ancora diversi problemi riguardo la sicurezza di Bluetooth, che sembra essere inadeguato per la trasmissione di dati “sensibili”. Per esempio, lo schema di cifratura utilizzato in Bluetooth evidenzia alcune debolezze. Il flusso di cifre E0 con la chiave da 128 bit può essere interrotto in O(2^64) in alcune circostanze.
Un possibile scenario potrebbe essere il seguente: un “assaltatore” riesce ad ottenere la chiave di cifratura che assicura la comunicazione fra due dispositivi e può quindi ascoltare indebitamente i messaggi che i dispositivi stanno inviandosi l’un l’altro. L’assaltatore può anche rivendicare di essere uno dei dispositivi e inserire falsi messaggi. Un modo per evitare che ciò accada è far si che gli utenti utilizzino numeri di identificazione lunghi, non PIN corti, per aumentare la difficoltà di scoprire le chiavi di cifratura. Questo ancora implica l’inserimento manuale dei numeri PIN, ovvero un processo tedioso per stabilire una connessione sicura.
Un altro modo di superare questi problemi di sicurezza sarebbe quello di usare un algoritmo di cifratura più robusto, come ad esempio lo standard DES (Data Encryption Standard), o anche il Triplo DES anziché l’algoritmo E0 per la cifratura del flusso. DES è un algoritmo di cifratura a blocchi, il che significa che la cifratura codifica blocchi di dati tutti in una volta e quindi procede al blocco successivo. Nel DES, il messaggio originario è diviso in blocchi di lunghezza fissa pari a 64 bit e cifrati usando una chiave segreta a 56 bit in un messaggio codificato a 64 bit attraverso permutazioni e sostituzioni.

Soluzioni programmabili per una maggiore integrità dei dati

La specifica Bluetooth definisce misure che sono efficaci per evitare che errori involontari vengano trasmessi utilizzando il blanking dei dati e il controllo degli errori. Tuttavia, un particolare flusso di dati, che potrebbe causare errori di trasmissione è in teoria possibile, sebbene altamente improbabile in transazioni normali. Vi è ancora tuttavia il rischio di trasmissioni soggette a errore in ambienti più ostili come impianti industriali, uffici, aeroporti e trasporti pubblici metropolitani. In ambienti siffatti rumore e interferenze da parte di altri dispositivi Bluetooth, reti wireless, sistemi di telefonia, o altri dispositivi elettronici funzionanti all’interno della stessa banda di frequenze possono causare problemi. Ancora, le logiche programmabili e i blocchi IP per la correzione avanzata degli errori possono essere utilizzate per consentire una comunicazione priva di errori. Una tecnica affidabile di correzione degli errori diretta come la Turbo Convolution Coding é una valida alternativa in ambienti dove esistono difficoltà di comunicazione.
La codifica in questione é un algoritmo avanzato di correzione degli errori diretto. Si tratta di un componente standard nei sistemi di comunicazione wireless di terza generazione (3G), come quelli che fanno uso dell’accesso multiplo a divisione di codice a banda Larga (Wideband Code Division Multiple).

Soluzioni in logica programmabile per applicazioni Bluetooth

Per dare concretezza a quanto detto finora è necessario adottare da subito Bluetooth all’interno dei prodotti di prossima generazione. Questo può essere un compito difficile, in particolare quando si ha a che fare con un’architettura già esistente. I problemi non sono di poco conto: come si può integrare un fare con architetture già esistenti. I problemi si possono così sintetizzare: come integrare il sottosistema Bluetooth? Come minimizzare l’onere di sviluppo software e l’impatto sulle prestazioni del sistema? Come creare le configurazioni di un dispositivo necessarie per una specifica applicazione?
Per risolvere i problemi cui sopra si è accennato, le logiche programmabili possono costituire un valido aiuto. Per esempio i componenti Bluetooth attuali supportano pressoché universalmente un’interfaccia di sistema host USB o UART ad alte prestazioni, ma molti progetti esistenti non possiedono tali interfacce. Le logiche programmabili possono fornire una soluzione rapida ed efficiente attraverso un ponte USB o UART verso qualsiasi interfaccia per semplificare il collegamento a Bluetooth di dispositivi elettronici esistenti. Una tale soluzione può anche dimostrasi valida per risolvere altri problemi chiave che semplificano il lavoro ed accelerano il time-to-market.

Un altro vantaggio delle logiche programmabili è l’adattabilità della configurazione del sistema a esigenze specifiche. Per esempio i componenti Bluetooth attualmente disponibili sono limitati da una velocità di trasferimento massima di 721Kbps e supportano solamente alcune reti (piconet) simultaneamente. Per punti di accesso in area pubblica (per l’utilizzo ad esempio in una sala di attesa in un aeroporto o in una sala conferenze di un’azienda) sarebbe auspicabile accorpare un certo numero di questi dispositivi per supportare un grande numero di utenti con una connessione a banda larga. Le logiche programmabili costituiscono una piattaforma ideale per creare siffatti progetti. Le logiche programmabili conferiscono flessibilità al progetto, sia che connettano una radio differente al controllore in banda base selezionato, o permettano di integrare altre periferiche per interfaccia utente come nell’esempio di cui qui sopra o implementino funzioni a valore aggiunto per la sicurezza e l’integrità dei dati. In tutti i casi si può constatare che l’hardware funziona velocemente, con la capacità di rivedere il progetto tante volte quanto é necessario per ottenere il sistema proprio in tempi ridotti e tutto senza oneri NRE come se si trattasse di ASIC.