Un passaggio fondamentale nel processo di autenticazione di una VM Android SDV peer è determinare se la VM peer è in esecuzione su un dispositivo attendibile. Solo le VM che eseguono software verificato su dispositivi attendibili possono partecipare alla mesh sicura SDV. Per informazioni dettagliate sulla procedura di verifica del software peer, consulta il profilo SDV per DICE.
Per l'attendibilità del dispositivo, Android SDV definisce due autorità distinte con poteri diversi:
Assegna l'attendibilità del dispositivo: solo l'OEM ha questa autorità.
Definisci l'insieme di dispositivi le cui VM costituiscono la mesh sicura SDV di un veicolo. L'OEM deve assegnare e controllare l'accesso; il personale che sostituisce le parti ha questa autorità.
Le sezioni seguenti descrivono i dettagli dell'appartenenza dei dispositivi mesh e dell'attendibilità dei dispositivi.
File uds_pubs
I dispositivi vengono identificati in modo univoco dalle rispettive chiavi pubbliche segrete univoche del dispositivo (UDS).
Quando una VM SDV Android entra nella mesh sicura SDV, diciamo concettualmente che il dispositivo su cui è in esecuzione la VM è entrato nella mesh sicura SDV.
Il file uds_pubs contiene le chiavi pubbliche UDS di tutti i dispositivi idonei a entrare nella mesh sicura SDV. Questo file viene creato nel flusso di provisioning di fabbrica e aggiornato nel flusso di sostituzione delle parti.
Questo file si trova nella partizione vvmtruststore.
L'inclusione in questo elenco non implica attendibilità. Affinché un dispositivo possa entrare a far parte della mesh sicura SDV, devono essere soddisfatte due condizioni:
- La chiave pubblica (o le chiavi) UDS deve essere in formato
uds_pubs. - Deve essere un dispositivo attendibile.
Metodi di attendibilità dispositivo
Affinché una VM Android SDV consideri attendibile un dispositivo in cui è in esecuzione una VM Android SDV peer, esistono due metodi:
- Il dispositivo contiene certificati UDS. Questo è il metodo preferito.
- I dispositivi sono associati in modo permanente durante il flusso di provisioning di fabbrica. Ciò è espresso da VVMFactoryTrust. Questo è il metodo alternativo che gli OEM possono utilizzare quando non è tecnicamente fattibile fornire certificati UDS ai dispositivi sulla catena di montaggio del veicolo (o prima).
Certificati UDS
La VM Android SDV peer può presentare un certificato UDS per la sua chiave pubblica UDS.
La chiave pubblica dell'autorità di provisioning radice UDS, che funge da
ancora di attendibilità definitiva per l'autenticazione del dispositivo, è definita nel file
vvmconfig.
I certificati UDS della VM sono archiviati nel file uds_certs nella partizione
vvmtruststore.
Il supporto per questo metodo di attendibilità del dispositivo è obbligatorio.
Associa i dispositivi con VVMFactoryTrust
I dispositivi di cui è stato eseguito il provisioning insieme possono essere associati in modo permanente, creando un gruppo attendibile che non si basa sui certificati UDS. In questo modo non sarà più necessario che l'infrastruttura a chiave pubblica associata generi questi certificati. Questa fiducia intrinseca è specifica per quel gruppo. Pertanto, se un dispositivo all'interno di questo gruppo vincolato viene sostituito, l'attendibilità stabilita per l'intero gruppo viene revocata.
Questo binding permanente viene ottenuto con VVMFactoryTrust, che è un hash del
file uds_pubs memorizzato nella memoria OTP (one-time-programmable).
Più nello specifico, si tratta di un valore di 32 byte che memorizza l'hash SHA256 di uds_pubs così come
era durante il provisioning. Questo valore viene passato a SDV Android come parametro
del kernel. Se VVMFactoryTrust archiviato
corrisponde all'hash di uds_pubs, i dispositivi identificati da queste chiavi pubbliche UDS
sono attendibili.
Per garantire che le persone autorizzate a eseguire solo la sostituzione di parti non ottengano l'autorizzazione ad assegnare l'attendibilità del dispositivo, devono ricevere solo dispositivi con un VVMFactoryTrust che non può essere scritto. Senza questa precauzione, un tecnico dell'officina potrebbe mescolare dispositivi autentici e non autentici durante la sostituzione completa dei dispositivi del veicolo.
Il supporto di questo metodo di attendibilità hardware è facoltativo e deve essere implementato solo se il provisioning dei certificati UDS sulla linea di assemblaggio del veicolo (o prima) non è fattibile.