Como no se recomienda SHA-1, quiero desactivar el algoritmo hash SHA-1. Usé la API de OpenSSL para establecer el algoritmo de firma en SSL_CTX,
static INT32 signAlgoList[24] = { NID_sha512, EVP_PKEY_RSA, NID_sha512, EVP_PKEY_DSA, NID_sha512, EVP_PKEY_EC,NID_sha384, EVP_PKEY_RSA, NID_sha512, EVP_PKEY_DSA, NID_sha384, EVP_PKEY_EC, NID_sha256, EVP_PKEY_RSA, NID_sha256, EVP_PKEY_DSA, NID_sha256, EVP_PKEY_EC, NID_sha224, EVP_PKEY_RSA, NID_sha224, EVP_PKEY_DSA, NID_sha224, EVP_PKEY_EC };
Lista de algoritmos de firma:
(void)SSL_CTX_set1_client_sigalgs(sCtxMutualAuth, (int *)signAlgoList, 24);
(void)SSL_CTX_set1_sigalgs(sCtxMutualAuth, (int *)signAlgoList, 24);
Después de incluir estas API en mi programa, SHA-1 está deshabilitado en Windows (no veo SHA-1 en los registros de Wireshark) pero aún así, SHA-1 no está deshabilitado en Linux (está mostrando SHA-1 en Wireshark registros). ¿Hay alguna otra manera de deshabilitar SHA-1 en Linux?