Commentaires
- Cela semble être plus une question pour Stack Overflow. Voir. par exemple. stackoverflow.com/questions/17143606/…
- Il serait raisonnable de mettre en œuvre avec openssl api autant de fonctionnalités que possible.
Réponse
Cest très facile de faire cela avec openssl.
Dites que foo.crt est votre fichier crt. Ensuite,
$ openssl x509 -in foo.crt -text -noout
affichera toutes les informations nécessaires (émetteur, pkey: module rsa et exposant, algorithme de signature, etc.) au format texte.
Si vous donnez
$ openssl x509 -in foo.crt -text -noout > foo.txt
vous sauvegarderez les informations précédentes dans le fichier foo.txt.
Pour répondre à votre question
Pouvez-vous me dire comment extraire de ce fichier la clé publique prête à être utilisée au format hexadécimal (octet)?
une façon de faire est dabord dexporter la clé publique, puis de la convertir au format hexadécimal
$ openssl x509 -in foo.crt -noout -pubkey > foo-public $ openssl rsa -noout -text -in foo-public -pubin > foo-public-hex
Maintenant foo-public- hex contient votre pkey au format hexadécimal.
Ensuite, vous avez écrit
Je sais que dans ce fichier se trouve p, q et reste mais Je veux que la clé publique finale soit prête à lemploi.
Je ne suis pas sûr de vous suivre … la clé privée nest pas dans le fichier .crt mais dans Le fichier .key et le serveur ne lenvoient pas au client.
Si foo.key est votre clé privée, donnez
$openssl rsa -noout -text -in foo.key
vous verrez lexposant privé et les nombres premiers p, q sous forme hexadécimale.
Commentaires