Jeg forstår ikke rigtig denne her:
Ifølge: http://www.madboa.com/geek/openssl/#key-rsa , Du kan generere en offentlig nøgle fra en privat nøgle.
openssl genrsa -out mykey.pem 1024
openssl rsa -in mykey.pem -pubout > mykey.pub
Min første tanke var, at de genereres i et par sammen. Indeholder RSA's private nøgle summen? eller den offentlige nøgle?
openssl genrsa -out mykey.pem 1024
vil faktisk producere et offentligt - privat nøglepar. Parret gemmes i den genererede fil mykey.pem
.
openssl rsa -in mykey.pem -pubout > mykey.pub
vil udtrække den offentlige nøgle og udskrive den. Her er et link til en side, der beskriver dette bedre.
EDIT: Tjek afsnittet med eksempler her. For blot at udskrive den offentlige del af en privat nøgle:
openssl rsa -in key.pem -pubout -out pubkey.pem
For at få en brugbar offentlig nøgle til SSH-formål skal du bruge ssh-keygen:
ssh-keygen -y -f key.pem > key.pub
I de fleste programmer, der genererer private RSA-nøgler, herunder openssl's, repræsenteres den private nøgle som et PKCS#1 RSAPrivatekey objekt eller en variant heraf:
A.1.2 Syntaks for private RSA-nøgler
En privat RSA-nøgle skal repræsenteres med ASN.1-typen RSAPrivateKey:
RSAPrivateKey ::= SEQUENCE { version Version Version, modulus INTEGER, -- n publicExponent INTEGER, -- e privateExponent INTEGER, -- d prime1 INTEGER, -- p prime2 INTEGER, -- q eksponent1 INTEGER, -- d mod (p-1) eksponent2 INTEGER, -- d mod (q-1) koefficient INTEGER, -- (omvendt af q) mod p otherPrimeInfos OtherPrimeInfos VALGFULDIGT }
Som du kan se, har dette format en række felter, herunder modulus og offentlig eksponent, og er således en streng overmængde af oplysningerne i en RSA public key.
Her i denne kode skaber vi først RSA-nøglen, som er privat, men den har også et par af dens offentlige nøgle, så for at få din faktiske offentlige nøgle skal du blot gøre dette
openssl rsa -in mykey.pem -pubout > mykey.pub
håber du får det for mere info tjek dette