国密https
guanzhi/GmSSL是由北京大学自主开发的国产商用密码开源库,实现了对国密算法、标准和安全通信协议的全面功能覆盖,支持包括移动端在内的主流操作系统和处理器,支持密码钥匙、密码卡等典型国产密码硬件,提供功能丰富的命令行工具及多种编译语言编程接口。
GMSSL 国密实验室是一个提供国密SSL相关软件/工具/服务的网站,网站简称国密SSL实验室 版本所有 2020 国密SSL实验室 保留全部权利 云钥网络提供技术支持 京ICP备17056405号-2
guanzhi/GmSSL单独实现了 SM2, SM3, SM4 并不兼容 OpenSSL, 也不属于OpenSSL的扩展。
一、 openssl国密版
下载
https://www.gmssl.cn/gmssl/index.jsp
解压
tar xzfm gmssl_openssl_1.1_b2024_x64_1.tar.gz -C /usr/local
二、 nginx国密版
下载
https://nginx.org/download/
解压
tar -xzvf nginx-1.24.0.tar.gz
修改nginx中关于openssl的配置
vim auto/lib/openssl/conf
$OPENSSL/.openssl/
—>$OPENSSL/
编译安装
./configure \
--prefix=/usr/local/nginx-1.24.0 \
--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"make && make install
三、 国密证书自签
(下面命令实际测试无效, 和gmssl版本有关, 已作废)
3.1 安装 gmssl 工具(二进制)
下载
https://github.com/guanzhi/GmSSL
解压
tar -xzvf GmSSL-3.1.1-Linux.tar.gz
链接库 (源码编译安装的可以省略这一步)
echo /usr/local/gmssl-3.1.1/lib > /etc/ld.so.conf.d/gmssl.conf
ldconfig
验证安装
/usr/local/gmssl-3.1.1/bin/gmssl version
3.2 创建 CA
CA 私钥
gmssl sm2keygen -pass 123456 -out ca.key
CA_CERT
gmssl certgen -C CN -ST ZheJiang -L HangZhou -O PKU -OU CS -CN ROOTCA -days 365 -key ca.key -pass 123456 -out cacert.pem -key_usage keyCertSign -key_usage cRLSign
CA_CERT_parse
gmssl certparse -in cacert.pem
sign_key
gmssl sm2keygen -pass 123456 -out sign.key
sign_req
gmssl reqgen -C CN -ST ZheJiang -L HangZhou -O PKU -OU CS -CN localhost -key sign.key -pass 123456 -out sign.req
- sign_cert
gmssl reqsign -in sign.req -days 365 -key_usage digitalSignature -cacert cacert.pem -key ca.key -pass 123456 -out sign.cert
三、测试
3.1 证书生成
使用支持国密算法的浏览器, 这里用360浏览器测试
傻逼360, 360就是个傻逼