赞
踩
整体抓包截图
可以访问这个网站 https://www.wotrus.com进行抓包。可以看到客户端和服务端整体的握手流程和标准SSL协议基本一致。
需要注意的是必须使用支持国密SSL协议的浏览器,这里建议下载奇安信浏览器,并且安装国密版本wireShark抓包工具。在后面国密Nginx服务器部署章节有介绍。
Client Hello消息
- 首先看下Client Hello消息,首先是版本号与标准SSL协议不同,国密SSL协议版本号的值为 0x0101,其次是加密套件,国密SSL协议较为常用的加密套件为 ECC_SM4_SM3。
- 国密SSL协议支持的加密套件共有以下12个
序号 名称 值 1 ECDHE_SM1_SM3 {0xe0, 0x01} 2 ECC_SM1_SM3 {0xe0, 0x03} 3 IBSDH_SM1_SM3 {0xe0, 0x05} 4 IBC_SM1_SM3 {0xe0, 0x07} 5 RSA_SM1_SM3 {0xe0, 0x09} 6 RSA_SM1_SHA1 {0xe0, 0xa0} 7 ECDHE_SM4_SM3 {0xe0, 0x11} 8 ECC_SM4_SM3 {0xe0, 0x13} 9 IBSDH_SM4_SM3 {0xe0, 0x15} 10 IBC_SM4_SM3 {0xe0, 0x17} 11 RSA_SM4_SM3 {0xe0, 0x19} 12 RSA_SM4_SHA1 {0xe0, 0x1a}
- 备注:实现ECC和ECDHE的算法为SM2, 实现IBC和IBSDH的算法为SM9,RSA算法的使用应符合国家密码管理主管部门的要求。
Service Hello消息
Server Certificate消息
Server Key ExChange消息
Server Hello done消息
Client Key Exchange消息
Change Cipher Spec 消息
Finished [Encrypted Handshake Message] 消息
- tar -zxvf zlib.tar.gz
- ./configure
- sudo make
- sudo make install
- unzip pcre-8.45.zip
- ./configure
- sudo make
- sudo make install
- tar -zxvf gmssl_openssl_1.1_b2024_x64_1.tar.gz -C /usr/local
- tar -zxvf nginx-1.24.0.tar.gz
- ./configure --without-http_gzip_module --with-http_ssl_module --with-http_stub_status_module --with-http_v2_module --with-stream --with-file-aio --with-openssl=“/usr/local/gmssl”
- sudo make
- sudo make install
server { listen 443 ssl; server_name localhost; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:AES128-SHA:DES-CBC3-SHA:ECC-SM4-CBC-SM3:ECC-SM4-GCM-SM3; ssl_verify_client off; ssl_certificate sm2.SmallWolf.enc.crt.pem; ssl_certificate_key sm2.SmallWolf.enc.key.pem; ssl_certificate sm2.SmallWolf.sig.crt.pem; ssl_certificate_key sm2.SmallWolf.sig.key.pem; location / { root html; index index.html index.htm; } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。