Sobre o armazenamento de credenciais digitais

A API Credential Manager Holder permite que seu app de titular do Android (também chamado de "carteira") gerencie e apresente credenciais digitais aos verificadores.

Imagem mostrando a interface de credenciais digitais no Credential Manager
Figura 1. A interface do seletor de credenciais digitais.

Formatos de credenciais

As credenciais podem ser armazenadas em apps de carteira em diferentes formatos. Esses formatos são especificações de como uma credencial deve ser representada, e cada um contém as seguintes informações sobre a credencial:

  • Tipo: a categoria, como diploma universitário ou carteira de habilitação.
  • Propriedades: atributos como nome e sobrenome.
  • Codificação: a forma como a credencial é estruturada, por exemplo, SD-JWT ou mdoc.

  • Validade: método para verificar criptograficamente a autenticidade da credencial.

Cada formato de credencial faz a codificação e a validação de maneira um pouco diferente, mas, em termos funcionais, eles são iguais.

O registro é compatível com dois formatos:

Um verificador pode fazer uma solicitação OpenID4VP para SD-JWT e mdocs ao usar o Gerenciador de credenciais. A escolha varia de acordo com o caso de uso e o setor.

Registro de metadados de credenciais

O Gerenciador de credenciais não armazena as credenciais de um titular diretamente, mas sim os metadados delas. Primeiro, um app de carteira precisa registrar os metadados de credenciais no Gerenciador de credenciais usando RegistryManager. Esse processo de registro cria um registro que serve para duas finalidades principais:

  • Correspondência: os metadados da credencial registrada são usados para corresponder a solicitações futuras do verificador.
  • Exibição: os elementos da interface personalizados são mostrados ao usuário na interface do seletor de credenciais.

Use a classe OpenId4VpRegistry para registrar suas credenciais digitais, já que ela é compatível com os formatos de credencial mdoc e SD-JWT. Os verificadores vão enviar solicitações OpenID4VP para pedir essas credenciais.

Métodos de emissão de credenciais

A emissão de credenciais pode ser acionada de duas maneiras:

  • Fluxo iniciado pelo emissor: o usuário aciona uma solicitação para emitir um VDC de um aplicativo ou site do emissor. Por exemplo, um site pode oferecer aos usuários a opção de "Adicionar seu passaporte à carteira". O emissor chama a API de emissão do Gerenciador de credenciais para fazer uma solicitação de oferta de credencial OpenID4VCI. Para processar essas solicitações, o titular precisa primeiro se integrar ao Gerenciador de credenciais para registrar os metadados. O Gerenciador de credenciais vai mostrar opções relevantes para o usuário selecionar. Depois que o usuário selecionar uma opção de titular, o app do titular será invocado e poderá prosseguir com as etapas necessárias para concluir a emissão.
  • Fluxo iniciado pelo titular: o usuário solicita a adição de um VDC pelo app do titular. Por exemplo, um titular pode oferecer um botão para "Adicionar seu passaporte". Nesse caso, o titular mantém a lista de emissores compatíveis e os metadados. Ele não precisa se integrar ao Gerenciador de credenciais do Android para concluir essa função.