GmSSL安装及配置
1|0GmSSL安装
在网站上进行下载对应系统的GmSSL安装包
网址如下:
GmSSL下载地址
选择这两个包中的任意一个都可以。
随后将其解压生成对应的文件夹:GmSSL-3.0.0
进行安装
正常的安装一般都是使用make命令,但这里由于没有makefile,只有CMakeLists文件
故我们使用cmake .
指令进行安装
随后我们可以看到生成了一个Makefile
随后使用make命令
然后我们可以使用gmssl version进行验证是否安装成功
这里我们可以看到它找不到库
在网上通过查阅资料后了解需要配置软连接,配置如下:
然后再执行 gmssl version就成功啦
2|0算法实现
sm2实现签名验签
首先为了避免文件过多繁杂,我们创建一个sm2文件夹
随后进入文件夹
生成公私钥对
使用指令gmssl sm2keygen -pass 1325 -out sm2.pem -pubout sm2pub.pem
进行分配公私钥对
指令详解
- pass 生成的SM2私钥的加密口令
- out 生成的SM2私钥
- pubout 生成的SM2公钥
签名及验签
随后使用指令gmssl sm2sign -key sm2.pem -pass 1325 -in origin.txt -out sm2.sig
进行签名
指令详解
- key SM2私钥
- pass SM2私钥的加密口令
- id 指定签名使用的的ID(可选项,默认为1234567812345678)
- in 待签名文件
- out SM2签名结果
使用 gmssl sm2verify -pubkey sm2pub.pem -in origin.txt -sig sm2.sig
进行验签
指令详解
- pubkey 公钥
- cert 数字证书
- id 签名值使用的ID
- in 待验证的原始数据
- sig 待验证的签名值
sm2实现加密解密
加密
使用以下指令进行加密
gmssl sm2encrypt -pubkey sm2pub.pem -in origin.txt -out sm2.der
解密
使用以下指令解密
使用以下指令进行加密
gmssl sm2decrypt -key sm2.pem -pass 1325 -in sm2.der
sm3实现
计算摘要值
使用指令进行计算摘要值echo -n 20201325xjr | gmssl sm3
正确性验证
在网上的在线加密工具中进行计算后发现和gmssl计算结果相同,正确性得以验证。
sm4实现
生成密钥
使用KEY和IV进行生产对称密钥
这里的KEY就是对应sm4的对称密钥
使用CBC模式进行加密解密
使用CTR模式进行加解密
指令详解
- key SM4加密解密使用的长度为128bit的key,使用16进制表示
- iv SM4加密使用的IV
- encrypt 进行加密
- decrypt 进行解密
- cbc 使用CBC模式
- ctr 使用CTR模式
- in 待加密/解密数据
- out 加密/解密结果
ZUC实现
生成密钥
加解密
指令详解
- key ZUC算法使用的长度为128bit的key,使用16进制表示
- iv ZUC使用的IV
- in 待加密/解密数据
- out 加密/解密结果
sm9实现
生成SM9算法的主公钥和主私钥
加解密
__EOF__

本文链接:https://www.cnblogs.com/1314xhuan/p/16950284.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术