É 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.
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.