Escolar Documentos
Profissional Documentos
Cultura Documentos
DISTRIBUÍDOS
Pedro Venda
Instituto Superior Técnico, Universidade Técnica de Lisboa
Portugal
pjlv@mega.ist.utl.pt
( )
descodifica a mensagem utilizando a sua chave privada: podem ver o conteúdo da primeira parte da mensagem
− +
m = K r K r (mk + ) (não vai encriptada) e, se pretenderem, podem também
r
descodificar o conteúdo da segunda parte da mensagem,
pois poderão ter em sua posse a chave pública da entidade
As entidades e e r referidas puderam assim comunicar e. Porém, apenas poderão concluir que a segunda parte da
seguramente (com confidencialidade) sem troca prévia de mensagem é uma cópia encriptada da primeira parte.
informação secreta. Em geral, qualquer entidade x que O receptor r recebe a mensagem e começa por processar a
possua a chave pública de uma outra entidade y pode descodificação da segunda parte da mensagem
enviar-lhe mensagens encriptadas (confidenciais) com a +
certeza de que y as pode descodificar. mi ( mi = K e (mk e − ) ). A verificação da integridade é
feita a partir da comparação de m com mi . Se a
Propriedade fundamental da criptografia assimétrica:
mensagem não foi alterada, então ambas as partes são
−
( +
)
K z K z ( m) = K z K z ( m) = m
+
( −
) iguais. Caso tenha havido corrupção intencional ou
acidental dos dados da mensagem, então as partes m e
( ) ( )
mi não são iguais e r assume que a mensagem está
f −1 K − , f ( K + , m) = f −1 K + , f ( K − , m) = m corrompida.
Nota: f −1 pode ser igual a f .
A entidade emissora é a única capaz de processar a
segunda parte da mensagem. Caso uma entidade x tente
forjar uma mensagem, r vai desencriptar a verificação
Uma mensagem encriptada ( mk + ) com a chave pública
x com a chave pública de e e não de x, resultando mi
+
da entidade x ( K x ) pode apenas ser desencriptada diferente de m .
correctamente através da utilização da chave privada da
− Os processos de encriptação e desencriptação são
mesma entidade x ( K x ).
computacionalmente pesados e geram mensagens
encriptadas tipicamente maiores em tamanho do que as
Ao mesmo tempo, uma mensagem encriptada ( mk − ) com mensagens por encriptar, proporcionando uma
y
ineficiência adicional. O processo adoptado para
−
a chave privada de uma entidade y ( K y ) pode apenas minimizar esta ineficiência é a utilização de funções de
hash na mensagem – digests (Figura 3).
ser recuperada através da desencriptação com utilização
+
da chave pública de y ( K y ). Esta utilização descrita não
serve como meio para atingir a confidencialidade, pois
+
como K y é pública, a mensagem mk − pode ser
y
Assinatura digital
A integridade das mensagens encriptadas trocadas entre
entidades pode ser garantida através da utilização da
criptografia assimétrica. A propriedade que confere esta Figura 3 – Mecanismo de assinatura digital baseado em funções de
possibilidade é a reversibilidade do algoritmo. digest. A mensagem assinada é composta pela concatenação da
mensagem original com a encriptação do digest da mesma, utilizando a
chave privada da entidade que gera a mensagem.
Supondo agora que e e r pretendem trocar mensagens não
confidenciais mas com conteúdo que não possa ser
alterado (total ou parcialmente). O emissor e envia a A função de hash calcula uma sequência de caracteres,
mensagem m com a sua identificação e uma verificação geralmente de tamanho fixo, a partir da mensagem de
de integridade – cópia da mesma mensagem mas comprimento arbitrário. O resultado deste cálculo é o
digest D(m) que protege a mensagem no sentido em que
se m se alterar (acidentalmente ou propositadamente) para
m’, então D(m’) será forçosamente diferente de D(m),
possibilitando a detecção da alteração. Para garantir
eficácia, o algoritmo de hash tem que ter as seguintes
características:
• Facilidade computacional do cálculo de D(m)
dado m;
• Função unidireccional (one-way). Não existe
algoritmo inverso que permita calcular m a partir
de D(m) [1];
• Resistência de colisão fraca (weak collision
resistance). Dada uma mensagem m e respectiva
hash D(m), é computacionalmente impossível
encontrar m’ diferente de m tal que D(m) =
D(m’) [1]; Figura 5 – Combinação dos métodos de encriptação de mensagens com
algoritmo de cifra assimétrica e assinatura digital. O emissor encripta a
• Resistência de colisão forte (strong collision mensagem m a enviar com a chave pública do receptor que depois a
resistance). Dada apenas a função de hash D(), é desencripta com a sua chave privada. Após a desencriptação, o receptor
computacionalmente impossível encontrar duas pode verificar a integridade da mensagem recebida como descrito na
figura 4.
mensagens diferentes m e m’ de forma a que
D(m) = D(m’) [1];
Certificação de chaves
A assinatura digital é confirmada no receptor através do
cálculo do digest da mensagem recebida e posterior Para a assinatura digital de mensagens foi assumido que a
comparação com a descodificação do digest recebido na entidade que envia a mensagem diz ao receptor quem é,
assinatura (Figura 4). de forma a que o receptor saiba usar a respectiva chave
pública para descodificar a assinatura digital.