CyberGlossary

Criptografia

Código de autenticação de mensagem (MAC)

Também conhecido como: MAC, Soma criptográfica

Definição

Tag curta de chave simétrica que autentica uma mensagem e deteta adulteração, calculada e verificada com o mesmo segredo partilhado.

Um Message Authentication Code (MAC) é uma tag de tamanho fixo calculada sobre uma mensagem com uma chave secreta simétrica, sendo a verificação feita com a mesma chave. Garante integridade e autenticidade, mas não não-repúdio, já que ambas as partes detêm a chave. Construções comuns incluem o HMAC (baseado em hash, RFC 2104), o CMAC (CBC-MAC, NIST SP 800-38B), o GMAC (usado no GCM), o Poly1305 (combinado com ChaCha20 no ChaCha20-Poly1305) e o KMAC (sobre Keccak/SHA-3). Os MAC sustentam a autenticação de registos TLS, IPsec AH, JWT HS256, assinatura de pedidos de API e modos AEAD; a comparação da tag deve ser feita em tempo constante para evitar canais laterais temporais.

Exemplos

  • O HMAC-SHA-256 autentica pedidos no AWS Signature Version 4.
  • O Poly1305 autentica o texto cifrado no AEAD ChaCha20-Poly1305 usado pelo TLS 1.3.

Termos relacionados