O protocolo Authentication Header
é utilizado para garantir a autenticidade e a integridade de pacotes
IP. Sozinho, não provê qualquer confidencialidade. Em alguns
programas P2P para compartilhamento de arquivos, por exemplo, é
realizada a autenticação dos usuários e o teste de integridade dos
blocos de arquivos enviados. Entretanto, não há privacidade na
troca de pacotes.
Como o nome
sugere, o AH define um cabeçalho, que é acrescentado ao pacote IP.
Nele, estarão os dados de autenticação que serão verificados pelo
receptor da mensagem. Para computar e verificar os dados do AH, é
usada uma função de hash
como MD5 e SHA-1.
No envio da
mensagem, é calculada uma sequência de bits (chamada hash)
de acordo com uma chave secreta (estabelecida pela Security
Association) e
o conteúdo do pacote (excetuando campos variáveis do IP como TTL).
Para isso, é usado um algoritmo de hash,
também definido pela SA. Na recepção, o hash
é recalculado e comparado com o presente no AH. Como apenas os
comunicantes conhecem a chave utilizada, é possível verificar se o
pacote foi alterado, seja devido a erros ou a atitudes maliciosas.
Adicionalmente, de
acordo com a implementação, o AH pode prover serviços de
não-repúdio através do uso de assinaturas digitais. Para mais
informações, ver [9].
Figura 4: Localização do cabeçalho AH no modo transporte.
A autenticação se aplica a todo o pacote IP.
O cabeçalho estará
localizado de acordo com o modo de operação. No modo transporte, é
acrescentado entre o cabeçalho IP e o da Camada de Transporte. Já
no modo túnel, fica entre os dois cabeçalhos IP: o novo e o
original.