Introdução ao HMAC

HMAC é o código de autenticação de mensagens baseado em hash. Existem vários algoritmos de compilação de mensagens disponíveis. O objetivo por trás do HMAC é reutilizar esses algoritmos de compilação de mensagens. Foi desenvolvido para implementar o ambiente de segurança para o protocolo da Internet. O HMAC funciona com qualquer algoritmo de resumo de mensagens. Ele usa o algoritmo de resumo da mensagem na mensagem original, também usa uma chave simétrica para criptografar o resumo da mensagem, que produz o MAC (código de autenticação de mensagem). O HMAC é semelhante ao MAC, a diferença está no HMAC, ele usa um algoritmo baseado em hash. O código de autenticação de mensagens baseado em hash também é usado no protocolo SSL (Secure Socket Layer). Além disso, o HMAC é mais rápido de calcular. Mesmo que a função hash subjacente seja interrompida, o HMAC ainda fornecerá melhor segurança. Neste artigo, discutiremos o conceito básico do Código de autenticação de mensagens baseado em Hash e está funcionando.

Como o HMAC funciona?

Vamos agora dar uma olhada no funcionamento do Código de autenticação de mensagens baseado em Hash.

Etapa 1: Torne o comprimento da chave simétrica igual a vários bits em cada bloco.

Existem três possibilidades: com base em cada uma, precisamos agir para igualar o comprimento da chave ao número de bits. O comprimento de uma chave é menor que o número de bits em cada bloco. Nesse caso, para igualar o comprimento de uma chave a vários bits, precisamos expandir o comprimento da chave adicionando muitos 0 bits.

O comprimento de uma chave é igual a vários bits em cada bloco. Nisso, não precisamos executar nenhuma ação, pois a chave é igual ao número de bits. O comprimento de uma chave é maior que o número de bits em cada bloco. Nesse caso, para igualar o comprimento da chave ao número de bits, precisamos aparar a chave aplicando o algoritmo de resumo da mensagem que usaremos para produzir o HMAC.

Etapa 2: XOR simétrico com almofada.

Nesta etapa, fazemos o XOR simétrico com o pad para produzir uma variável chamada S1.

Nota : pad = É uma sequência 00110110 repetida b / 8 vezes.

Etapa 3: anexe a mensagem original ao S1.

Nesta etapa, anexamos a mensagem original no final de S1.

Etapa 4: aplique o algoritmo de resumo da mensagem.

Nesta etapa, aplicamos o algoritmo de compilação de mensagens selecionado (MD5, SHA-1, SHA-512, etc) à saída da etapa 3. Vamos supor que a saída desta etapa 4 seja H

Etapa 5: chave simétrica XOR com almofada.

Nesta etapa, XOR a tecla simétrica com pad para produzir a variável chamada S2.

Nota : pad = É uma sequência 01011010 repetida b / 8 vezes.

Etapa 6: acrescente H a S2.

Nesta etapa, pegamos o resumo da mensagem que é calculado na etapa 4 e anexamos na e do S2 que é derivado na etapa anterior, ou seja, na etapa 5.

Etapa 6: algoritmo de resumo da mensagem.

Nesta etapa, aplicaremos o algoritmo de compilação de mensagens selecionado à saída da etapa 6. a compilação de mensagens gerada dessa etapa é o MAC final.

Desvantagens do HMAC

  • Vamos discutir alguns problemas que podemos enfrentar no Código de autenticação de mensagens baseado em Hash.
    Como discutimos anteriormente, o Código de autenticação de mensagens baseado em Hash usa uma chave simétrica. A chave simétrica significa a mesma chave usada pelo remetente e pelo destinatário. O problema que surge aqui é: como o remetente e o destinatário trocam a chave?
  • De alguma forma, o problema acima, a troca de chave simétrica está resolvida, não podemos usar o Código de autenticação de mensagens baseado em Hash no caso de mais de um receptor. isso ocorre porque o HMAC usa a chave simétrica para gerar MAC. A chave simétrica deve ser compartilhada apenas por duas partes, ou seja, remetente e destinatário.
  • Outro problema é que, se compartilharmos a simétrica com várias partes, como o destinatário sabe que a mensagem foi preparada e enviada pelo remetente, e não para outros destinatários, as chaves também são compartilhadas com eles, para que haja a possibilidade de fraude. receptores podem criar mensagens falsas.

Conclusão

Neste artigo, vimos o conceito básico do Código de autenticação de mensagens baseado em Hash e está funcionando.

Artigo recomendado

Este é um guia para o HMAC. Aqui discutimos a introdução ao código de autenticação de mensagens baseado em hash e seu trabalho com desvantagens. Você também pode consultar nossos artigos sugeridos para saber mais -

  1. Criptografia de chave simétrica com vantagens
  2. O que é teste de protocolo | Por que é usado?
  3. Introdução às 7 principais ferramentas IPS
  4. Introdução às ferramentas de teste de regressão