Siccome SHA-1 non è raccomandato, voglio disabilitare l'algoritmo hash SHA-1. Ho usato OpenSSL API per impostare l'algoritmo della firma su 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 };
Elenco algoritmi di firme:
(void)SSL_CTX_set1_client_sigalgs(sCtxMutualAuth, (int *)signAlgoList, 24);
(void)SSL_CTX_set1_sigalgs(sCtxMutualAuth, (int *)signAlgoList, 24);
Dopo aver incluso queste API nel mio programma, SHA-1 è disabilitato in Windows (non vedo SHA-1 nei log di Wireshark) ma, ancora SHA-1 non è disabilitato in Linux (mostra SHA-1 in Wireshark tronchi). C'è un altro modo per disabilitare SHA-1 in Linux?