Megjegyzések
- Úgy tűnik, hogy ez inkább a Verem túlcsordulás kérdése. Lát. például. stackoverflow.com/questions/17143606/…
- ésszerű lenne a lehető legtöbb funkcionalitású openssl api.
Válasz
Ezt nagyon egyszerű megtenni az openssl segítségével.
Mondja, hogy a foo.crt az Ön crt fájlja. Ezután
$ openssl x509 -in foo.crt -text -noout
az összes szükséges információt (kibocsátó, kulcs: rsa és kitevő, aláíró algoritmus stb.) Szöveges formátumban kinyomtatja.
Ha megadja
$ openssl x509 -in foo.crt -text -noout > foo.txt
, akkor az előző információkat a foo.txt fájlba menti.
A kérdés megválaszolásához
Meg tudná mondani, hogyan tudom kibontani ebből a fájlból a használatra kész nyilvános kulcsot hexadecimális (bájtos) formátumban?
Ennek egyik módja az, ha először exportálja a nyilvános kulcsot, majd átalakítja azt hex alakúra
$ openssl x509 -in foo.crt -noout -pubkey > foo-public $ openssl rsa -noout -text -in foo-public -pubin > foo-public-hex
Most foo-public- A hex tartalmazza a kulcsodat hex formátumban.
Ezután írt
Tudom, hogy ebben a fájlban p, q és pihenjen, de Szeretném, hogy a végső nyilvános kulcs használatra készen álljon.
Nem biztos, hogy követlek … a privát kulcs nem a .crt fájlban található, hanem A .key fájl és a szerver nem küldi el az ügyfélnek.
Ha az foo.key az ön titkos kulcsa, akkor adja meg
$openssl rsa -noout -text -in foo.key
a privát kitevőt és a p, q prímeket hexa formában fogja látni.
Megjegyzések
- Nitpick: az openssl parancssor elérhető, és ugyanúgy működik minden Unixban és Windowsban, nem csak a LInux-ban. A VMS egy kicsit más, de nem sok.