Nota: Bene, la generosità è scaduta e una possibile ragione potrebbe essere lo sforzo necessario per affrontare come raccolgo dai commenti. Visto il numero di voti positivi, sembra interessare anche gli altri. Vorrei ancora ottenere una risposta, quindi ecco quello che propongo: una buona risposta entro un mese riceverà un bonus di 50. Spero di dare tempo e incentivi adeguati
Ho cercato di capire il processo di crittografia Android e le sue vulnerabilità per un po '
Ci sono molte domande che affrontano parti di questo argomento su questo sito e anche sul sito affiliato. Per riportare il mio punto a casa, queste domande riguardano porzioni e non il tutto (che ricorda " ciechi e un elefante ?" :)
- Cosa protegge la crittografia Marshmallow?
- La crittografia completa del dispositivo protegge i miei dati da Google e dal governo?
- /android/137334/if-we-encrypt-our-device-can-user-connecting-to-adb-get-it
- Domande relative alla crittografia della scheda SD
- Android-crittografia-quando-phone-is-on
- Android-CyanogenMod-crittografia-vs-gnu
- è-ci-crittografia-materiali-in-a-telefoni-sim-card-che-può-essere-usato-con-rsa
- Android-device-crittografia
La mia comprensione (o incomprensione?)
- La password di crittografia viene generata da una combinazione di PIN della schermata di blocco dell'utente e algoritmo di crittografia (in ciò risiede una debolezza intrinseca a causa della lunghezza limitata del PIN)
- Questo è salato e memorizzato nella posizione principale, non accessibile agli utenti
- Viene utilizzato per generare la password effettiva per crittografare / decrittografare e la password effettiva viene archiviata nella RAM
- Ciò è stato rafforzato collegando il Passaggio 1 al SoC del dispositivo ( Quale versione di Android? Qual è l'elemento hardware che identifica in modo univoco il dispositivo? Può essere sostituito con falso? )
- Pertanto, non è possibile decrittografare i dati senza chiave di crittografia e dispositivo (vale anche per SD esterna)
- Possibili metodi di recupero: forza bruta, acquisizione delle informazioni RAM (passaggio 3) per ottenere la chiave
- I dispositivi rooted sembrano essere più suscettibili all'accesso ai dati del passaggio 2 attraverso il ripristino personalizzato / eventualmente la ROM e il flashing del kernel ?? ( se vero, perché questo non è propagandato come un grosso rischio? )
- Anche se si ottengono queste informazioni, suppongo che sia saggio non banale generare la password effettiva
- Marshmallow può trattare la SD esterna come "memoria interna" o "memoria portatile". Logicamente, non dovrebbe fare la differenza ma non ne sono sicuro
Ci sono delle lacune nella mia comprensione, probabilmente perdendo anche altri aspetti chiave.
Quindi, sto cercando una spiegazione canonica per la comprensione dal punto di vista dell'utente
Intero processo di crittografia (inclusa SD esterna)
Variazione dell'implementazione tra le versioni di Android: da KitKat a Marshmallow (comprese le doppie opzioni per SD esterna in Marshmallow)
Vulnerabilità a livello di utente
Nota
- Sono consapevole del rischio che la questione sia considerata troppo ampia, ma l'IMO garantisce un trattamento globale
Avendo una certa esperienza nella sicurezza della comunicazione, capisco la sfida nel tradurre concetti crittografici a livello di utente. Preferirei la risposta per affrontare questo, con indicazioni esplicative per una comprensione più profonda. Gli esempi del processo non devono necessariamente essere crittograficamente corretti in senso rigoroso, ma dovrebbero trasmettere l'essenza
Un possibile vantaggio potrebbe essere "ingannare" domande future su aspetti correlati
A costo di ripetizione, le risposte dovrebbero essere principalmente a livello di utente , ma con una spiegazione adeguata per una comprensione più profonda. Dividere la risposta in due parti può essere un modo adatto.
Vorrei sottolineare il voto negativo delle risposte banali / casuali / patch per incoraggiare risposte complete
//
Questo potrebbe adattarsi meglio alla sicurezza . Penso anche che sia troppo ampio perché una buona parte di ciò che stai chiedendo dipende dal particolare hardware e da come il produttore lo implementa.