diff options
author | Matt Caswell <matt@openssl.org> | 2020-02-28 08:08:59 +1000 |
---|---|---|
committer | Shane Lontis <shane.lontis@oracle.com> | 2020-02-28 08:08:59 +1000 |
commit | 8efc4a9c656b8b3eabeac64c54efdeb07dd42f8e (patch) | |
tree | b0bc5aac800d9bb912afb2dae10dd3f3bf503a08 /doc | |
parent | 30a4cda5e0c67b4e77da4f21b7c5f27991d3367a (diff) | |
download | openssl-8efc4a9c656b8b3eabeac64c54efdeb07dd42f8e.zip openssl-8efc4a9c656b8b3eabeac64c54efdeb07dd42f8e.tar.gz openssl-8efc4a9c656b8b3eabeac64c54efdeb07dd42f8e.tar.bz2 |
Implement the ECX Serializers
Provide serializers for X25519 and X448 for text, pem and der. There are
no parameter serializers because there are no parameters for these
algorithms.
Add some documentation about the various import/export types available
Add additional testing for the serializers
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/11095)
Diffstat (limited to 'doc')
-rw-r--r-- | doc/man3/EVP_PKEY_fromdata.pod | 4 | ||||
-rw-r--r-- | doc/man7/provider-keymgmt.pod | 81 |
2 files changed, 84 insertions, 1 deletions
diff --git a/doc/man3/EVP_PKEY_fromdata.pod b/doc/man3/EVP_PKEY_fromdata.pod index ed8c668..2d0059d 100644 --- a/doc/man3/EVP_PKEY_fromdata.pod +++ b/doc/man3/EVP_PKEY_fromdata.pod @@ -27,7 +27,9 @@ creating a key from user data. EVP_PKEY_fromdata() creates key parameters or a key, given data from I<params> and a context that's been initialized with EVP_PKEY_param_fromdata_init() or EVP_PKEY_key_fromdata_init(). The result is -written to I<*ppkey>. +written to I<*ppkey>. The parameters that can be used for various types of key +are as described in the "Built-in RSA Import/Export Types" section on the +L<provider-keymgmt(7)> page. EVP_PKEY_param_fromdata_settable() and EVP_PKEY_key_fromdata_settable() get a constant B<OSSL_PARAM> array that describes the settable parameters diff --git a/doc/man7/provider-keymgmt.pod b/doc/man7/provider-keymgmt.pod index 279256d..5141ffd 100644 --- a/doc/man7/provider-keymgmt.pod +++ b/doc/man7/provider-keymgmt.pod @@ -256,6 +256,87 @@ OP_keymgmt_export_types() should return a constant array of descriptor B<OSSL_PARAM> for data indicated by I<selection>, that the OP_keymgmt_export() callback can expect to receive. +=head2 Built-in RSA Import/Export Types + +The following Import/Export types are available for the built-in RSA algorithm: + +=over 4 + +=item "n" (B<OSSL_PKEY_PARAM_RSA_N>) <integer> + +The RSA "n" value. + +=item "e" (B<OSSL_PKEY_PARAM_RSA_E>) <integer> + +The RSA "e" value. + +=item "d" (B<OSSL_PKEY_PARAM_RSA_D>) <integer> + +The RSA "d" value. + +=item "rsa-factor" (B<OSSL_PKEY_PARAM_RSA_FACTOR>) <integer> + +An RSA factor. In 2 prime RSA these are often known as "p" or "q". This value +may be repeated up to 10 times in a single key. + +=item "rsa-exponent" (B<OSSL_PKEY_PARAM_RSA_EXPONENT>) <integer> + +An RSA CRT (Chinese Remainder Theorem) exponent. This value may be repeated up +to 10 times in a single key. + +=item "rsa-coefficient" (B<OSSL_PKEY_PARAM_RSA_COEFFICIENT>) <integer> + +An RSA CRT (Chinese Remainder Theorem) coefficient. This value may be repeated +up to 9 times in a single key. + +=back + +=head2 Built-in DSA and Diffie-Hellman Import/Export Types + +The following Import/Export types are available for the built-in DSA and +Diffie-Hellman algorithms: + +=over 4 + +=item "pub" (B<OSSL_PKEY_PARAM_PUB_KEY>) <integer> or <octet string> + +The public key value. + +=item "priv" (B<OSSL_PKEY_PARAM_PRIV_KEY>) <integer> or <octet string> + +The private key value. + +=item "p" (B<OSSL_PKEY_PARAM_FFC_P>) <integer> + +A DSA or Diffie-Hellman "p" value. + +=item "q" (B<OSSL_PKEY_PARAM_FFC_Q>) <integer> + +A DSA or Diffie-Hellman "q" value. + +=item "g" (B<OSSL_PKEY_PARAM_FFC_G>) <integer> + +A DSA or Diffie-Hellman "g" value. + +=back + +=head2 Built-in X25519, X448, ED25519 and ED448 Import/Export Types + +The following Import/Export types are available for the built-in X25519, X448, +ED25519 and X448 algorithms: + +=over 4 + +=item "pub" (B<OSSL_PKEY_PARAM_PUB_KEY>) <octet string> + +The public key value. + +=item "priv" (B<OSSL_PKEY_PARAM_PRIV_KEY>) <octet string> + +The private key value. + +=back + =head2 Information Parameters See L<OSSL_PARAM(3)> for further details on the parameters structure. |