🔏 Integração de assinatura eletrônica

Quem assina o documento e quem o verifica estão no mesmo sistema

O módulo reúne quatro caminhos de assinatura: assinatura eletrônica qualificada com cartão inteligente ou token USB, assinatura móvel por uma linha GSM, assinatura manuscrita desenhada na tela e imagem de assinatura manuscrita enviada de um arquivo. Todo documento assinado é gravado no livro de registro e pode ser consultado depois com um código de verificação.

  • A chave de assinatura nunca chega ao navegadorA assinatura qualificada é obtida pelo serviço local de assinatura em execução no computador do próprio usuário. O PIN do cartão e a chave privada nunca saem do dispositivo; só o documento assinado vai para o lado do servidor.
  • O registro da assinatura fica ligado ao documentoCada evento de assinatura é gravado no livro de registro com o signatário, o título do documento, o tipo de documento, o tipo de assinatura, a hora da assinatura, o resumo SHA-256 do arquivo e um código de verificação de dezesseis caracteres.

Pedir uma demonstração

Tipos de assinatura suportados

Os quatro caminhos abaixo estão configurados como abas distintas do módulo. Um tipo de assinatura que não esteja nesta lista não existe neste módulo.

Assinatura eletrônica qualificada

Assinatura com cartão inteligente ou token USB. O serviço local de assinatura encontra o dispositivo, lê o certificado, verifica o PIN e gera o documento assinado; o algoritmo de resumo é o SHA-256.

Assinatura móvel

Assinatura pela infraestrutura de assinatura móvel ligada a uma linha GSM. A adesão do número é consultada, uma solicitação de assinatura chega ao celular e a transação é consultada enquanto se aguarda a aprovação.

Assinatura manuscrita desenhada

Uma assinatura desenhada em uma tela de desenho com o mouse, uma caneta ou uma tela sensível ao toque. A cor da caneta pode ser escolhida e o desenho apagado e refeito; o resultado é armazenado em PNG como assinatura padrão do usuário.

Assinatura manuscrita enviada

Envio de uma imagem de assinatura já existente a partir de um arquivo. São aceitos PNG e JPEG, com no máximo 5 MB; a imagem é redimensionada no servidor para um limite de 600×200 e convertida para PNG.

Formatos de assinatura

O formato é escolhido conforme o tipo do arquivo que está sendo assinado; o módulo escolhe o certo olhando para a extensão do arquivo.

Formato Para qual documento Como é escolhido
PAdES-BESDocumentos PDFSelecionado automaticamente quando a extensão é .pdf; os relatórios exportados são assinados com esse formato.
XAdES-BESDocumentos XMLSelecionado automaticamente quando a extensão é .xml.
CAdES-BESOutros tipos de arquivoO formato padrão para todo arquivo que não seja PDF nem XML.

Nos três formatos, o algoritmo de resumo é o SHA-256. O documento assinado é baixado como um documento separado, ao lado do arquivo que foi assinado; o arquivo de origem não é alterado.

Fluxo da assinatura eletrônica qualificada

Cada um dos seis passos aparece na tela como um estado próprio; o usuário lê em qual passo se está esperando e onde travou.

  1. Checagem do serviçoPrimeiro é checada a conexão de rede e depois o serviço local de assinatura em execução no computador. Se o serviço estiver fechado, a tela mostra tanto o link de inicialização quanto o botão de nova tentativa.
  2. Busca de dispositivosAs leitoras de cartão inteligente e os tokens USB conectados são listados. Se não houver dispositivo, aparece um aviso para inserir o cartão; se houver mais de um dispositivo, você pode alternar entre eles.
  3. Leitura do certificadoO certificado do dispositivo selecionado é lido; o titular do certificado, o número de identificação, a autoridade emissora, o período de validade e o modelo do dispositivo aparecem na tela.
  4. Verificação do PINO PIN é formado só por dígitos, tem no máximo oito caracteres e não pode ser colado no campo. Um aviso aparece enquanto o Caps Lock estiver ligado; o valor digitado pode ser exibido quando solicitado.
  5. AssinaturaA barra de progresso mostra três etapas: verificando o PIN, assinando, concluído. A solicitação de assinatura é mantida por no máximo trinta segundos e volta como erro se nenhum resultado chegar.
  6. Resultado e registroO documento assinado é gerado e o evento de assinatura é gravado no livro de registro. Depois da primeira assinatura, é oferecido armazenar o PIN vinculado àquele dispositivo; a oferta pode ser recusada.

Fluxo da assinatura móvel

A assinatura móvel funciona de forma assíncrona: a solicitação é enviada, a aprovação é dada no celular e o sistema aguarda consultando o resultado.

  1. Consulta da adesãoConsulta-se se o número digitado tem assinatura móvel ativa. Se não tiver, o fluxo para antes de começar e o motivo é escrito na tela.
  2. Solicitação de assinaturaA solicitação é enviada junto com o texto descritivo que vai aparecer no celular; o usuário lê na própria tela qual documento está aprovando.
  3. Identificador da transaçãoQuando a solicitação é aceita de forma assíncrona, é devolvido um identificador de transação e a tela passa ao estado de aguardando aprovação no seu celular.
  4. Consulta de statusO resultado é consultado a cada três segundos e aguardado por no máximo noventa segundos. Se o tempo acabar, a transação se encerra por tempo esgotado e precisa ser iniciada de novo.
  5. ResultadoTrês resultados são tratados separadamente: assinado, cancelado pelo usuário, tempo esgotado. Quando um PDF é assinado, a assinatura é embutida no documento e uma cópia assinada é gerada.

Situações encontradas em campo

O módulo parte do pressuposto de que a assinatura raramente termina na primeira tentativa; oito situações são tratadas uma a uma.

Armazenar o PIN

Com o consentimento do usuário, o PIN é armazenado vinculado ao número de série do dispositivo. Na assinatura seguinte, o campo deixa de ficar vazio; o PIN armazenado pode ser excluído em um passo.

PIN errado

Quando um PIN errado é digitado, o aviso é exibido junto com o número de tentativas restantes; na última tentativa, o aviso fica ainda mais destacado.

Cartão bloqueado

Quando o PIN é bloqueado, a tela passa a um estado de aviso, o botão de nova tentativa é desativado e explica-se como desbloquear o cartão.

Aviso de Caps Lock

Enquanto o Caps Lock estiver ligado, aparecem um ícone de aviso e uma explicação curta ao lado do campo do PIN; evita-se um PIN digitado errado antes que ele queime uma tentativa.

Cartão retirado

Os dispositivos conectados são checados a cada cinco segundos. Se o cartão for retirado durante a operação, a tela volta à busca de dispositivos e informa que a conexão foi perdida.

Bloqueio da segunda aba

Se uma segunda aba do mesmo navegador iniciar uma assinatura, a outra aba fica bloqueada; impede-se que um único dispositivo atenda a duas solicitações ao mesmo tempo.

Certificado prestes a vencer

Um aviso é emitido quando faltam menos de trinta dias para o fim do certificado e um aviso crítico quando faltam menos de sete dias ou ele já venceu; a assinatura não abre com um certificado vencido.

Erro passageiro do dispositivo

Em erros passageiros, como a queda da sessão do cartão, a operação é repetida duas vezes sem mostrar erro ao usuário. Se o erro persistir, ele é registrado junto com o seu código de erro.

Livro de registro de assinaturas e verificação

Quem assinou o quê e quando continua podendo ser consultado depois que o documento assinado foi baixado.

  • Entrada no livro de registroCada evento de assinatura é gravado com o usuário signatário, a organização, o tipo de documento, o título do documento, o tipo de assinatura, a hora da assinatura, o endereço IP e as informações do navegador.
  • Resumo do arquivoO resumo SHA-256 do documento é registrado; ao consultar com o mesmo resumo, encontra-se o registro de assinatura ao qual o documento pertence.
  • Código de verificaçãoPara cada registro é gerado um código de verificação de dezesseis caracteres em quatro blocos; letras e dígitos que se confundem com facilidade não são usados no código.
  • Verificação por código QRNo documento exportado é impresso um código QR com o endereço de verificação; ao ler o código, consulta-se a validade do registro.
  • Lista do livro de registroOs registros de assinatura são filtrados por tipo de documento, tipo de assinatura e usuário; são pesquisados pelo título do documento e pelo código de verificação.

Entrar com assinatura eletrônica

A mesma infraestrutura serve tanto para a autenticação quanto para a assinatura de documentos.

Entrada com certificado

O número de identificação ou o endereço de e-mail extraídos do certificado de assinatura são conferidos com o registro do usuário; se não houver correspondência, nenhuma sessão é aberta.

Entrada com assinatura móvel

A solicitação de entrada chega ao celular e a sessão abre quando ela é aprovada; se a solicitação não for assinada ou for cancelada, a entrada é recusada.

Cookie de sessão

No fim da verificação, o token de sessão é emitido em um cookie que só o servidor consegue ler e vale por tempo limitado.

Perguntas frequentes

As cinco perguntas mais frequentes sobre tipos de assinatura, configuração e verificação.

Quais tipos de assinatura são suportados?
Quatro: assinatura eletrônica qualificada com cartão inteligente ou token USB, assinatura móvel por uma linha GSM, imagem de assinatura manuscrita desenhada na tela e imagem de assinatura manuscrita enviada de um arquivo. No módulo não existe nenhum outro tipo de assinatura.
É preciso instalar algo no computador para uma assinatura qualificada?
Sim. O serviço local de assinatura que conversa com a leitora de cartão precisa estar rodando no computador do usuário. O módulo checa o serviço na inicialização; se ele estiver fechado, aparecem na tela um link de inicialização e um botão para tentar de novo.
Uma imagem de assinatura manuscrita substitui uma assinatura qualificada?
Não. Uma imagem desenhada ou enviada é um registro aposto ao documento como assinatura visual. Uma assinatura criptográfica só é produzida pelos caminhos da assinatura eletrônica qualificada e da assinatura móvel; o tipo de assinatura é guardado separadamente no livro de registro, para que os dois nunca se misturem.
Como se consulta a autenticidade de um documento assinado?
Há dois jeitos: o código de verificação impresso no documento ou o resumo SHA-256 do arquivo. Os dois são procurados no livro de registro; quando um registro é encontrado, são devolvidos o título do documento, o tipo de documento, o tipo de assinatura, a hora da assinatura e o signatário.
O que acontece se o usuário não aprovar uma assinatura móvel?
A transação se encerra em um de três estados: cancelada pelo usuário, expirada por tempo esgotado ou erro devolvido pela infraestrutura. Se nenhuma aprovação chegar em noventa segundos, a solicitação expira e precisa ser iniciada de novo.
🔏 Integração de assinatura eletrônica

Veja o fluxo de assinatura com o seu próprio documento

Fale conosco para conversarmos sobre quais documentos serão assinados e como a verificação será configurada.

Falar com um especialista