Autenticação de Mensagem
No último capítulo, discutimos as ameaças à integridade dos dados e o uso da técnica de hashing para detectar se algum ataque de modificação ocorreu nos dados.
Outro tipo de ameaça que existe para os dados é a falta de message authentication. Nessa ameaça, o usuário não tem certeza sobre a origem da mensagem. A autenticação de mensagens pode ser fornecida usando técnicas criptográficas que usam chaves secretas, conforme feito no caso de criptografia.
Código de autenticação de mensagem (MAC)
O algoritmo MAC é uma técnica criptográfica de chave simétrica para fornecer autenticação de mensagens. Para estabelecer o processo MAC, o emissor e o receptor compartilham uma chave simétrica K.
Essencialmente, um MAC é uma soma de verificação criptografada gerada na mensagem subjacente que é enviada junto com uma mensagem para garantir a autenticação da mensagem.
O processo de uso do MAC para autenticação é descrito na ilustração a seguir -
Vamos agora tentar entender todo o processo em detalhes -
O remetente usa algum algoritmo MAC conhecido publicamente, insere a mensagem e a chave secreta K e produz um valor MAC.
Semelhante ao hash, a função MAC também compacta uma entrada longa arbitrária em uma saída de comprimento fixo. A principal diferença entre hash e MAC é que o MAC usa uma chave secreta durante a compressão.
O remetente encaminha a mensagem junto com o MAC. Aqui, assumimos que a mensagem é enviada de forma clara, pois nos preocupamos em fornecer autenticação da origem da mensagem, não confidencialidade. Se a confidencialidade for necessária, a mensagem precisará ser criptografada.
Ao receber a mensagem e o MAC, o receptor alimenta a mensagem recebida e a chave secreta compartilhada K no algoritmo do MAC e recalcula o valor do MAC.
O receptor agora verifica a igualdade do MAC recém-calculado com o MAC recebido do remetente. Se corresponderem, o destinatário aceita a mensagem e certifica-se de que a mensagem foi enviada pelo remetente pretendido.
Se o MAC calculado não corresponder ao MAC enviado pelo remetente, o receptor não pode determinar se é a mensagem que foi alterada ou se é a origem que foi falsificada. Como resultado, um receptor assume com segurança que a mensagem não é genuína.
Limitações do MAC
Existem duas limitações principais do MAC, ambas devido à sua natureza simétrica de operação -
Establishment of Shared Secret.
Ele pode fornecer autenticação de mensagem entre usuários legítimos pré-decididos que possuem uma chave compartilhada.
Isso requer o estabelecimento de um segredo compartilhado antes do uso do MAC.
Inability to Provide Non-Repudiation
O não repúdio é a garantia de que o originador da mensagem não pode negar quaisquer mensagens enviadas anteriormente e compromissos ou ações.
A técnica MAC não fornece um serviço de não repúdio. Se o remetente e o destinatário se envolverem em uma disputa sobre a origem da mensagem, os MACs não podem fornecer uma prova de que a mensagem foi realmente enviada pelo remetente.
Embora nenhum terceiro possa computar o MAC, ainda assim o remetente pode negar o envio da mensagem e alegar que o receptor a falsificou, pois é impossível determinar qual das duas partes computou o MAC.
Ambas as limitações podem ser superadas usando as assinaturas digitais baseadas em chave pública discutidas na seção seguinte.