Assinatura Digital

O que são e como funcionam as assinaturas digitais?

Assinaturas digitais possuem diversas aplicações e estão presentes no dia-a-dia de muitos sistemas eletrônicos. Mas, às vezes, compreender suas características básicas pode ser um problema, especialmente quando as explicações são muito técnicas. Assim, através de uma analogia simples e relativamente agradável, esperamos que sua compreensão sobre assinatura digital melhore.

Como funcionam as assinaturas digitais?

Vamos fazer uma analogia à assinatura de próprio punho em papel.

Primeiro, imagine que Alice acabou de encaminhar para você um documento em papel assinado por ela. O método de assinatura foi o de próprio punho, tradicional para documentos físicos. Neste documento assinado estão presentes várias propriedades importantes.

  1. A primeira propriedade que pode ser verificada está relacionada à integridade do documento. Ou seja, pode-se saber se o documento sofreu alguma alteração ou é exatamente aquele que Alice assinou. A integridade do documento pode ser verificada visualmente por  modificações no papel ou rasuras na escrita do documento.
  2. A segunda propriedade que também pode ser verificada é a autenticação do signatário. Isto é, se o documento foi assinado pela pessoa identificada nele. A autenticação do signatário é feita comparando a assinatura presente no documento com a referência de assinatura da pessoa. Esta atividade é muitas vezes difícil de ser realizada pela maioria das pessoas, geralmente por não possuírem assinatura de referência. Devido a esta dificuldade, em algumas situações críticas é exigido o uso do reconhecimento de firma pelo cartório.
  3. Por fim, a terceira propriedade importante é a irretratabilidade (não repúdio) da geração da assinatura. Assim, caso a entidade signatária (Alice) negue que tenha assinado o documento é possível provar a autoria para um terceiro. Isso é realizado também verificando a assinatura, estando subentendido que nenhuma outra pessoa consegue reproduzir a assinatura de Alice.

Depois de entendidas as propriedades de uma assinatura de próprio punho em documento físico, vamos entender como é o cenário de assinatura digital para documentos eletrônicos. Aqui também estão presentes as mesmas propriedades. Ou seja, integridade do documento, autenticação do signatário e irretratabilidade (não repúdio) da geração da assinatura.

Mas, antes, precisamos entender alguns conceitos importantes sobre as assinaturas digitais.

Verificação de integridade em assinatura digital

Em computação, uma das maneiras que temos para verificar a integridade de um conjunto de dados é fazer uso de uma função que realize um cálculo sobre todos os bytes do conjunto de dados a fim de gerar um valor numérico, que vamos denominar aqui como código de integridade.

Assim, pode-se aplicar a função de integridade sobre os dados de um documento eletrônico e guardar o resultado (código de integridade) junto a ele. Quando for necessário verificar sua integridade no futuro, aplica-se novamente a função de integridade sobre o documento. Em seguida o resultado é comparado ao código de integridade já armazenado. Se for igual, o documento pode ser considerado íntegro. Essa técnica funciona bem para detectar problemas de integridade decorrentes de erros gerados em momentos com a transmissão e o armazenamento por exemplo. Entretanto, ela não é adequada para encontrar problemas de integridade ocasionados por atos intencionais. Neste caso, alguém poderia modificar o documento e aplicar a mesma função, alterando o código de integridade.

Para permitir a verificação de integridade contra atos intencionais, o código de integridade precisa ser protegido.

Assinatura digital

Para proteger o código de integridade contra alteração intencional pode ser utilizada criptografia assimétrica. Como explicamos aqui, criptografia assimétrica é aquela que utiliza um par de chaves, sempre lembrando que quando uma chave for utilizada para cifrar só a outra chave parceira pode ser utilizada para decifrar. Na criptografia assimétrica, o par de chaves fica associado à entidade (usuário ou equipamento). Geralmente, uma das chaves é tornada pública e a outra privada (secreta) e protegida pelo dono. Por esse motivo, a criptografia de chave assimétrica é bem flexível.

Vejamos onde a criptografia assimétrica pode ser útil nas assinaturas digitais. Imagine que Alice tenha criado um documento e para permitir a verificação da integridade do documento ela fez uso de uma função que gerou o código de integridade. Porém, como vimos, Alice precisa proteger esse código de integridade contra modificação. Ela pode utilizar sua chave privada (aquela secreta e que só ela conhece) para cifrar o código de integridade. Esta operação gera um outro valor que iremos chamar de código de assinatura. Agora, além do documento de Alice, existe também um código de assinatura associado a ele.

As pessoas que desejarem verificar a integridade do documento de Alice precisarão utilizar o código de integridade que está cifrado dentro do código de assinatura. Por exemplo, se Bob desejar verificar a integridade do documento de Alice, ele precisará decifrar o código de assinatura. Para isso, deve utilizar uma chave pública de Alice, já que Alice havia cifrado o bloco utilizando sua chave privada. O resultado desta operação restaura o código de integridade que havia sido cifrado. Em seguida, é executada a função de integridade sobre o documento, que verifica se o resultado é o mesmo do código de integridade.

Comprovação de integridade

Caso o código de integridade seja igual, significa que o documento está íntegro. Ainda mais, como foi utilizada a chave pública de Alice para decifrar o código de assinatura, é possível afirmar que foi ela quem realizou a assinatura, pois é a única que possui o controle de uso da chave privada. Por fim, caso Alice negue que tenha assinado o documento, Bob pode mostrar para um terceiro que, usando a chave pública de Alice, a verificação do código de integridade é bem sucedida. Dessa forma, somente Alice poderia ter realizado o procedimento.

Essa é a essência das assinaturas digitais. Toda vez que uma informação deve se manter íntegra, você, o remetente, tem que assinar a informação original com sua chave privada (aquela parte do seu par de chaves que seria usada apenas para ‘fechar’…). Em seguida, para que os interessados verifiquem a integridade da informação, eles devem determinar a validade de sua assinatura sobre a informação original utilizando a sua chave pública (aquela parte do seu par de chaves utilizada apenas para ‘abrir’…). Se houvesse qualquer modificação na informação original, por menor que seja, o processo de verificação avisa. É natural que a partir dessa explicação fique a pergunta de como o seu conhecido confia que a chave pública que ele tem em mãos é realmente sua. Mas, para responder essa pergunta entrariam em cena os certificados digitais e as cadeias de confiança, um assunto que deixaremos para outro post.

Por fim, vale lembrar que é comum misturar os termos assinatura digital e assinatura eletrônica. Só que essas são coisas bem distintas, conforme explicamos neste artigo.

Assine nossa Newsletter e fique por dentro das novidades e tecnologias da E-VAL. Continue acompanhando nossos conteúdos no blog e aproveitando nosso perfil do Linkedin.

E-VAL Tecnologia, uma empresa do Grupo E-VAL

A E-VAL Tecnologia atua há mais de 13 anos oferecendo soluções de segurança da informação para o mercado, pioneira em iniciativas no uso da certificação digital no Brasil, tais como SPB, COMPE, Autenticação, Assinatura digital de contratos, Gerenciamento de Chaves e Proteção de dados e armazenamento de chaves criptográficas para os seguimentos de instituições financeiras, educação e indústria.

Fale conosco, os especialistas da E-VAL Tecnologia terão o maior prazer em atendê-los, contribuindo para o desenvolvimento dos seus projetos e a melhoria contínua da segurança da informação para a sua instituição.

Siga-nos nas redes sociais:
error

Gostou do blog? Compartilhe já :D