Ao ler o manual do OpenVPN 2.3, me deparei com a opção --auth alg
. O manual diz:
Autentique pacotes com HMAC usando o algoritmo de compilação de mensagem
alg
. (O padrão é SHA1). HMAC é um algoritmo de autenticação de mensagem (MAC) comumente usado que usa uma string de dados, um algoritmo de hash seguro e uma chave para produzir uma assinatura digital.
Pelo que entendi, HMAC é apenas uma maneira preferida de fazer um MAC a partir de uma função hash, evitando potencialmente as propriedades de extensão de comprimento de algumas funções hash.
Portanto, o algoritmo especificado na opção --auth
deve ser uma função hash.
Agora, se eu fizer openvpn --show-digests
para saber quais algoritmos posso usar com a opção --auth
Também recebi entradas como:
RSA-SHA, DSA-SHA, ECDSA-WITH-SHA1 ... etc.
Estas são as assinaturas digitais algoritmos, por que eles devem ser usados no HMAC? Para obter uma espécie de "autenticação dupla"? Não é um exagero?
Ou significa que, neste caso, o HMAC é realmente substituído pela assinatura digital para obter autenticação? Se for esse o caso, o que é melhor usar em termos de segurança?