Skip to content

Commit e2424e6

Browse files
committed
SM2/SM3/SM4: Chinese cipher support
Add support for: - SM2 elliptic curve and SM2 sign/verify - SM3 digest - SM4 cipher with modes ECB/CBC/CTR/GCM/CCM Add APIs for SM3 and SM4. Add SM2 sign and verify APIs. Add support for SM3 in wc_Hash and wc_Hmac API. Add support for SM3 and SM4 through EVP layer. Add support for SM2-SM3 certificates. Support key ID and name hash being with SHA-1/256 or SM3. Add support for TLS 1.3 cipher suites: TLS-SM4-GCM-SM3, TLS-SM4-CCM-SM3 Add support for TLS 1.2 SM cipher suite: ECDHE-ECDSA-SM4-CBC-SM3 Add support for SM3 in wc_PRF_TLS. Add SM2-SM3 certificates and keys. Generated with GmSSL-3.0.0 and OpenSSL.
1 parent 6028dfd commit e2424e6

90 files changed

Lines changed: 10941 additions & 2080 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

certs/include.am

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ include certs/ecc/include.am
129129
include certs/ed25519/include.am
130130
include certs/ed448/include.am
131131
include certs/p521/include.am
132+
include certs/sm2/include.am
132133
include certs/external/include.am
133134
include certs/ocsp/include.am
134135
include certs/statickeys/include.am

certs/sm2/ca-sm2-key.der

92 Bytes
Binary file not shown.

certs/sm2/ca-sm2-key.pem

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
-----BEGIN PUBLIC KEY-----
2+
MFowFAYIKoEcz1UBgi0GCCqBHM9VAYItA0IABCGS98sk32RNuqtme4N1qSnn/2Rj
3+
ttVCgCC94uICEjuOtACVCYDLVu1Lyo1X5q4F03YnY3E5ibdp5kiArtGpSBI=
4+
-----END PUBLIC KEY-----

certs/sm2/ca-sm2-priv.der

121 Bytes
Binary file not shown.

certs/sm2/ca-sm2-priv.pem

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIGIAgEAMBQGCCqBHM9VAYItBggqgRzPVQGCLQRtMGsCAQEEII+5uEAZDiE56+gI
3+
fP3YoQWTpDUs0YDjv35IR+QFDQlBoUQDQgAEIZL3yyTfZE26q2Z7g3WpKef/ZGO2
4+
1UKAIL3i4gISO460AJUJgMtW7UvKjVfmrgXTdidjcTmJt2nmSICu0alIEg==
5+
-----END PRIVATE KEY-----

certs/sm2/ca-sm2.der

666 Bytes
Binary file not shown.

certs/sm2/ca-sm2.pem

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
Certificate:
2+
Data:
3+
Version: 3 (0x2)
4+
Serial Number: 1 (0x1)
5+
Signature Algorithm: SM2-with-SM3
6+
Issuer: C = US, ST = Montana, L = Bozeman, O = wolfSSL_SM2, OU = Root-SM2, CN = www.wolfssl.com, emailAddress = info@wolfssl.com
7+
Validity
8+
Not Before: Feb 15 06:23:07 2023 GMT
9+
Not After : Nov 11 06:23:07 2025 GMT
10+
Subject: C = US, ST = Montana, L = Bozeman, O = wolfSSL_sm2, OU = CA-sm2, CN = www.wolfssl.com, emailAddress = info@wolfssl.com, UID = wolfSSL
11+
Subject Public Key Info:
12+
Public Key Algorithm: sm2
13+
Public-Key: (256 bit)
14+
pub:
15+
04:21:92:f7:cb:24:df:64:4d:ba:ab:66:7b:83:75:
16+
a9:29:e7:ff:64:63:b6:d5:42:80:20:bd:e2:e2:02:
17+
12:3b:8e:b4:00:95:09:80:cb:56:ed:4b:ca:8d:57:
18+
e6:ae:05:d3:76:27:63:71:39:89:b7:69:e6:48:80:
19+
ae:d1:a9:48:12
20+
ASN1 OID: SM2
21+
X509v3 extensions:
22+
X509v3 Subject Key Identifier:
23+
47:0A:48:7E:BB:02:A8:5A:26:57:2B:19:A9:7B:61:8B:7F:5D:99:6E
24+
X509v3 Authority Key Identifier:
25+
34:1D:79:44:15:79:A1:B1:63:99:E3:ED:65:7C:64:89:80:FF:B8:EC
26+
X509v3 Basic Constraints: critical
27+
CA:TRUE
28+
X509v3 Key Usage: critical
29+
Digital Signature, Certificate Sign, CRL Sign
30+
Signature Algorithm: SM2-with-SM3
31+
Signature Value:
32+
30:45:02:20:47:4e:00:03:ab:34:a1:af:59:39:8f:60:36:bf:
33+
89:88:42:41:27:c1:dd:57:c9:79:cb:1f:56:5c:16:b5:28:bd:
34+
02:21:00:8b:2e:25:eb:21:9b:a9:2b:a6:6a:5b:db:a7:c7:2b:
35+
11:df:73:15:ad:e4:c5:c3:c2:f3:b4:b4:67:af:d7:51:1c
36+
-----BEGIN CERTIFICATE-----
37+
MIICljCCAjygAwIBAgIBATAKBggqgRzPVQGDdTCBlTELMAkGA1UEBhMCVVMxEDAO
38+
BgNVBAgMB01vbnRhbmExEDAOBgNVBAcMB0JvemVtYW4xFDASBgNVBAoMC3dvbGZT
39+
U0xfU00yMREwDwYDVQQLDAhSb290LVNNMjEYMBYGA1UEAwwPd3d3LndvbGZzc2wu
40+
Y29tMR8wHQYJKoZIhvcNAQkBFhBpbmZvQHdvbGZzc2wuY29tMB4XDTIzMDIxNTA2
41+
MjMwN1oXDTI1MTExMTA2MjMwN1owgawxCzAJBgNVBAYTAlVTMRAwDgYDVQQIDAdN
42+
b250YW5hMRAwDgYDVQQHDAdCb3plbWFuMRQwEgYDVQQKDAt3b2xmU1NMX3NtMjEP
43+
MA0GA1UECwwGQ0Etc20yMRgwFgYDVQQDDA93d3cud29sZnNzbC5jb20xHzAdBgkq
44+
hkiG9w0BCQEWEGluZm9Ad29sZnNzbC5jb20xFzAVBgoJkiaJk/IsZAEBDAd3b2xm
45+
U1NMMFowFAYIKoEcz1UBgi0GCCqBHM9VAYItA0IABCGS98sk32RNuqtme4N1qSnn
46+
/2RjttVCgCC94uICEjuOtACVCYDLVu1Lyo1X5q4F03YnY3E5ibdp5kiArtGpSBKj
47+
YzBhMB0GA1UdDgQWBBRHCkh+uwKoWiZXKxmpe2GLf12ZbjAfBgNVHSMEGDAWgBQ0
48+
HXlEFXmhsWOZ4+1lfGSJgP+47DAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
49+
AwIBhjAKBggqgRzPVQGDdQNIADBFAiBHTgADqzShr1k5j2A2v4mIQkEnwd1XyXnL
50+
H1ZcFrUovQIhAIsuJeshm6krpmpb26fHKxHfcxWt5MXDwvO0tGev11Ec
51+
-----END CERTIFICATE-----

certs/sm2/client-sm2-key.der

92 Bytes
Binary file not shown.

certs/sm2/client-sm2-key.pem

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
-----BEGIN PUBLIC KEY-----
2+
MFowFAYIKoEcz1UBgi0GCCqBHM9VAYItA0IABDod6MtL0y4/Swc/sCH+xZ7ZyjqT
3+
k5V2HTDZC/VW7Rlg7QFM9mcd8ayodA2yd8hJOOT/TO+NbYf2Tsf4OXRwcLU=
4+
-----END PUBLIC KEY-----

certs/sm2/client-sm2-priv.der

121 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)