update documentation regarding RSA key import/export
This commit is contained in:
parent
2a98d0a11f
commit
3233e51a23
18
crypt.tex
18
crypt.tex
@ -3673,7 +3673,7 @@ int main(void)
|
||||
\mysection{RSA Key Format}
|
||||
|
||||
The RSA key format adopted for exporting and importing keys is the PKCS \#1 format defined by the ASN.1 constructs known as
|
||||
RSAPublicKey and RSAPrivateKey. Additionally, the OpenSSL key format is supported by the import function only.
|
||||
RSAPublicKey and RSAPrivateKey. Additionally, the OpenSSL key format is supported as well.
|
||||
|
||||
\subsection{RSA Key Export}
|
||||
To export a RSA key use the following function.
|
||||
@ -3685,8 +3685,17 @@ int rsa_export(unsigned char *out,
|
||||
int type,
|
||||
rsa_key *key);
|
||||
\end{verbatim}
|
||||
This will export the RSA key in either a RSAPublicKey or RSAPrivateKey (PKCS \#1 types) depending on the value of \textit{type}. When it is
|
||||
set to \textbf{PK\_PRIVATE} the export format will be RSAPrivateKey and otherwise it will be RSAPublicKey.
|
||||
|
||||
This will export the RSA key depending on the value of \textit{type}.
|
||||
|
||||
The RSAPublicKey (PKCS \#1 type) format will be used for the public key,
|
||||
indicated by \textbf{PK\_PUBLIC}.
|
||||
The RSAPrivateKey (PKCS \#1 type) format will be used for the private key,
|
||||
indicated by \textbf{PK\_PRIVATE}.
|
||||
|
||||
As of v1.18 this function can also export OpenSSL-compatible formatted public RSA keys.
|
||||
By OR'ing \textbf{PK\_STD} and \textbf{PK\_PUBLIC} the public key will be exported
|
||||
in the SubjectPublicKeyInfo (X.509 type) format.
|
||||
|
||||
\subsection{RSA Key Import}
|
||||
To import a RSA key use the following function.
|
||||
@ -3702,8 +3711,7 @@ This will import the key stored in \textit{inlen} and import it to \textit{key}.
|
||||
function can import both RSAPublicKey and RSAPrivateKey formats.
|
||||
|
||||
As of v1.06 this function can also import OpenSSL DER formatted public RSA keys. They are essentially encapsulated RSAPublicKeys. LibTomCrypt will
|
||||
import the key, strip off the additional data (it's the preferred hash) and fill in the rsa\_key structure as if it were a native RSAPublicKey. Note that
|
||||
there is no function provided to export in this format.
|
||||
import the key, strip off the additional data and fill in the rsa\_key structure.
|
||||
|
||||
|
||||
\chapter{Diffie-Hellman Key Exchange}
|
||||
|
Loading…
Reference in New Issue
Block a user