2017-08-22 3 views
-2

J'essaie d'obtenir le numéro de série SSL à partir d'un certificat mais Windows affiche les zéros de tête, mais unix ne l'est pas, j'utilise openssl x509 sous unix pour extraire le numéro de série, savez-vous pourquoi ou comment résoudre ce problème?Les certificats SSL contenant les zéros sont affichés dans Windows mais pas Unix | ksh shell

Unix Exemple:

openssl x509 -noout -in ssl.extracted.crt -serial 

Unix sortie Exemple:

D01E408B 

Ouvrez le certififcate dans les fenêtres et ressemble à ceci le numéro de série:

00D01E408B 

Répondre

1

Entiers don » t avoir des zéros en tête. Les chaînes d'octets représentant des entiers (sous forme non-DER) peuvent avoir des zéros en tête, mais vous ne devez pas confondre le type de données avec sa représentation. OpenSSL affiche la forme correcte DER du numéro de série numéro dans les certificats.

zéros de tête sont nécessaires à la représentation d'entiers positifs DER dont quartet le plus significatif est dans la plage de 8 à F. Dans le cas contraire le bit de tête causerait l'entier doit être interprété comme négatif. Source

Vous pouvez explorer le contenu réel du certificat avec openssl asn1parse.

+0

J'ai été essayé trop de la commande de ce sujet et je n'ai eu aucune chance avec elle ... –