Crittografia

La crittografia è il processo di codifica di tutti i dati utente su un dispositivo Android utilizzando chiavi di crittografia simmetriche. Una volta criptato un dispositivo, tutti i dati creati dall'utente vengono criptati automaticamente prima di essere salvati su disco e tutte le letture decriptano automaticamente i dati prima di restituirli al processo chiamante. La crittografia garantisce che anche se una parte non autorizzata tenta di accedere ai dati, non sarà in grado di leggerli.

Android offre due metodi per la crittografia dei dispositivi: la crittografia basata su file e la crittografia completa del disco.

Crittografia basata su file

Android 7.0 e versioni successive supportano la crittografia basata su file. La crittografia basata su file consente di criptare file diversi con chiavi diverse che possono essere sbloccate in modo indipendente. I dispositivi che supportano la crittografia basata su file possono supportare anche l'avvio diretto, che consente ai dispositivi criptati di avviarsi direttamente nella schermata di blocco, consentendo così un rapido accesso a funzionalità importanti del dispositivo come i servizi di accessibilità e le sveglie.

Con la crittografia basata su file e le API che rendono le app consapevoli della crittografia, le app possono operare in un contesto limitato. Ciò può accadere prima che gli utenti forniscano le proprie credenziali, proteggendo comunque le informazioni private degli utenti.

Crittografia dei metadati

Android 9 introduce il supporto per la crittografia dei metadati, dove è presente il supporto hardware. Con la crittografia dei metadati, una singola chiave presente all'avvio cripta i contenuti non criptati da FBE, come i layout delle directory, le dimensioni dei file, le autorizzazioni e gli orari di creazione/modifica. Questa chiave è protetta da KeyMint (in precedenza Keymaster), che a sua volta è protetto dall'Avvio verificato.

Crittografia completa del disco

Supporto di Android 5.0 fino ad Android 9 crittografia dell'intero disco. La crittografia dell'intero disco utilizza una singola chiave, protetta con la password del dispositivo dell'utente, per proteggere l'intera partizione dei dati utente di un dispositivo. All'avvio, l'utente deve fornire le proprie credenziali prima che qualsiasi parte del disco sia accessibile.

Sebbene ciò sia ottimo per la sicurezza, significa che la maggior parte delle funzionalità di base dello smartphone non è immediatamente disponibile quando gli utenti riavviano il dispositivo. Poiché l'accesso ai dati è protetto dalle credenziali di un singolo utente, funzionalità come le sveglie non potevano funzionare, i servizi di accessibilità non erano disponibili e gli smartphone non potevano ricevere chiamate.