Assinaturas digitais: O que são e como usá-las?

digital signature

Você provavelmente já deve ter se deparado com o termo “assinaturas digitais” on-line. Talvez já tenha até mesmo assinado e-mails ou documentos digitalmente. No entanto, uma assinatura digital não é o mesmo que uma assinatura eletrônica.

Embora possa ser tão simples quanto uma senha, a assinatura digital emprega métodos criptográficos para verificar a identidade do autor e garantir a integridade de documentos.

Neste guia, abordaremos tudo o que você precisa saber sobre assinaturas digitais, incluindo:

  • O que é uma assinatura digital;
  • O que a diferencia das assinaturas eletrônicas;
  • Como enviar e-mails assinados digitalmente;

… e muito mais! Então, sem mais delongas, vamos explorar.

Mailfence - Obtenha seu e-mail seguro e gratuito.

4.1 baseado em 177 avaliações de usuários

Mailfence - Get your free, secure email today.

4.1 based on 177 user reviews

O que é uma assinatura digital?

Antes de mais nada, vamos definir o que é uma assinatura digital.

Uma assinatura digital é um tipo de assinatura eletrônica que usa técnicas criptográficas para verificar a identidade do signatário e garantir a integridade do documento.

Em outras palavras, este recurso funciona basicamente como um “impressão digital” virtual. Uma vez aplicado, ele pode ser uma parte incorporada do documento ou existir separadamente.

As assinaturas digitais têm três funções essenciais:

  • Verificação do remetente: confirmar que o remetente é mesmo que afirma ser;
  • Integridade: garantir que a mensagem tenha sido alterada durante o trânsito;
  • Irretratabilidade: impedir que o remetente volte atrás e negue ter enviado a mensagem, dependendo do tipo de assinatura digital.
Um e-mail assinado digitalmente no aplicativo móvel Mailfence.
Um e-mail assinado digitalmente no aplicativo móvel Mailfence.

Isso faz com que as assinaturas digitais sejam mais seguras do que as assinaturas feitas a mão. Afinal, nem sempre é possível garantir a autenticidade das assinaturas manuscritas, e muito menos que o documento assinado não foi alterado.

As assinaturas manuscritas são exclusivas para cada pessoa (estilo de caligrafia, velocidade de escrita etc.). No entanto, elas podem ser facilmente falsificadas com um pouco de prática ou com a ajuda de um papel vegetal.

O resultado é a fácil retratabilidade de assinaturas feitas a mão. Hipoteticamente, caso quisesse voltar atrás, o signatário só precisaria alegar que alguém copiou a sua assinatura e seria bem difícil provar que este não é o caso.

É por isso que precisamos de assinaturas digitais 👇

Assinatura digital e assinatura eletrônica: Qual é a diferença?

Como já mencionamos, as assinaturas digitais são um tipo de assinatura eletrônica. É importante esclarecer, no entanto, que nem toda assinatura eletrônica é uma assinatura digital.

O termo assinatura eletrônica é usado para descrever qualquer tipo de autenticação feita virtualmente. Isso inclui senhas, códigos PIN ou até mesmo uma simples imagem de sua assinatura:

Exemplo de uma assinatura eletrônica simples.
Exemplo de uma assinatura eletrônica simples.

Aqui está uma rápida comparação entre assinaturas eletrônicas e assinaturas digitais:

RecursoAssinatura eletrônicaAssinatura digital
FinalidadeVerificação de documentosProteção de documentos
VerificaçãoNão pode ser verificadoPode ser verificado
Regulamentação para terceirosPode estar sujeito a regulamentações variadas com base na jurisdição (como a eIDAS na UE ou a Lei ESIGN nos EUA).A legitimidade jurídica é dada, dependendo da jurisdição, pelo nível de garantia fornecido pelas técnicas e protocolos criptográficos usados (como as assinaturas eletrônicas qualificadas de acordo com o eIDAS).
CriptografiaNão usa algoritmos criptográficosCriado usando algoritmos criptográficos
VantagemFácil de usar (mas sem segurança de dados)Fornecer recursos de segurança de dados usando métodos criptográficos
Tabela de comparação

Como funcionam as assinaturas digitais?

Já definimos o que é uma assinatura digital e por que ela é uma forma mais avançada de assinatura eletrônica.

Agora, vamos nos aprofundar em como elas realmente funcionam.

Em primeiro lugar, as assinaturas digitais requerem apenas que o remetente (ou signatário) tenha duas chaves criptográficas (uma chave privada e uma chave pública).

A chave privada é usada pelo remetente para assinar a mensagem em seu dispositivo. Em seguida, a chave pública (certificado digital) é utilizada pelo destinatário para verificar a sua autenticidade.

Na prática, funciona assim:

  1. Alice (remetente) gera um par de chaves criptografadas e compartilha o seu certificado digital com o Beto;
  2. A Alice assina o documento com a sua chave privada e envia a mensagem para o Beto;
  3. O Beto recebe o documento e verifica a assinatura utilizando o certificado digital compartilhado pela Alice.

Para saber mais, não deixe de conferir este guia sobre chaves públicas e privadas. As assinaturas digitais tambbém podem ser geradas usando algoritmos criptográficos classificados como simétricos.

Assinatura digital de um e-mail com o Mailfence.
Assinatura digital de um e-mail com o Mailfence.

Assinaturas digitais em nível técnico

Em um nível mais técnico, o envio de um e-mail assinado digitalmente seguirá estas etapas:

  • A assinatura começa com a obtenção de um hash criptográfico da mensagem original;
  • O hash é criptografado com a chave privada do remetente e enviado com a mensagem original;
  • O destinatário recebe a mensagem original e seu hash criptografado;
  • O destinatário, então, descriptografa o hash criptografado usando a chave pública do remetente e o compara com o hash da mensagem original;
  • Se ambos os hashes forem iguais, a assinatura digital será verificada.
Processo de assinatura digital
Fonte: Wikipedia

Para entender completamente como funcionam as assinaturas digitais, precisamos ser um pouco técnicos. Especificamente, precisamos discutir dois modelos comuns diferentes nos quais elas se baseiam.

O primeiro é o PKI ou Public Key Infrastructure. Isso significa que o certificado digital usado pela Alice deve ser gerado por uma Autoridade Certificadora (AC), como a Verisign, por exemplo.

Em outras palavras, a AC funciona como uma ponte entre signatário e destinatário, permitindo que a legitimidade do documento seja validada por ambas as partes.

No entanto, autoridades centralizadas nem sempre são confiáveis (devido a razões sociopolíticas, por exemplo.

A alternativa é o modelo de confiança Web of Trust ou Pretty Good Privacy (PGP). Nele, cada usuário tem acesso a um conjunto de chaves públicas que permite a verificação do remetente sem que a intervenção da AC seja necessária.

As assinaturas digitais são o mesmo que criptografia de ponta a ponta?

Embora sejam semelhantes, os conceitos não são os mesmos.

A diferença mais notável é que, com a criptografia de ponta a ponta, ambas as partes precisam de seu próprio par de chaves pública/privada.

Por outro lado, você pode enviar um e-mail assinado digitalmente para alguém que não tenha gerado um par de chaves.

Aqui está um resumo rápido:

Criptografia de ponta a pontaAssinaturas digitais
Usado para criptografar informações confidenciais em um e-mail ou documentoUsado para verificar a autenticidade e a integridade do documento ou da mensagem de e-mail
A chave pública do destinatário é usada para criptografar os dados no e-mail ou documentoA chave pública do remetente é usada para verificar a assinatura
A chave privada é usada para descriptografar os dados do e-mail pelo destinatárioA chave privada é usada para assinar o documento pelo remetente
Diferenças entre E2EE e assinaturas digitais

Se você quiser se aprofundar mais na criptografia de ponta a ponta, consulte nosso guia completo.

No entanto, as assinaturas digitais podem ser combinadas com a criptografia de ponta a ponta. Isso proporciona maior segurança, conforme exploraremos na seção a seguir.

Como enviar e-mails assinados digitalmente

Agora que você sabe o que é uma assinatura digital, como enviar uma?

O processo exato pode varia de acordo com cada provedor de e-mail.

Para começar, o mais fácil é criar uma conta gratuita do Mailfence e seguir as seguintes etapas.

Primeiro, gere seu par de chaves e compartilhe sua chave pública com o destinatário. A seguir:

  • Em nossa interface da Web, escreva seu e-mail e digite o endereço de e-mail do destinatário. Em seguida, clique na seta suspensa ao lado de “Enviar” e selecione “Assinar e enviar”. Digite sua senha e clique em OK.
  • Em nosso aplicativo móvel, ao redigir uma mensagem, toque no ícone “Bloquear” no canto superior direito da tela. Selecione “Signed with OpenPGP” (Assinado com OpenPGP).

É simples assim!

A propósito, se você ainda não o fez, certifique-se de baixar nosso aplicativo móvel na App Store ou na Google Play Store!

Como mencionado anteriormente, você pode combinar a criptografia E2E com assinaturas digitais. Isso proporciona maior segurança às suas comunicações. No Mailfence, se você decidir criptografar seu e-mail por E2E, ele também será assinado automaticamente:

Combinação de criptografia de ponta a ponta com assinaturas digitais.
Combinação de criptografia de ponta a ponta com assinaturas digitais.

Práticas recomendadas de assinaturas digitais

Antes de concluir este guia, vamos examinar algumas práticas recomendadas ao enviar e-mails assinados digitalmente.

Dica nº 1: Use assinaturas digitais ao enviar e-mails com anexos

A assinatura digital de e-mails com anexos também tranquiliza o destinatário do e-mail. Além disso, ela garante que tanto o conteúdo quanto o anexo não tenham sido adulterados durante o transporte. Isso aumenta o valor legal do e-mail.

Dica nº 2: Use uma chave forte ao assinar digitalmente

Use chaves privadas baseadas em comprimento de 4096 bits (ou pelo menos 2048 bits) para assinar suas mensagens digitais. Por padrão, o Mailfence sempre gera chaves RSA de 4096 bits.

Dica nº 3: Use uma subchave

Neste guia, abordamos como a criptografia e a assinatura são duas operações diferentes.

Portanto, elas exigem duas abordagens diferentes de gerenciamento de chaves. As assinaturas digitais podem ser mantidas por mais tempo, pois é conveniente que as pessoas em todo o mundo possam verificar assinaturas do passado. As chaves de criptografia, por outro lado, devem ser alteradas regularmente, por meio da revogação/expiração.

Portanto, armazenar o seu par de chaves externamente como um “par de chaves mestre” (por exemplo, em uma unidade flash) e usar uma subchave como “chave local” para assinar mensagens é uma boa prática.

Este artigo fornece uma lista de etapas que você deve seguir para gerar chaves de criptografia. Em seguida, você pode importá-las para o armazenamento de chaves da sua conta do Mailfence para usá-las sem problemas em todos os seus dispositivos.

Observação: 1) O par de chaves que contém apenas subchaves (para assinatura e criptografia) e um pacote de chaves privadas fictícias (uma extensão GNU do OpenPGP) pode não ser compatível com todos os programas compatíveis com o OpenPGP.
2) Manter a chave secreta primária em mídia removível torna a assinatura (ou certificação) de outras chaves GPG problemática, pois a chave secreta primária deve ser carregada para que a assinatura seja feita.
3) O uso de datas de expiração com as subchaves (recomendado) significa que as subchaves devem ser estendidas antes de expirarem ou que novas subchaves devem ser emitidas se for permitido que elas expirem.
4) Além disso, as pessoas que usam sua chave pública (ou seja, para verificar algo que você assinou) podem receber erros sobre a expiração da sua chave se não atualizarem regularmente seus chaveiros GPG com servidores de chaves públicas.

Dica nº 4: Peça a amigos e colegas que assinem sua chave pública

Ter assinaturas de confiança em sua chave aumentará a legitimidade dela. Peça a seus amigos/colegas que assinem sua chave. Em troca disso, você deve assinar a chave pública deles.

Como alternativa, o keybase.io é um modelo operacional que mapeia sua identidade para suas chaves públicas e vice-versa.

Dica nº 5: Assine sua mensagem para cada um dos destinatários

Sim, inclua o endereço de e-mail do remetente e do(s) destinatário(s) com registros de data e hora em sua assinatura digital! (adicionando-os ao corpo da mensagem). Você também pode usar um serviço que ofereça proteção suficiente contra ataques de repetição (nonce, tokens de sessão, carimbo de data/hora etc.).

Dica nº 6: Tenha cuidado ao encaminhar mensagens assinadas digitalmente

Vejamos o caso de uma mensagem assinada digitalmente por Alice para Beto e agora encaminhada para Carol. Somente a identidade do remetente original (Alice) é comprovada para o destinatário.

Carol não pode presumir que Beto, que encaminhou a mensagem, é o proprietário da assinatura digital e/ou é o remetente correto da mensagem. A menos que a mensagem encaminhada seja assinada pelo próprio Beto.

Dica nº 7: Verifique a impressão digital da chave do remetente com antecedência

Se possível, obtenha a impressão digital da chave do remetente com antecedência (de preferência pessoalmente) ou, se o remetente for uma pessoa conhecida, faça uma pesquisa on-line.

Além disso, sempre verifique o par de chaves usado para assinar uma mensagem com a impressão digital.

A verificação automática (correspondência entre o hash descriptografado e o hash da mensagem original) é uma coisa. Mas ela não protegerá você de ataques de spoofing, em que um invasor pode criar uma identidade falsa do remetente e usá-la para enganar os destinatários.

Portanto, uma impressão digital deve ser sempre o único fator criptográfico na verificação de chaves públicas.

Dica nº 8: Certifique-se de que a chave de assinatura não tenha sido revogada ou expirado

Certifique-se de que a chave que foi usada para assinar uma determinada mensagem não foi revogada ou expirou! Esse é um ponto importante! Os aplicativos geralmente não exibem isso claramente para o usuário. No Mailfence, todos esses casos são exibidos adequadamente.

No entanto, se a assinatura de uma mensagem tiver ocorrido antes da data de expiração e/ou revogação da chave de assinatura, a assinatura digital permanecerá válida.

Dica nº 9: Exporte mensagens com assinaturas digitais localmente

Como o comprometimento de contas é mais comum atualmente, é melhor manter uma cópia local das mensagens de alta importância ou valor, exportando-as para o seu computador.

Além disso, você pode aumentar a sua segurança criptografando os seus dados localmente também.

Uma assinatura digital pode ser usada para responsabilizar alguém como autor de uma determinada mensagem. Entretanto, o valor legal exato das assinaturas digitais depende de onde a assinatura foi feita e das leis locais.

No entanto, sempre há certos termos que precisam ser acordados antes de usar assinaturas digitais em um contexto jurídico. Uma questão é a possibilidade de que a chave privada do signatário seja comprometida. O que deve ser feito nesse caso para verificar se o comprometimento foi real ou deliberado?

Observação: se você não fizer questão da irretratabilidade casos excepcionais, use esquemas baseados em autenticação negável!

Conclusão

Com isso, você conclui este guia sobre assinaturas digitais!

As assinaturas digitais OpenPGP são amplamente utilizadas porque simplificam o manuseio de chaves públicas, eliminando a necessidade de validação por uma autoridade de certificação centralizada, conforme exigido na PKI.

No Mailfence, tornamos o processo de assinatura digital muito simples. Se você usar as práticas recomendadas de assinatura digital OpenPGP mencionadas acima, poderá aproveitar ainda mais o uso da assinatura digital.

Recomendado para você