Chiusa. Questa domanda è fuori tema . Attualmente non accetta risposte.

Commenti

Answer

È molto facile farlo con openssl.

Diciamo che foo.crt è il tuo file crt. Quindi,

$ openssl x509 -in foo.crt -text -noout 

stamperà tutte le informazioni necessarie (emittente, pkey: modulo rsa ed esponente, algoritmo di firma ecc.) In formato testo.

Se dai

$ openssl x509 -in foo.crt -text -noout > foo.txt 

salverai le informazioni precedenti nel file foo.txt.

Per rispondere alla tua domanda

Puoi dirmi come posso estrarre da questo file la chiave pubblica pronta per luso in formato esadecimale (byte)?

un modo per farlo è prima esportare la chiave pubblica e poi convertirla in formato esadecimale

 $ openssl x509 -in foo.crt -noout -pubkey > foo-public $ openssl rsa -noout -text -in foo-public -pubin > foo-public-hex 

Ora foo-public- hex contiene il tuo pkey in formato esadecimale.

Quindi hai scritto

So che in questo file è p, q e rest ma Voglio la chiave pubblica finale pronta per luso.

Non sono sicuro di seguirti … la chiave privata non è nel file .crt ma in .key file e server non lo invieranno al client.

Se foo.key è la tua chiave privata, allora dai

$openssl rsa -noout -text -in foo.key 

vedrai lesponente privato e i numeri primi p, q in formato esadecimale.

Commenti

  • Nitpick: openssl commandline è disponibile per e funziona allo stesso modo su tutti gli Unix e Windows, non solo su Linux. VMS è leggermente diverso, ma non molto.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *