Uma assinatura remota é uma assinatura digital realizada com uma chave privada que não está disponível localmente, ou seja, em que o algoritmo de assinatura em si precisa ser computado remotamente. Como a realização do algoritmo pode depender de diversos fatores como latência de rede e intervenção do usuário, o processo de realizar assinaturas remotamente é inerentemente assíncrono, significando que o processo se inicia, espera-se a realização remota do algoritmo e só então finaliza-se o processo.Chamamos de assinaturas web remotas o caso especial de assinaturas remotas em que o processo de assinatura está sendo realizado numa aplicação web com o backend controlando o processo, porém utilizando um certificado do usuário, cuja chave privada está disponível somente no lado do cliente.Na maioria dos casos esta é a forma recomendada de implementar assinaturas web com nossos produtos (veja o artigo assinaturas web para exceções).Esse processo, em linhas gerais, ocorre da seguinte maneira:1.
O backend inicia a assinatura, gerando os bytes que precisam ser utilizados como entrada do algoritmo de assinatura utilizando a chave privada do usuário (chamados de "to-sign-data")
2.
O "to-sign-data" é transmitido para o lado do cliente
3.
O algoritmo de assinatura é realizado no frontend com a chave privada do certificado do usuário
4.
O resultado do algoritmo de assinatura é transmitido de volta ao servidor
5.
O backend finaliza o processo de assinatura
Isso é apenas uma visão geral. Existem passos adicionais, como ler a codificação binária do certificado no frontend e enviar
ao backend.
A forma recomendada de implementar assinaturas web remotas é utilizando o Rest PKI em conjunto com o Web PKI.Passo-a-passo#
2.
Escolha uma linguagem de programação
3.
Solicite-nos um projetos de exemplos
4.
Siga os passos para executar o projeto
5.
Uma vez executando o projeto, clique em algum dos exemplos de assinatura
Embora a solução envolva o Rest PKI em conjunto com o Web PKI (para as operações no backend e frontend respectivamente), concentre-se na documentação do Rest PKI que já mostra o uso dos dois produtos integrados.
Implementações alternativas#
Se você já possui uma biblioteca de terceiros para certificação digital ou deseja implementar o código do backend você mesmo, você pode também utilizar o Web PKI apenas para realizar as operações necessárias no frontend. Modified at 2024-12-03 19:02:48