Sin dal momento del rilascio di Android 6.0, Google ha chiesto ai produttori di dispositivi mobili di attivare per impostazione predefinita la crittografia sui device degli utenti. L’utilizzo della crittografia, gestita in hardware grazie ai SoC di nuova generazione, consente di evitare l’accesso alle informazioni conservate sui dispositivi mobili da parte di soggetti terzi non autorizzati.
Già nel 2016 offrivano consigli sulla procedura da seguire per cancellare definitivamente le informazioni memorizzate nei propri dispositivi Android prima di consegnarli ad altre persone: Formattare Android, come preparare un dispositivo per venderlo.
Google ha da sempre fatto eccezioni per i dispositivi Android di fascia bassa che non hanno le risorse hardware per gestire la codifica e la decodifica delle informazioni.
Un esempio tipico sono i dispositivi Android Go, pensati in primis per i mercati emergenti, che spesso non utilizzano neppure più di 1 GB di RAM. Basti pensare che il processore ARM Cortex-A7 (equipaggia alcuni dispositivi di basso profilo) non supporta in hardware neppure l’algoritmo di cifratura AES (Advanced Encryption Standard).
Così, gli ingegneri di Google hanno presentato Adiantum, un nuovo strumento per abilitare l’utilizzo della crittografia per la memorizzazione dei dati anche sui dispositivi mobili dotati di hardware mediocre.
Come spiega Eugene Liderman, direttore della divisione sicurezza di Google Android, Adiantum non è stato progettato solo per gli smartphone di fascia bassa e per i mercati emergenti ma per qualsiasi prodotto basato su Linux con una dotazione hardware modesta, per gli smartphone, per le smart TV, per i dispositivi medici e così via.
In questa interessante analisi tecnica Google spiega i principi tecnici sui quali si basa Adiantum: il nuovo sistema per la protezione dei dati conservati sui supporti di memoria utilizza il cifrario a flusso ChaCha, molto più performante rispetto ad AES allorquando l’accelerazione in hardware delle attività crittografiche non fosse disponibile, e lo ottimizza per l’impiego con le memorie flash la cui struttura è tipicamente formata da settori da 4.096 byte.
Nell’immagine Google mette a confronto le prestazioni (espresse in MB/s) tra l’utilizzo dell’algoritmo AES-256-XTS e Adiantum su un dispositivo dotato del SoC ARM Cortex-A7 a 1,19 GHz.
In questa pagina Google spiega ai produttori hardware come attivare Adiantum con l’ultima versione di Android. Le stesse indicazioni possono evidentemente essere sfruttate dagli sviluppatori di ROM non ufficiali.