Introdução
No mundo da comunicação digital, é crucial garantir que as mensagens não sejam apenas mantidas em privado, mas também que não tenham sido adulteradas durante a transmissão (integridade) e que realmente venham do remetente alegado (autenticidade). Embora funções hash simples possam verificar a corrupção acidental de dados, elas não conseguem impedir a adulteração maliciosa, pois qualquer pessoa pode recalcular o hash de uma mensagem modificada.
É aqui que entra o HMAC (Hash-based Message Authentication Code - Código de Autenticação de Mensagem baseado em Hash). O HMAC é um tipo específico de MAC (Message Authentication Code) que combina uma função hash criptográfica (como SHA-256) com uma chave secreta. Apenas as partes que possuem a chave secreta podem gerar e verificar o HMAC para uma determinada mensagem. Este processo fornece tanto a integridade dos dados quanto a autenticidade.
Neste laboratório, você terá experiência prática com HMAC. Você começará entendendo o conceito e, em seguida, usará a poderosa ferramenta de linha de comando openssl para gerar chaves e calcular HMACs. Finalmente, você verá como implementar o HMAC em um script Python, uma tarefa comum no desenvolvimento de aplicações.



