L'un de nos partenaires commerciaux nous demande d'utiliser un certificat TLS SHA256 pour se connecter à leurs API. Je ne sais pas comment générer ces demandes. J'ai utilisé openssl dans le passé pour créer ces demandes, mais il a généré un certificat SSL à l'aide de SHa1. Puis-je utiliser openssl pour générer cette demande? Sinon, comment puis-je générer ce qu'ils demandent?
Je ne suis pas un expert dans ce domaine, donc je ne sais même pas si ce que je demande a du sens.
Réponses:
Hachage CSR et hachage cert non liés
Le type de hachage sur la demande et sur le certificat réel n'est pas lié l'un à l'autre.
L'AC vérifie la signature sur le CSR. De cette façon, l'AC peut vérifier que le CSR n'a pas été modifié en transit. C'est tout ce que fait la signature sur le CSR.
Il n'y a aucun moyen officiel (ou même semi-officiel) de dire à une autorité de certification quel hachage vous voulez. Au lieu de cela, une entreprise CA peut exécuter plusieurs autorités de certification, dont l'une utilise exclusivement SHA256. Et si vous voulez SHA256, vous soumettez votre CSR sur le site Web de cette seule AC SHA256 uniquement. (Et pas sur le site Web de leur SHA1-CA.)
Ce qui est souvent théorisé est quelque chose comme ceci: "Si je soumets un CSR signé avec SHA1, alors mon certificat sera signé avec SHA1." Ce n'est généralement pas fait. ( Le seul CA que je connaisse qui le faisait depuis un certain temps était Gandi.net .)
Comment signer un CSR avec SHA256
Cela étant dit, utilisez le
-sha256
paramètre pour signer votre CSR avec SHA256 comme ceci:Comment vérifier le type de hachage d'une CSR
Et voici comment vous découvrez le type de hachage de votre CSR:
Bien. Il utilise SHA256 comme nous le voulions.
la source
Si vous utilisez OpenSSL, vous pouvez simplement ajouter l'
-sha256
option de ligne de commande, qui générera le CSR avec l'algorithme de signature SHA-256.la source