Sono interessato a comprendere il processo di avvio verificato in Android, ma non sono riuscito a trovare informazioni su alcune proprietà del processo.
Da quanto ho raccolto fino ad ora ho capito che nei dispositivi Android il processo di avvio verificato è supportato usando dm-verity
, che controlla gli hash firmati dei blocchi di memoria in cui si trova il sistema operativo da caricare.
Inoltre, la maggior parte (se non tutti) degli attuali dispositivi basati su processori ARM ha la funzione TrustZone che viene utilizzata per creare i cosiddetti "Secure World" e "Unsecure World".
Quello che sto cercando di capire è come tutto questo sia finito:
- Quando nel processo di avvio di Android viene eseguito
dm-verity
? - Il
dm-verity
viene eseguito all'interno di "Secure World"? In tal caso, come viene verificato il caricamento del sistema operativo "Secure World"? - Quando nel processo di avvio è la prima volta che si accede / si attiva la funzione "mondi" di TrustZone?