aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorzhangzhilei <zhangzhilei@360.cn>2022-08-19 18:08:39 +0800
committerzhangzhilei <zhangzhilei@360.cn>2022-08-19 18:08:39 +0800
commit034e48b500ef1728c3b19828d09aa9795a2b98c3 (patch)
tree963a347eadb4494c25e2ae3f471850f1f8080a6d /epan
parent10b2e62a4a1f91a87a0bafb79d0f0d2d4e2e3bea (diff)
TLS:support decrypt TLS_SM4_GCM_SM3 ciphersuite
ECC_SM4_GCM_SM3 is defined in RFC8998,and it defined how to use SM3 and SM4 in tls1.3.
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-tls-utils.c1
-rw-r--r--epan/dissectors/packet-tls.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/epan/dissectors/packet-tls-utils.c b/epan/dissectors/packet-tls-utils.c
index 2a2c2ba320..8816c32307 100644
--- a/epan/dissectors/packet-tls-utils.c
+++ b/epan/dissectors/packet-tls-utils.c
@@ -3177,6 +3177,7 @@ static const SslCipherSuite cipher_suites[]={
{0x1303,KEX_TLS13, ENC_CHACHA20, DIG_SHA256, MODE_POLY1305 }, /* TLS_CHACHA20_POLY1305_SHA256 */
{0x1304,KEX_TLS13, ENC_AES, DIG_SHA256, MODE_CCM }, /* TLS_AES_128_CCM_SHA256 */
{0x1305,KEX_TLS13, ENC_AES, DIG_SHA256, MODE_CCM_8 }, /* TLS_AES_128_CCM_8_SHA256 */
+ {0x00C6,KEX_TLS13, ENC_SM4, DIG_SM3, MODE_GCM }, /* TLS_SM4_GCM_SM3 */
{0xC001,KEX_ECDH_ECDSA, ENC_NULL, DIG_SHA, MODE_STREAM}, /* TLS_ECDH_ECDSA_WITH_NULL_SHA */
{0xC002,KEX_ECDH_ECDSA, ENC_RC4, DIG_SHA, MODE_STREAM}, /* TLS_ECDH_ECDSA_WITH_RC4_128_SHA */
diff --git a/epan/dissectors/packet-tls.c b/epan/dissectors/packet-tls.c
index 261d919e87..245b798eb3 100644
--- a/epan/dissectors/packet-tls.c
+++ b/epan/dissectors/packet-tls.c
@@ -1144,6 +1144,7 @@ decrypt_tls13_early_data(tvbuff_t *tvb, packet_info *pinfo, guint32 offset,
0x1303, /* TLS_CHACHA20_POLY1305_SHA256 */
0x1304, /* TLS_AES_128_CCM_SHA256 */
0x1305, /* TLS_AES_128_CCM_8_SHA256 */
+ 0x00c6, /* TLS_SM4_GCM_SM3 */
};
const guchar *record = tvb_get_ptr(tvb, offset, record_length);
for (guint i = 0; i < G_N_ELEMENTS(tls13_ciphers); i++) {