Optimize sm2p256v1 curve for Intel processors

This update is part of the GmSSL Turbo project.
This work is supported by the National Key Research and Development
Program of China NO.2018YFB0803601 and Intel.
This commit is contained in:
Zhi Guan
2018-09-07 08:55:36 +08:00
parent 940c98d5d7
commit 4b17502fdd
11 changed files with 14500 additions and 575 deletions

View File

@@ -94,6 +94,10 @@ const EC_METHOD *EC_GFp_nistp256_method(void);
* \return EC_METHOD object
*/
const EC_METHOD *EC_GFp_nistp521_method(void);
# ifndef OPENSSL_NO_SM2
const EC_METHOD *EC_GFp_sm2p256_method(void);
# endif
# endif
# ifndef OPENSSL_NO_EC2M
@@ -1408,6 +1412,11 @@ int ERR_load_EC_strings(void);
# define EC_F_ECP_NISTZ256_POINTS_MUL 137
# define EC_F_ECP_NISTZ256_PRE_COMP_NEW 138
# define EC_F_ECP_NISTZ256_WINDOWED_MUL 139
# define EC_F_ECP_SM2Z256_GET_AFFINE 278
# define EC_F_ECP_SM2Z256_MULT_PRECOMPUTE 279
# define EC_F_ECP_SM2Z256_POINTS_MUL 280
# define EC_F_ECP_SM2Z256_PRE_COMP_NEW 281
# define EC_F_ECP_SM2Z256_WINDOWED_MUL 282
# define EC_F_ECX_KEY_OP 140
# define EC_F_ECX_PRIV_ENCODE 141
# define EC_F_ECX_PUB_ENCODE 142
@@ -1448,6 +1457,9 @@ int ERR_load_EC_strings(void);
# define EC_F_EC_GFP_SIMPLE_POINT_GET_AFFINE_COORDINATES 177
# define EC_F_EC_GFP_SIMPLE_POINT_SET_AFFINE_COORDINATES 178
# define EC_F_EC_GFP_SIMPLE_SET_COMPRESSED_COORDINATES 179
# define EC_F_EC_GFP_SM2P256_GROUP_SET_CURVE 274
# define EC_F_EC_GFP_SM2P256_POINTS_MUL 275
# define EC_F_EC_GFP_SM2P256_POINT_GET_AFFINE_COORDINATES 276
# define EC_F_EC_GROUP_CHECK 180
# define EC_F_EC_GROUP_CHECK_DISCRIMINANT 181
# define EC_F_EC_GROUP_COPY 182
@@ -1531,6 +1543,7 @@ int ERR_load_EC_strings(void);
# define EC_F_PKEY_EC_KEYGEN 260
# define EC_F_PKEY_EC_PARAMGEN 261
# define EC_F_PKEY_EC_SIGN 262
# define EC_F_SM2P256_PRE_COMP_NEW 277
# define EC_F_SM2_COMPUTE_ID_DIGEST 263
# define EC_F_SM2_COMPUTE_MESSAGE_DIGEST 264
# define EC_F_SM2_DO_ENCRYPT 265

View File

@@ -41,9 +41,9 @@ extern "C" {
*/
# define OPENSSL_VERSION_NUMBER 0x1010004fL
# ifdef OPENSSL_FIPS
# define OPENSSL_VERSION_TEXT "GmSSL 2.3.1 - OpenSSL 1.1.0d-fips 30 Mar 2018"
# define OPENSSL_VERSION_TEXT "GmSSL 2.3.2 - OpenSSL 1.1.0d-fips 7 Sep 2018"
# else
# define OPENSSL_VERSION_TEXT "GmSSL 2.3.1 - OpenSSL 1.1.0d 30 Mar 2018"
# define OPENSSL_VERSION_TEXT "GmSSL 2.3.2 - OpenSSL 1.1.0d 7 Sep 2018"
# endif
/*-