1. Definições
  • Criptografia
É a ciência que manipula os dados de forma a proteger a informação que eles transmitem.
  • Criptografia com Chave Simétrica
Consiste em usar uma seqüência de bits (chave) para encriptar os dados que se quer proteger, e a mesma chave pra decriptá-los posteriormente. Essa encriptação pode ser feita permutando, expandindo, comprimindo, deslocando, substituindo e combinando os bits da chave com os bits do conteúdo original.
Apesar disso, a Criptografia com Chave Simétrica apresenta uma falha: para uma transmissão segura ser feita, a chave deve ser transmitida do emissor para o receptor sem que ninguém a intercepte. Se a chave for vista por alguém que não o destinatário esperado, toda a encriptação passa a ser inútil.
  • Criptografia com Chave Assimétrica
O problema levantado na Criptografia com Chave Simétrica é exatamente a motivação para o uso da chamada Chave Assimétrica. Essa outra forma de se estabelecer sigilo nas transferências de informações baseia-se na idéia de usar uma chave para encriptação (chave pública) e fazer a decriptação depender de uma outra chave, a chamada chave privada.
O ciclo de uso completo pode ser descrito da seguinte maneira:
1. Uma entidade gera um par de chaves (pública e privada) e distribui a chave pública abertamente para todos interessados em enviar uma mensagem sigilosa para ela.
2. Uma entidade que deseja enviar uma mensagem sigilosa, em posse da chave pública recebida, encripta a mensagem usando essa chave.
3. A entidade que gerou aquelas chaves, ao receber a mensagem encriptada, decripta a mesma usando sua chave privada.
Assim, desde que a chave privada seja mantida sob a guarda de sua criadora, pode-se garantir que o segredo da encriptação estará seguro.
O principal problema desse tipo de encriptação é o custo matemático (computacional) que ele impõe na geração da mensagem e na decriptação da mesma.
  • Assinatura digital
A infra-estrutura de chaves assimétricas pode ser usada para gerar assinaturas digitais, ou seja, pode-se usar essa tecnologia para garantir (teoricamente) que o interlocutor de uma comunicação é, de fato, quem ele diz ser. Se, por exemplo, A quer enviar dados para B, de modo que B saiba que foi realmente A quem enviou a mensagem, isso pode ser feito da seguinte maneira:
1. A aplica sua chave privada e a função de decriptação na mensagem.
2. Depois, A encripta a mensagem usando a chave pública de B e envia a mensagem.
3. B decripta a mensagem usando sua chave privada.
4. B encripta a mensagem com a chave pública de A e, com isso, espera ter o conteúdo original novamente.
Assim, garante-se que a transmissão foi segura e que o remetente (A) é quem diz ser.