Google is committed to advancing racial equity for Black communities. See how.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

Biometria

Fatores biométricos permitem autenticação segura na plataforma Android. A estrutura do Android inclui autenticação biométrica facial e de impressão digital. O Android pode ser personalizado para oferecer suporte a outras formas de autenticação biométrica (como Iris). Todas as implementações biométricas devem atender às especificações de segurança e ter uma classificação forte para participar da classe BiometricPrompt . A biometria é medida com a taxa de aceitação do Imposter (IAR) e a taxa de aceitação de falsificação (SAR) .

Para obter mais detalhes sobre as especificações de segurança biométrica, consulte Measuring Biometric Unlock Security .

Fonte

Android 10

  • Apresenta a classe BiometricManager que os desenvolvedores podem usar para consultar a disponibilidade de autenticação biométrica.
  • Inclui impressão digital e integração de autenticação facial para BiometricPrompt

Android 9

  • Inclui integração de impressão digital apenas para BiometricPrompt .
  • Obsoleta a classe FingerprintManager. Se seus aplicativos agrupados e de sistema usam esta classe, atualize-os para usar BiometricPrompt e BiometricManager .
  • Os testes do verificador FingerprintManager CTS foram atualizados para testar BiometricPrompt usando BiometricPromptBoundKeysTest .

Implementação

Para garantir que os usuários e desenvolvedores tenham uma experiência biométrica perfeita, integre sua pilha biométrica ao BiometricPrompt . Dispositivos que habilitam BiometricPrompt para qualquer modalidade, incluindo rosto, impressão digital e íris, devem cumprir esses requisitos de resistência . Se eles não atenderem aos requisitos de resistência, eles não poderão implementar esta classe.
Para integrar sua pilha biométrica com BiometricPrompt e BiometricManager :

  • Certifique-se de que seu serviço <Modality> está devidamente conectado ao BiometricService e conecta o método authenticate() . Modalidades comuns (impressão digital, rosto) se estendem de uma superclasse comum. Se você precisar integrar uma modalidade sem suporte, siga o exemplo de impressão digital / face e as diretrizes do CDD para biometria.
  • Certifique-se de que sua nova modalidade seja adequadamente suportada no SystemUI . Existem interfaces de usuário BiometricPrompt padrão para impressão digital e rosto
  • Atualize a estrutura para respeitar os sinalizadores KEYGUARD_DISABLE_* para a biometria adicionada.
  • Certifique-se de que seu dispositivo passe nos testes CTS e CtsVerifier para cada modalidade que você integrou em BiometricPrompt / BiometricManager . Por exemplo, se você tiver impressão digital e rosto, os testes devem passar individualmente para cada um deles.
Arquitetura BiometricPrompt
Figura 1. Arquitetura BiometricPrompt

Diretrizes de implementação de HAL

Siga estas diretrizes biométricas HAL para garantir que os dados biométricos não vazem e sejam removidos quando um usuário é removido de um dispositivo:

  • Certifique-se de que os dados biométricos brutos ou derivados (como modelos) nunca estejam acessíveis de fora do driver do sensor ou ambiente isolado seguro (como o TEE ou Elemento Seguro).
  • Se o hardware oferecer suporte, limite o acesso do hardware ao ambiente isolado seguro e proteja-o com uma política SELinux. Torne o canal de comunicação (por exemplo, SPI, I2C) acessível apenas para o ambiente isolado seguro com uma política SELinux explícita em todos os arquivos do dispositivo.
  • A aquisição, inscrição e reconhecimento biométrico devem ocorrer dentro de um ambiente isolado e seguro para evitar violações de dados e outros ataques. Este requisito se aplica apenas a dados biométricos fortes .
  • Armazene apenas a forma criptografada de dados biométricos ou derivados no sistema de arquivos, mesmo se o próprio sistema de arquivos estiver criptografado.
  • Para se proteger contra ataques de repetição, assine modelos biométricos com uma chave particular específica do dispositivo. Para o Advanced Encryption Standard (AES), assine no mínimo um modelo com o caminho absoluto do sistema de arquivos, grupo e ID biométrica de forma que os arquivos do modelo fiquem inoperantes em outro dispositivo ou para qualquer pessoa que não seja o usuário que os inscreveu no mesmo dispositivo . Por exemplo, evite copiar dados biométricos de um usuário diferente no mesmo dispositivo ou de outro dispositivo.
  • Use o caminho do sistema de arquivos fornecido pela função set_active_group() ou forneça outra maneira de apagar todos os dados do modelo do usuário quando o usuário for removido. É altamente recomendável que os arquivos de modelo biométrico sejam armazenados criptografados no caminho fornecido. Se isso for inviável devido aos requisitos de armazenamento do ambiente isolado seguro, adicione ganchos para garantir a remoção dos dados quando o usuário for removido ou o dispositivo for limpo.

Costumização

Se o seu dispositivo suportar biometria múltipla, o usuário deve ser capaz de especificar um padrão nas configurações. Sua implementação BiometricPrompt deve preferir o biométrico forte como o padrão, a menos que o usuário o substitua explicitamente, então uma mensagem de aviso deve ser exibida explicando os riscos associados ao biométrico (por exemplo, uma foto sua pode desbloquear seu dispositivo )

Validação

Sua implementação biométrica deve passar nos seguintes testes:

Além disso, se o seu dispositivo for compatível com uma biometria que tenha um AOSP HIDL ( fingerprint@2.1 , face1.0 ), ele deve passar no teste VTS relevante ( impressão digital , face )