Ir para o conteúdo principal

Integração da API de assinatura digital do Gov.Br

Integração da API de prova de vida do Gov.Br

Objetivo

Entender e avaliar a viabilidade de se utilizar o recurso do Gov.Br de reconhecimentoassinatura facialdigital nascomo nossascomplemento ferramentas,ou substituição, ao serviço já em produção Assine Aqui, tendo em vista que a aplicabilidade pode ser variante e interessando ao Estado.Estado e ainda implementar novidades que ainda não temos.

Justificativa

Com a assinatura do termo de parceria do Governo do Estado com o Ministério da Economia, obtivemos a oportunidade de utilizar os recursos oferecidos pelo GOV BR, como login único, assinatura digital e prova de vida. 

Propostas avaliadas

  1. IntegraçUtilização dado APIlogin de prova de vidaúnico(Gov.Br) como recursosassinaturas da atualização cadastralbásicas
  2. Integração da API de provaassinatura para assinaturas avançadas
  3. Integração da API de vidaassinatura comopara recursosassinaturas de autenticaçãoqualificadas
  4. Não utilização da API de prova de vidaassinatura

Envolvidos

  • DIEGO DA SILVA OLIVEIRA (Back-End Developer/Tech Leader)
  • KARINE NOGUEIRA DOS SANTOS (Gerente de Projetos)

Premissas

  1. A aplicação deve estar integrada ao Login Único do Gov.Br
  2. A aplicação em homologação deve estar liberada pela equipe do Ministério da Economia

Fluxo de integração da API de prova de vidaassinatura

  1. Redirecionar o usuário para o consentimento da utilização do seu certificado para realizar a assinatura, Requisitando o Endpoint de autenticação codificando a informação CLIENT_ID:CLIENT_ID, CLIENT_SECRET parae base 64 eREDIRECT_URI passando como parâmetro no headerbody comoda basicrequisição, auth,neste mesmo processo, em ambiente de produção, será enviado um código via SMS para o usuário, para que o mesmo possa confirmar na tela, com isso será possível capturar o access-token.Authorization Code.

  2. Iniciar uma transação de prova de vida.
    A Transação cria um pedido de Prova de vida paraCom o cidadãoAuthorization (CPF).Code Oem Cidadãomão, éserá informadopossível via push notification no aplicativo “Gov.Br”.
    Caso a Prova de vida não seja autorizada automaticamente,capturar o usuárioAccess (cidadão) pode autorizar por confirmação ou por biometria facial no app “Gov.Br”.

  3. Capturando a transação de prova de vidaToken do usuário.
    A
  4. transaç
  5. Após isso, é necessário consultar o certificado público do usuário, utilizanto o Access Token do usuário, chamando o endpoint específico para obtenção retornará,do certificado, que será retornado em casoformato PEM.
  6. Realizar a assinatura avançada utilizando o modelo PKCS#7, passando um HASH SHA-256 utilizando a chave privada do usuário. Será retornado um arquivo contendo o pacote PKCS#7 com a assinatura digital do HASH SHA256-RSA e com o certificado público do usuário.

  7. Validar a assinatura realizada enviando uma requisição ao https://verificador.staging.iti.br/inicio para garantir que a assinatura gerada é de autorizaçãofato automáticauma comassinatura selo,válida. 
  8. no
  9. O formatoprocesso JSON.
    Casopode oser usuáriovisto realizardetalhadamente validaçãoem facial antes dahttps://manual-integracao-assinatura-eletronica.servicos.gov.br/en/latest/iniciarintegracao.html#solicitacao-de-configuracao data definida no atributo “reusar_apartir”, a transação não é autorizada automaticamente, e retornará, no formato JSON as informações.

Avaliações das propostas

Integração da API de prova de vida como recursos da atualização cadastral
Prós
  1. Utilização de tecnologia mais avançada para realização de Prova de Vida, com uma base de dados de imagens sólidas capturada e mantidas pelo Tribunal Superior Eleitoral, com dados biométricos de mais de 96% dos eleitores do Estado de Rondônia, de acordo com levantamento do mesmo.

  2. Substituição de um fluxo totalmente defasado e passivo de erros ao qual a prova de vida atual, requer a verificação manual da "selfie" do servidor por um agente do estado, ao qual esse toma a decisão de aprovar ou recusar a imagem.
Contras
  1. Não garantia da execução da verificação da prova de vida no momento do pedido, precisando ser tratado e verificado pela aplicação se, e quando, a verificação de fato ocorrer.

  2. Requerer do usuário com perfil de acesso ao Gov.Br com selos prata ou acima, para poder utilizar o recurso da prova de vida pelo app.

  3. Ter o dado biométrico atualizado no Tribunal Superior Eleitoral, para que a acurácia da verificação da prova de vida seja realizada de maneira consistente.
Integração da API de prova de vida como recursos de autenticação
Prós
  1. Utilização de um recurso seguro como Two Factor Authentication

  2. Pode ser utilizado como controle biométrico para alterações de dados sensíveis
Contras
  1. Caso utilizado no processo de login, pode tornar o processo lento.

  2. Necessidade de manter cadastro biométrico no TSE regularmente atualizado.
Não utilização da API de prova de vida
Prós
  1. Não há necessidade de implementar o login único nas aplicações propostas(Sauron e Portal do Servidor)

  2. Não altera o fluxo atual de atualização cadastral

  3. Não altera o fluxo atual de autenticação e validação do usuário pelo e-mail.
Contras
  1. Continuamos utilizando um fluxo de prova de vida, que não é exatamente uma prova de vida, com validação manual por um agente do governo.

  2. Não conseguimos atender a necessidade do Iperon para validação da prova de vida dos aposentados.

  3. Caso haja a necessidade de implementar um recurso de prova de vida, precisaríamos de uma base de imagem sólida, com estudo para corrente atualização e implementação de recurso de análise de imagem trabalhando em concorrência com as aplicações.

Resultado esperado 

Após análise das avaliações propostas e das observações prós e contras a integração da API de prova de vida , é reconhecido as vantagens a adesão a este serviço, contudo com objetivo de integração ao serviço de atualização cadastral, para tornar o processo mais eficiente e tecnológico. Com base na implementação ao Serviço de autenticação (Sauron), não há vantagens em implementa-lo, tendo em vista que a habilitação de Two Factor Authentication pode ser realizada por N meios ao usuário, e com uma eficiência até mais rentável que a prova de vida do Gov.Br.

Outro ponto positivo para a opinião favorável, é a facilidade na integração com o recurso, permitindo uma flexibilidade da implementação da regra de negócio que envolve a realização da prova de vida, e a parceria que poderemos realizar com o IPERON.