5. Authentication Header

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

Authentication Header
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.