Assinatura Digital

A assinatura digital é utilizada para provar a legitimidade dos dados enviados, usando técnicas de hash e algoritmo de chave assimétrica.

Categoria de Tecnologia

Postado em 07 junho 2022

Atualizado em 07 junho 2022

Palavras-chave: assinatura,digital,segurança,security,hash,chave,assimetrica,assimétrica,asymmetric

Visualizações: 854



O avanço da tecnologia trouxe grande aperfeiçoamento para a área de segurança da informação.

Hoje podemos autenticar os usuários de forma precisa, protegendo a confidencialidade e integridade dos dados transferidos através da internet.

Esse alto nível de segurança também possibilita a transferência de dados de grande importância, como transações de dinheiro, compra de produtos e gerenciamento de contratos.

Esse tipo de dado exige a autenticidade legítima no remetente para funcionar na prática. O que torna isso possível é a assinatura digital.

O que é a assinatura digital?

A assinatura digital é uma técnica usada para autentificar a legitimidade de uma mensagem. Além disso, também comprova a integridade dos dados, prevenindo adulterações de uma mensagem durante o caminho.

Onde a assinatura digital é usada?

É utilizada em processos que necessitam de um nível a mais de segurança. Exemplos são:

  • Email
  • Documentos digitais
  • Transações de cartões de crédito
  • Pagamentos de softwares

Além da segurança, a assinatura digital pode ser reconhecida como uma assinatura legal se tiver de acordo com os termos determinados por lei.

Como funciona a assinatura digital?

A assinatura digital é criada no dispositivo do remetente, que irá anexar essa assinatura junto com os dados. Após a anexação, esses dados serão criptografados e enviados.

O destinatário recebe os dados e descriptografa com a chave pública do remetente para verificar a assinatura.

No processo de criação de uma assinatura digital, duas técnicas são combinadas:

  1. Hash
  2. Chave assimétrica

Hash

O hash é uma técnica de criptografação unidirecional. Dado que encriptamos uma mensagem com um hash, jamais conseguiremos desencriptar essa mensagem de volta.

Chave assimétrica

A chave assimétrica utiliza a chave pública do destinatário para criptografar a mensagem a ser enviada. Quando a mensagem chegar ao seu destino, o destinatário irá descriptografar a mensagem com a chave privada.

Na assinatura digital a chave assimétrica pode funcionar um pouco diferente. Ao invés de utilizar a chave pública do destinatário, o remetente utiliza a própria chave privada para criptografação.

Processo da geração de assinatura digital

Usando um exemplo de criptografia com chave assimétrica, temos o gráfico abaixo:
assinatura digital

  1. O remetente termina de escrever a mensagem
  2. A mensagem é encriptada de modo unidirecional com o algoritmo hash
  3. A mensagem é mais uma vez encriptada, dessa vez com a chave privada do remetente
  4. A mensagem e a assinatura digital são enviados para o destinatário
  5. O destinatário encripta a mensagem recebida com o algortimo hash e descriptografa a assinatura com a chave pública do remetente
  6. A mensagem recebida encriptada é comparada com a assinatura digital que foi desencriptada com a chave pública

Caso o resultado seja dois hashs diferentes, a mensagem é considerada adulterada.

Conclusão

A assinatura digital é utilizada para provar a legitimidade dos dados enviados, usando técnicas de hash e algoritmo de chave assimétrica.

Ela traz mais segurança, principalmente em questão de integridade, comprovando que os dados não foram adulterados por terceiros durante o trajeto.

Projetos práticos

Desenvolvendo um jogo de quebra blocos em javascript

Programando um jogo clássico de arcade usando javascript e p5.js. O usuário deve quebrar os blocos utilizando uma bola ao mesmo tempo que evita que a bola saia pela parte inferior da tela

Criando um jogo de guerra nas estrelas em javascript usando a biblioteca p5.js

Jogo simples de guerra espacial desenvolvido em javascript. Esse jogo usa cálculos de física para simular efeitos de atrito e inércia.

Integrando Laravel com o protocolo MQTT para comunicação entre dispositivos

Projeto de comunicação entre dois dispositivos ESP8266 e Raspberrypi4. Laravel irá funcionar como servidor e receptor de dados de temperatura e umidade coletados com o DHT11.

Criando um sistema de integração contínua (CI/CD)

Fazendo a integração contínua de Jenkins, Sonatype Nexus, Sonatype, JUnit e Gradle para automatizar processos repetitivos. Prática bastante usada em tecnologias de DevOps.

Integrando o PHP com Elasticsearch no desenvolvimento de um sistema de busca

Projeto de criação de um sistema de busca usando o framework Symfony e Elasticsearch. A integração com Kibana também é feito de modo remoto com um raspberrypi.

Veja também

Qual é o papel das grandes empresas além de fornecer seu serviços?

Poluição do ar, solo e água ainda é um grande problema para ser resolvido ainda em vários países. Há estudos que comprovam que os países mais poluentes podem causar câncer...

A internet é uma terra sem lei. O que vai proteger a nossa rede interna da internet é o firewall

Uma rede interna sem um firewall é como se fosse uma casa com a porta destrancada. Um indivíduo com más intenções pode se aproveitar para a invadir quando menos esperamos.

Biometria em sistemas

Pode melhorar a segurança de um sistema em alguns aspectos, porém a principal vantagem é o melhoramento da experiência do usuário.

Blockchain Parte1

Blockchain pode ser interpretado como uma caderneta bancária, nela é registrado o histórico de todas as transações realizadas na nossa conta bancária.

RAT Remote Access Trojan

O RAT é um malware que tipicamente infecta o computador da vítima por um cavalo de tróia. Uma vez detectado, não é muito difícil sua remoção.

Criptomoeda

Pode ser usado como dinheiro para transações, mas diferente de uma moeda emitida pelo governo de um país, não possui um orgão emissor central.