Assinaturas MAC

Uma assinatura MAC é uma saída criptográfica usada para verificar a integridade e a autenticação dos dados. Um algoritmo de assinatura MAC permite executar duas operações diferentes:

  • Uma operação de assinatura, que usa uma chave para produzir uma assinatura MAC sobre dados brutos.

  • Uma operação de verificação em que a autenticidade da mensagem pode ser validada com a chave de assinatura e a tag MAC a serem verificadas.

Há duas finalidades principais de uma assinatura MAC:

  • Verifique a integridade dos dados assinados.
  • Verifique a autenticidade da mensagem.

Embora a finalidade das assinaturas MAC seja semelhante à das assinaturas digitais, elas dependem de criptografia simétrica. As tags MAC são geradas e verificadas usando a mesma chave secreta. O remetente e o destinatário de uma mensagem precisam ter a mesma chave para usar assinaturas MAC.

Exemplo de caso de uso para uma assinatura MAC

Os algoritmos MAC, como o código de autenticação de mensagens de hash com chave (HMAC, na sigla em inglês), são um excelente mecanismo de verificação da integridade de dados de transferência de arquivos devido à eficiência. As funções de hash podem pegar uma mensagem de tamanho arbitrário e transformá-la em um resumo de tamanho fixo, maximizando assim o uso da largura de banda.

Fluxo de trabalho de assinatura MAC.

A seguir, descrevemos o fluxo para criar e validar uma assinatura. Os dois participantes neste fluxo de trabalho são o assinante e o destinatário de dados.

  1. O signatário e o destinatário concordam em usar uma chave MAC específica e compartilhada.

    Ambas podem usar essa chave para criar ou verificar assinaturas MAC.

  2. O signatário realiza uma operação de assinatura nos dados para calcular uma tag MAC.

  3. O signatário fornece os dados e a tag MAC para o destinatário dos dados.

  4. O destinatário usa a chave MAC compartilhada para verificar a assinatura MAC. Se a verificação não foi bem-sucedida, os dados foram alterados.

Algoritmos de assinatura

O Cloud Key Management Service é compatível apenas com algoritmos de código de autenticação de mensagens de hash com chave (HMAC, na sigla em inglês) para assinatura MAC. Os algoritmos HMAC usam funções de hash criptográfica, como SHA-2 ou SHA-3, para calcular a tag MAC. A força da função HMAC depende da força da função hash, do tamanho da saída de hash e do tamanho da chave. Para mais informações sobre algoritmos de assinatura HMAC, consulte Algoritmos de assinatura HMAC.

Limitações

Ao usar o Cloud KMS para criar ou verificar assinaturas MAC, as seguintes limitações se aplicam:

  • Ao usar chaves do Cloud HSM, o tamanho máximo do arquivo a ser assinado é de 16 KiB.

  • Para todas as outras chaves, o tamanho máximo do arquivo a ser assinado é de 64 KiB.

A seguir