some bug fix

This commit is contained in:
Zhi Guan
2018-12-06 22:12:05 +08:00
parent bc2bb8a335
commit 9b5eaab86a
19 changed files with 184 additions and 5640 deletions

View File

@@ -1,5 +1,5 @@
/* ====================================================================
* Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved.
* Copyright (c) 2014 - 2018 The GmSSL Project. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -70,71 +70,69 @@ extern "C" {
# define GMTLS_CK_SM2_WITH_SM1_SM3 0x0300E003
# define GMTLS_CK_SM9DHE_WITH_SM1_SM3 0x0300E005
# define GMTLS_CK_SM9_WITH_SM1_SM3 0x0300E007
# define GMTLS_CK_RSA_WITH_SM1_SM3 0x0300E009
# define GMTLS_CK_RSA_WITH_SM1_SHA1 0x0300E00A
# define GMTLS_CK_RSA_WITH_SM1_SM3 0x0300E009 /* reserved */
# define GMTLS_CK_RSA_WITH_SM1_SHA1 0x0300E00A /* reserved */
# define GMTLS_CK_SM2DHE_WITH_SMS4_SM3 0x0300E011
# define GMTLS_CK_SM2_WITH_SMS4_SM3 0x0300E013
# define GMTLS_CK_SM9DHE_WITH_SMS4_SM3 0x0300E015
# define GMTLS_CK_SM9_WITH_SMS4_SM3 0x0300E017
# define GMTLS_CK_RSA_WITH_SMS4_SM3 0x0300E019
# define GMTLS_CK_SM2_WITH_SMS4_SM3 0x0300E013 /* reserved */
# define GMTLS_CK_SM9DHE_WITH_SMS4_SM3 0x0300E015 /* reserved */
# define GMTLS_CK_SM9_WITH_SMS4_SM3 0x0300E017 /* reserved */
# define GMTLS_CK_RSA_WITH_SMS4_SM3 0x0300E019 /* reserved */
# define GMTLS_CK_RSA_WITH_SMS4_SHA1 0x0300E01A
/* ECDHE-SM2-WITH-[SM1|SMS4|SSF33]-[SM3|SHA256] */
# define GMTLS_CK_ECDHE_SM2_WITH_SM1_SM3 0x0300E101
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_SM3 0x0300E102
# define GMTLS_CK_ECDHE_SM2_WITH_SSF33_SM3 0x0300E103
# define GMTLS_CK_ECDHE_SM2_WITH_SM1_SHA256 0x0300E104
# define GMTLS_CK_ECDHE_SM2_WITH_SM1_SHA256 0x0300E104 /* reserved */
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_SHA256 0x0300E105
# define GMTLS_CK_ECDHE_SM2_WITH_SSF33_SHA256 0x0300E106
# define GMTLS_CK_ECDHE_SM2_WITH_SSF33_SHA256 0x0300E106 /* reserved */
/* ECDHE-SM2-WITH-SMS4-[GCM|CCM|CCM-8]-[SM3|SHA256] */
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_GCM_SM3 0x0300E107
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_CCM_SM3 0x0300E108
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_CCM_8_SM3 0x0300E109
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_GCM_SHA256 0x0300E10A
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_CCM_SHA256 0x0300E10B
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_CCM_8_SHA256 0x0300E10C
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_GCM_SHA256 0x0300E10A /* reserved */
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_CCM_SHA256 0x0300E10B /* reserved */
# define GMTLS_CK_ECDHE_SM2_WITH_SMS4_CCM_8_SHA256 0x0300E10C /* reserved */
/* SM2DHE-SM2-WITH-[SM1|SMS4|SSF33|ZUC]-[GCM|CCM|CCM-8|EIA]-SM3 */
# define GMTLS_CK_SM2DHE_SM2_WITH_SM1_SM3 0x0300E201
# define GMTLS_CK_SM2DHE_SM2_WITH_SMS4_SM3 0x0300E202
# define GMTLS_CK_SM2DHE_SM2_WITH_SSF33_SM3 0x0300E203
# define GMTLS_CK_SM2DHE_SM2_WITH_ZUC_SM3 0X0300E204
# define GMTLS_CK_SM2DHE_SM2_WITH_SMS4_GCM_SM3 0x0300E205
# define GMTLS_CK_SM2DHE_SM2_WITH_SMS4_CCM_SM3 0x0300E206
# define GMTLS_CK_SM2DHE_SM2_WITH_SMS4_CCM_8_SM3 0x0300E207
# define GMTLS_CK_SM2DHE_SM2_WITH_ZUC_EIA_SM3 0X0300E208
/* PSK ciphersuites with NULL cipher */
# define GMTLS_CK_PSK_WITH_NULL_SM3 0x0300F001
# define GMTLS_CK_DHE_PSK_WITH_NULL_SM3 0x0300F002
# define GMTLS_CK_RSA_PSK_WITH_NULL_SM3 0x0300F003
# define GMTLS_CK_SM2_PSK_WITH_NULL_SM3 0x0300F004
# define GMTLS_CK_ECDHE_PSK_WITH_NULL_SM3 0x0300F005
# define GMTLS_CK_PSK_WITH_NULL_SM3 0x0300F001 /* reserved */
# define GMTLS_CK_DHE_PSK_WITH_NULL_SM3 0x0300F002 /* reserved */
# define GMTLS_CK_RSA_PSK_WITH_NULL_SM3 0x0300F003 /* reserved */
# define GMTLS_CK_SM2_PSK_WITH_NULL_SM3 0x0300F004 /* reserved */
# define GMTLS_CK_ECDHE_PSK_WITH_NULL_SM3 0x0300F005 /* reserved */
/* PSK ciphersuits with SMS4 */
# define GMTLS_CK_PSK_WITH_SMS4_CBC_SM3 0x0300F101
# define GMTLS_CK_PSK_WITH_SMS4_GCM_SM3 0x0300F102
# define GMTLS_CK_PSK_WITH_SMS4_CCM_SM3 0x0300F103
# define GMTLS_CK_DHE_PSK_WITH_SMS4_CBC_SM3 0x0300F105
# define GMTLS_CK_DHE_PSK_WITH_SMS4_GCM_SM3 0x0300F106
# define GMTLS_CK_DHE_PSK_WITH_SMS4_CCM_SM3 0x0300F107
# define GMTLS_CK_RSA_PSK_WITH_SMS4_CBC_SM3 0x0300F108
# define GMTLS_CK_RSA_PSK_WITH_SMS4_GCM_SM3 0x0300F109
# define GMTLS_CK_RSA_PSK_WITH_SMS4_CCM_SM3 0x0300F10A
# define GMTLS_CK_ECC_PSK_WITH_SMS4_CBC_SM3 0x0300F10B
# define GMTLS_CK_ECC_PSK_WITH_SMS4_GCM_SM3 0x0300F10C
# define GMTLS_CK_ECC_PSK_WITH_SMS4_CCM_SM3 0x0300F10D
# define GMTLS_CK_SM2_PSK_WITH_SMS4_CBC_SM3 0x0300F10B
# define GMTLS_CK_SM2_PSK_WITH_SMS4_GCM_SM3 0x0300F10C
# define GMTLS_CK_SM2_PSK_WITH_SMS4_CCM_SM3 0x0300F10D
# define GMTLS_CK_PSK_WITH_SM1_CBC_SM3 0x0300F10E
# define GMTLS_CK_PSK_WITH_SM1_GCM_SM3 0x0300F10F
# define GMTLS_CK_PSK_WITH_SM1_CCM_SM3 0x0300F110
# define GMTLS_CK_DHE_PSK_WITH_SM1_CBC_SM3 0x0300F111
# define GMTLS_CK_DHE_PSK_WITH_SM1_GCM_SM3 0x0300F112
# define GMTLS_CK_DHE_PSK_WITH_SM1_CCM_SM3 0x0300F113
# define GMTLS_CK_RSA_PSK_WITH_SM1_CBC_SM3 0x0300F114
# define GMTLS_CK_RSA_PSK_WITH_SM1_GCM_SM3 0x0300F115
# define GMTLS_CK_RSA_PSK_WITH_SM1_CCM_SM3 0x0300F116
# define GMTLS_CK_PSK_WITH_SM1_GCM_SM3 0x0300F10F /* reserved */
# define GMTLS_CK_PSK_WITH_SM1_CCM_SM3 0x0300F110 /* reserved */
# define GMTLS_CK_PSK_WITH_SSF33_CBC_SM3 0x0300F117
# define GMTLS_CK_PSK_WITH_SSF33_GCM_SM3 0x0300F118
# define GMTLS_CK_PSK_WITH_SSF33_CCM_SM3 0x0300F119
# define GMTLS_CK_DHE_PSK_WITH_SSF33_CBC_SM3 0x0300F11A
# define GMTLS_CK_DHE_PSK_WITH_SSF33_GCM_SM3 0x0300F11B
# define GMTLS_CK_DHE_PSK_WITH_SSF33_CCM_SM3 0x0300F11C
# define GMTLS_CK_RSA_PSK_WITH_SSF33_CBC_SM3 0x0300F11D
# define GMTLS_CK_RSA_PSK_WITH_SSF33_GCM_SM3 0x0300F11E
# define GMTLS_CK_RSA_PSK_WITH_SSF33_CCM_SM3 0x0300F11F
# define GMTLS_CK_PSK_WITH_SSF33_GCM_SM3 0x0300F118 /* reserved */
# define GMTLS_CK_PSK_WITH_SSF33_CCM_SM3 0x0300F119 /* reserved */
# define GMTLS_CK_DHE_PSK_WITH_SSF33_CBC_SM3 0x0300F11A /* reserved */
# define GMTLS_CK_DHE_PSK_WITH_SSF33_GCM_SM3 0x0300F11B /* reserved */
# define GMTLS_CK_DHE_PSK_WITH_SSF33_CCM_SM3 0x0300F11C /* reserved */
# define GMTLS_CK_RSA_PSK_WITH_SSF33_CBC_SM3 0x0300F11D /* reserved */
# define GMTLS_CK_RSA_PSK_WITH_SSF33_GCM_SM3 0x0300F11E /* reserved */
# define GMTLS_CK_RSA_PSK_WITH_SSF33_CCM_SM3 0x0300F11F /* reserved */
/* SRP ciphersuites */
# define GMTLS_CK_SRP_SM3_WITH_SMS4_CBC_SM3 0x0300F201
@@ -173,6 +171,16 @@ extern "C" {
# define GMTLS_TXT_ECDHE_SM2_WITH_SMS4_CCM_SHA256 "ECDHE-SM2-WITH-SMS4-CCM-SHA256"
# define GMTLS_TXT_ECDHE_SM2_WITH_SMS4_CCM_8_SHA256 "ECDHE-SM2-WITH-SMS4-CCM-8-SHA256"
/* SM2DHE-SM2-WITH-[SM1|SMS4|SSF33|ZUC]-[GCM|CCM|CCM-8|EIA]-SM3 */
# define GMTLS_TXT_SM2DHE_SM2_WITH_SM1_SM3 "SM2DHE-SM2-WITH-SM1-SM3"
# define GMTLS_TXT_SM2DHE_SM2_WITH_SMS4_SM3 "SM2DHE-SM2-WITH-SMS4-SM3"
# define GMTLS_TXT_SM2DHE_SM2_WITH_SSF33_SM3 "SM2DHE-SM2-WITH-SSF33-SM3"
# define GMTLS_TXT_SM2DHE_SM2_WITH_ZUC_SM3 "SM2DHE-SM2-WITH-ZUC-SM3"
# define GMTLS_TXT_SM2DHE_SM2_WITH_SMS4_GCM_SM3 "SM2DHE-SM2-WITH-SMS4-GCM-SM3"
# define GMTLS_TXT_SM2DHE_SM2_WITH_SMS4_CCM_SM3 "SM2DHE-SM2-WITH-SMS4-CCM-SM3"
# define GMTLS_TXT_SM2DHE_SM2_WITH_SMS4_CCM_8_SM3 "SM2DHE-SM2-WITH-SMS4-CCM-8-SM3"
# define GMTLS_TXT_SM2DHE_SM2_WITH_ZUC_EIA_SM3 "SM2DHE-SM2-WITH-ZUC-EIA-SM3"
/* PSK ciphersuites with NULL cipher */
# define GMTLS_TXT_PSK_WITH_NULL_SM3 "PSK-WITH-NULL-SM3"
# define GMTLS_TXT_DHE_PSK_WITH_NULL_SM3 "DHE-PSK-WITH-NULL-SM3"

View File

@@ -5067,6 +5067,10 @@
#define NID_sm9hash1 1172
#define OBJ_sm9hash1 OBJ_sm_scheme,302L,4L
#define SN_sm9hash2 "sm9hash2"
#define NID_sm9hash2 1209
#define OBJ_sm9hash2 OBJ_sm_scheme,303L,7L
#define SN_sm9kdf "sm9kdf"
#define NID_sm9kdf 1173
#define OBJ_sm9kdf OBJ_sm_scheme,302L,5L
@@ -5107,6 +5111,14 @@
#define NID_sm9hash1_with_sha256 1182
#define OBJ_sm9hash1_with_sha256 OBJ_sm9hash1,2L
#define SN_sm9hash2_with_sm3 "sm9hash2-with-sm3"
#define NID_sm9hash2_with_sm3 1210
#define OBJ_sm9hash2_with_sm3 OBJ_sm9hash2,1L
#define SN_sm9hash2_with_sha256 "sm9hash2-with-sha256"
#define NID_sm9hash2_with_sha256 1211
#define OBJ_sm9hash2_with_sha256 OBJ_sm9hash2,2L
#define SN_sm9kdf_with_sm3 "sm9kdf-with-sm3"
#define NID_sm9kdf_with_sm3 1183
#define OBJ_sm9kdf_with_sm3 OBJ_sm9kdf,1L

View File

@@ -41,9 +41,9 @@ extern "C" {
*/
# define OPENSSL_VERSION_NUMBER 0x1010004fL
# ifdef OPENSSL_FIPS
# define OPENSSL_VERSION_TEXT "GmSSL 2.4.2 - OpenSSL 1.1.0d-fips 3 Dec 2018"
# define OPENSSL_VERSION_TEXT "GmSSL 2.4.2 - OpenSSL 1.1.0d-fips 6 Dec 2018"
# else
# define OPENSSL_VERSION_TEXT "GmSSL 2.4.2 - OpenSSL 1.1.0d 3 Dec 2018"
# define OPENSSL_VERSION_TEXT "GmSSL 2.4.2 - OpenSSL 1.1.0d 6 Dec 2018"
# endif
/*-

View File

@@ -106,10 +106,6 @@ int SM2_verify(int type, const unsigned char *dgst, int dgstlen,
/* SM2 Public Key Encryption */
#define SM2_MIN_PLAINTEXT_LENGTH 0
#define SM2_MAX_PLAINTEXT_LENGTH 1024
#define SM2_CIPHERTEXT_LENGTH(len) ((len)+256)
typedef struct SM2CiphertextValue_st SM2CiphertextValue;
DECLARE_ASN1_FUNCTIONS(SM2CiphertextValue)
@@ -131,7 +127,6 @@ int SM2_decrypt(int type, const unsigned char *in, size_t inlen,
#define SM2_decrypt_with_recommended(in,inlen,out,outlen,ec_key) \
SM2_decrypt(NID_sm3,in,inlen,out,outlen,ec_key)
int SM2CiphertextValue_size(const EC_GROUP *group, size_t inlen);
/* SM2 Key Exchange */