Google si impegna a promuovere l'equità razziale per le comunità nere. Vedi come.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Biometrica

I fattori biometrici consentono l'autenticazione sicura sulla piattaforma Android. Il framework Android include l'autenticazione biometrica di volti e impronte digitali. Android può essere personalizzato per supportare altre forme di autenticazione biometrica (come Iris). Tutte le implementazioni biometrici devono soddisfare le specifiche di sicurezza e hanno un forte rating al fine di partecipare al BiometricPrompt di classe . La biometria viene misurata con l' Imposter Accept Rate (IAR) e lo Spoof Accept Rate (SAR) .

Per ulteriori dettagli sulle specifiche di sicurezza biometrica, vedere Misurazione della sicurezza di sblocco biometrico .

fonte

Android 10

  • Introduce la classe BiometricManager che gli sviluppatori possono utilizzare per interrogare la disponibilità dell'autenticazione biometrica.
  • Include l'integrazione delle impronte digitali e dell'autenticazione facciale per BiometricPrompt

Android 9

  • Include l'integrazione delle impronte digitali solo per BiometricPrompt .
  • Elimina la classe FingerprintManager. Se le app in bundle e di sistema utilizzano questa classe, aggiornale per utilizzare invece BiometricPrompt e BiometricManager .
  • Aggiornato il test del verificatore CTS di FingerprintManager per testare BiometricPrompt utilizzando BiometricPromptBoundKeysTest .

Implementazione

Per garantire agli utenti e agli sviluppatori un'esperienza biometrica senza soluzione di continuità, integra il tuo stack biometrico con BiometricPrompt . I dispositivi che abilitano BiometricPrompt per qualsiasi modalità, inclusi viso, impronte digitali e diaframma, devono rispettare questi requisiti di resistenza . Se non soddisfano i requisiti di resistenza, non possono implementare questa classe.
Per integrare il tuo stack biometrico con BiometricPrompt e BiometricManager :

  • Assicurarsi che il servizio <Modalità> sia correttamente collegato a BiometricService e agganci il metodo authenticate() . Le modalità comuni (impronte digitali, viso) si estendono da una superclasse comune. Se è necessario integrare una modalità non supportata, seguire l'esempio dell'impronta digitale / viso e le linee guida CDD per la biometria.
  • Assicurarsi che la nuova modalità sia supportata correttamente in SystemUI . Esistono interfacce utente BiometricPrompt predefinite per impronte digitali e viso
  • Aggiorna il framework per onorare i flag KEYGUARD_DISABLE_* per la biometria aggiunta.
  • Assicurati che il tuo dispositivo superi i test CTS e CtsVerifier per ogni modalità che hai integrato in BiometricPrompt / BiometricManager . Ad esempio, se si dispone sia dell'impronta digitale che della faccia, i test devono passare individualmente per ciascuno di essi.
Architettura biometrica rapida
Figura 1. Architettura di BiometricPrompt

Linee guida per l'implementazione di HAL

Seguire queste linee guida HAL biometriche per assicurarsi che i dati biometrici non vengano divulgati e rimossi quando un utente viene rimosso da un dispositivo:

  • Assicurarsi che i dati biometrici grezzi o derivati ​​(come i modelli) non siano mai accessibili dall'esterno del driver del sensore o di un ambiente isolato sicuro (come TEE o Secure Element).
  • Se l'hardware lo supporta, limitare l'accesso dell'hardware all'ambiente sicuro isolato e proteggerlo con una politica SELinux. Rendere il canale di comunicazione (ad esempio SPI, I2C) accessibile solo all'ambiente sicuro isolato con una politica SELinux esplicita su tutti i file del dispositivo.
  • L'acquisizione, la registrazione e il riconoscimento biometrici devono avvenire all'interno di un ambiente isolato sicuro per prevenire la violazione dei dati e altri attacchi. Questo requisito si applica solo alla biometria forte .
  • Archivia solo la forma crittografata di dati biometrici o derivati ​​sul file system, anche se il file system stesso è crittografato.
  • Per proteggerti dagli attacchi di tipo replay, firma modelli biometrici con una chiave privata specifica del dispositivo. Per Advanced Encryption Standard (AES), firma almeno un modello con il percorso del file system assoluto, il gruppo e l'ID biometrico in modo tale che i file modello non siano operativi su un altro dispositivo o per chiunque non sia l'utente che li ha registrati sullo stesso dispositivo . Ad esempio, impedire la copia di dati biometrici da un altro utente sullo stesso dispositivo o da un altro dispositivo.
  • Utilizzare il percorso del file system fornito dalla funzione set_active_group() o fornire un altro modo per cancellare tutti i dati del modello utente quando l'utente viene rimosso. Si consiglia vivamente di archiviare i file dei modelli biometrici come crittografati nel percorso fornito. Se ciò è impossibile a causa dei requisiti di archiviazione dell'ambiente sicuro isolato, aggiungere ganci per garantire la rimozione dei dati quando l'utente viene rimosso o il dispositivo viene cancellato.

Personalizzazione

Se il tuo dispositivo supporta più dati biometrici, l'utente dovrebbe essere in grado di specificare un valore predefinito nelle impostazioni. L'implementazione di BiometricPrompt dovrebbe preferire il biometrico forte come predefinito a meno che l'utente non lo ignori esplicitamente, quindi deve essere visualizzato un messaggio di avviso che spiega i rischi associati al biometrico (ad esempio, una foto di te potrebbe sbloccare il dispositivo )

Validazione

L'implementazione biometrica deve superare i seguenti test:

Inoltre, se il dispositivo supporta un biometrico con AOSP HIDL ( fingerprint@2.1 , face1.0 ), deve superare il relativo test VTS ( fingerprint , face )