OpenSSL生成 SM2公私钥
OpenSSL生成 SM2公私钥
当前形势
- 国密局字[2011]50号“关于做好公钥密码算法升级工作的通知”, 要求新投入运行并使用公钥密码的信息系统,应使用SM2椭圆曲线密码算法,已投入运行并使用公钥密码的信息系统,应尽快进行系统升级,并使用SM2椭圆曲线密码算法。
- 由于现行大多国外CA场商的非国密数字证书。
- 国内各机构都在大力推行国密改造。
OpenSSL
- OpenSSL 软件 - 一个强大的、商业级的、功能齐全的工具包,用于通用加密和安全通信。
- 官网:https://www.openssl.org/
安装方式一(下载源码、手动编译安装、比较麻烦建议选择方式二)
- 下载时版本选择需要高于1.1.1才支持SM2国密
4. 具体手动安装过程参考:https://blog.csdn.net/zkz10086/article/details/81567509
安装方式二(推荐:比较方便,直接下载别人现在安装包)
- 下载地址,同理高于1.1.1版本才支持SM2国密
- http://slproweb.com/products/Win32OpenSSL.html
- https://pan.baidu.com/s/12yJiaCxQvQdu_cI7MBZVuw?pwd=dghe
- 根据电脑操作系统选择64位、32位下载安装,开发人员建议下载完整的
- 安装完成需要随处命令行使用,配置一下环境变更即可;不配置也行,直接在安装目录bin下打开命令行即可
- 查看命令是否生效
生成SM2公私钥
- 为了方便直接进入到WinOpenSSL安装目录bin下面,调出cmd命令窗:
- 进入openssl命令行:
openssl
- 打开Win64OpenSSL软件,首先生成私钥:
ecparam -genkey -name SM2 -out priv.key
- 通过私钥生成公钥:
ec -in priv.key -pubout -out pub.key
- 私钥为pkcs#1格式,若为JAVA对接需要转为pkcs#8格式:
pkcs8 -topk8 -inform PEM -in priv.key -outform pem -nocrypt -out pri_key_pkcs8.pem
- 最终使用文件:priv.key、pri_key_pkcs8.pem(私钥,自已保存好)、pub.key(公钥,交换给通讯对方)
签名验签(私钥签名、公钥验签)
- 验证我们生成出来的公私钥。私钥签名后的数据,公钥验签能够成功说明公私钥对匹配。
- 建立一个待签名的文件plain.txt
- 使用私钥对文件plain.txt进行签名(sm2_file.sign签名值,plain.txt待签名数据)
dgst -sign priv.key -sha1 -out sm2_file.sign plain.txt
- 使用公钥进行验证签名
dgst -verify pub.key -sha1 -signature sm2_file.sign plain.txt
- 验证通过
OpenSSL生成 SM2公私钥相关推荐
- 妙借Git自带的OpenSSL生成RSA公私钥的.pem 文件
大家好,我是神韵,是一个技术&生活博主.出文章目的主要是两个,一是好记忆不如烂笔头,记录总结中提高自己.二是希望我的文章可以帮到大家.欢迎来点赞打卡,你们的行动将是我无限的动力. 本篇主题是: ...
- Java(111):非对称加密RSA的使用(openssl生成RSA公私钥对)
Java(111):非对称加密RSA的使用(openssl生成RSA公私钥对) 1.openssl生成RSA公私钥对 [root@loaclhost ~]# openssl version OpenS ...
- Java基于OpenSSL生成 RSA 公私钥对数据进行加解密
使用OpenSSL来生成私钥和公钥 验证机器上是否安装openssl 命令:openssl version -a [root@node00 test]# openssl version -a Open ...
- openssl gmssl SM2 公私钥生成 加密解密命令
openssl 从 1.1.1 开始支持 sm2.gmssl 基于openssl 添加了对国密的支持. 检测 openssl 是否支持 SM2 openssl ecparam -list_curves ...
- OpenSSL生成RSA公私钥(java)
生成私钥:genrsa -out rsa_private_key.pem 1024 生成公钥:rsa -in rsa_private_key.pem -out rsa_public_key.pem - ...
- 使用keytool和openssl生成RSA公钥私钥和证书,
RSA公钥私钥证书,使用keytool和openssl生成 生成JKS文件命令 用kes文件 生成公钥和证书命令 重中之中!!!!!! JKS文件 你不要打开 直接复制,挪到你用的位置,或者替换你之前 ...
- OpenSSL生成PKCS#8私钥和公钥
生成环境 openssl version OpenSSL 1.1.1q 生成PKCS #1私钥 openssl genrsa -out private#1.pem 默认生成的PKCS#1 -----B ...
- windows使用openssl生成公钥和私钥
本文首先简单介绍一下openssl.接着描述如何在windows环境下简单使用openssl,并生成公钥和私钥.最后介绍使用了RSA非对称加密传输应用实例的微信小程序:密码盾. 一.openssl简介 ...
- linux 环境下 openssl 生成ecdsa公、私钥
我的个人博客:逐步前行STEP 1.生成ecdsa私钥 openssl ecparam -name prime256v1 -genkey -noout -out prime256v1-key.pem ...
最新文章
- aop对请求后端的参数修改_Spring Boot AOP之对请求的参数入参与返回结果进行拦截处理...
- 如何防止android软件被反编译,破解盗版
- matlab Normally distributed random numbers in two columns
- Qt学习(五):TCP通信
- Photo Stack效果
- javascript乘法和加法_Web前端:JavaScript中的NaN是什么?
- RHEL6 cryptsetup 磁盘分区加密实验
- java保留有效数字
- 给大家推荐一款高逼格的Linux磁盘信息查看工具
- nokia n1 android 6,诺基亚推Nokia N1拥抱安卓,微软该怎么想?
- java吃货联盟系统源码_小项目,吃货联盟,java初级小项目,源代码
- ce修改服务器的数据库,数据库服务器的调优步骤
- win10磁盘100官方解释_win10磁盘分区管理工具大变脸,现代磁盘管理工具喷薄而出...
- Kylin 2.0 Spark Cubing 优化改进
- GarsiaWachs算法:石子归并问题
- JS能力测评经典题之数组
- louvain算法python_python – 如何在igraph中运行louvain社区检测算法?
- Oracle财务管理系统
- 每日学习笔记(21)
- Java学习之基础知识2