[openssl] master update

Dr. Paul Dale pauli at openssl.org
Tue Jun 8 05:15:20 UTC 2021


The branch master has been updated
       via  5135a9bd9280301a24640a6bf5125c144e28cfdd (commit)
      from  063e019738b90fcf0a3ab7b1654ce8976805b0b3 (commit)


- Log -----------------------------------------------------------------
commit 5135a9bd9280301a24640a6bf5125c144e28cfdd
Author: Shane Lontis <shane.lontis at oracle.com>
Date:   Thu Jun 3 10:54:13 2021 +1000

    Document missing EC/SM2 params
    
    Fixes #15548
    
    Document OSSL_PKEY_PARAM_EC_PUB_X, OSSL_PKEY_PARAM_EC_PUB_Y and OSSL_PKEY_PARAM_DEFAULT_DIGEST
    Added a section related to parameters for SM2.
    
    Reviewed-by: Tomas Mraz <tomas at openssl.org>
    Reviewed-by: Paul Dale <pauli at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/15601)

-----------------------------------------------------------------------

Summary of changes:
 doc/man7/EVP_PKEY-EC.pod                     | 13 +++++++++++++
 doc/man7/EVP_PKEY-SM2.pod                    | 20 +++++++++++++++++++-
 providers/implementations/keymgmt/ec_kmgmt.c |  4 ++--
 3 files changed, 34 insertions(+), 3 deletions(-)

diff --git a/doc/man7/EVP_PKEY-EC.pod b/doc/man7/EVP_PKEY-EC.pod
index 82892492e3..31d92bf8a1 100644
--- a/doc/man7/EVP_PKEY-EC.pod
+++ b/doc/man7/EVP_PKEY-EC.pod
@@ -122,6 +122,19 @@ Used for getting and setting the encoding of an EC public key. The public key
 is expected to be a point conforming to Sec. 2.3.4 of the SECG SEC 1 ("Elliptic
 Curve Cryptography") standard.
 
+=item "qx" (B<OSSL_PKEY_PARAM_EC_PUB_X>) <unsigned integer>
+
+Used for getting the EC public key X component.
+
+=item "qy" (B<OSSL_PKEY_PARAM_EC_PUB_Y>) <unsigned integer>
+
+Used for getting the EC public key Y component.
+
+=item (B<OSSL_PKEY_PARAM_DEFAULT_DIGEST>) <UTF8 string>
+
+Getter that returns the default digest name.
+(Currently returns "SHA256" as of OpenSSL 3.0).
+
 =back
 
 The following Gettable types are also available for the built-in EC algorithm:
diff --git a/doc/man7/EVP_PKEY-SM2.pod b/doc/man7/EVP_PKEY-SM2.pod
index bb6258c873..4f0e240f3f 100644
--- a/doc/man7/EVP_PKEY-SM2.pod
+++ b/doc/man7/EVP_PKEY-SM2.pod
@@ -15,6 +15,24 @@ both signature and encryption schemes via the EVP interface.
 When doing the B<SM2> signature algorithm, it requires a distinguishing identifier
 to form the message prefix which is hashed before the real message is hashed.
 
+=head2 Common SM2 parameters
+
+SM2 uses the parameters defined in L<EVP_PKEY-EC(7)/Common EC parameters>.
+The following parameters are different:
+
+=over 4
+
+=item "cofactor" (B<OSSL_PKEY_PARAM_EC_COFACTOR>) <unsigned integer>
+
+This parameter is ignored for B<SM2>.
+
+=item (B<OSSL_PKEY_PARAM_DEFAULT_DIGEST>) <UTF8 string>
+
+Getter that returns the default digest name.
+(Currently returns "SM3" as of OpenSSL 3.0).
+
+=back
+
 =head1 NOTES
 
 B<SM2> signatures can be generated by using the 'DigestSign' series of APIs, for
@@ -63,7 +81,7 @@ L<EVP_MD_CTX_set_pkey_ctx(3)>
 
 =head1 COPYRIGHT
 
-Copyright 2018-2020 The OpenSSL Project Authors. All Rights Reserved.
+Copyright 2018-2021 The OpenSSL Project Authors. All Rights Reserved.
 
 Licensed under the Apache License 2.0 (the "License").  You may not use
 this file except in compliance with the License.  You can obtain a copy
diff --git a/providers/implementations/keymgmt/ec_kmgmt.c b/providers/implementations/keymgmt/ec_kmgmt.c
index 6cd9aa3d38..24d4df543b 100644
--- a/providers/implementations/keymgmt/ec_kmgmt.c
+++ b/providers/implementations/keymgmt/ec_kmgmt.c
@@ -763,8 +763,8 @@ static const OSSL_PARAM ec_known_gettable_params[] = {
     EC_IMEXPORTABLE_DOM_PARAMETERS,
     EC2M_GETTABLE_DOM_PARAMS
     EC_IMEXPORTABLE_PUBLIC_KEY,
-    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_EC_PUB_X, NULL, 0),
-    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_EC_PUB_Y, NULL, 0),
+    OSSL_PARAM_BN(OSSL_PKEY_PARAM_EC_PUB_X, NULL, 0),
+    OSSL_PARAM_BN(OSSL_PKEY_PARAM_EC_PUB_Y, NULL, 0),
     EC_IMEXPORTABLE_PRIVATE_KEY,
     EC_IMEXPORTABLE_OTHER_PARAMETERS,
     OSSL_PARAM_END


More information about the openssl-commits mailing list