关于SM2算法工具的一点儿说明

简介: 关于SM2算法工具的一点儿说明

晚上有网友说,下载购买了软件后发现计算的加密后内容跟网上其他工具算出来的不一样。于是怀疑工具是不是算的不对。


这里统一回复下,软件算的没问题的。由于加密的随机数不一样,每次加密的密文内容也是不一样的。不要去比对密文内容是否一致,随机数不一样每次加密的内容都会不一样。而要看能否解密出来。若果还有其他疑问,欢迎留言或者加我QQ联系。


推荐几个网上测试sm2的网站:


SM2加解密


SM2 在线加密工具


可以这样测试下:


用我的工具加密,使用同样的密钥,用网上的工具解密,看解密出来的明文是否正确。


以下是我的验证:



网上工具算的如下,使用相同的秘钥,把工具生成的密文在网站上输入进去解密以下。解密结果如图所示:



再来测下验签:


用工具生成的签名,填入网站里去验签,看能否通过。结果是通过的。




需要注意的是,如果使用网站上生成的签名,拿这个工具验签的话,需要在xB(公钥x的位置)最前面补上个02或03.否则会收到提示:


====sm2签名验证====


tips:目前仅支持压缩公钥,请在xB处输入33字节压缩公钥值。


因为为了省事,目前仅需要输入压缩公钥即可。SM2一般用到的或者第三方提供的公钥都是压缩过的,长度为66个长度,既33字节。其实yB不需要输入,有了xB的压缩公钥,yB工具自己就算出来了。其实xB没有压缩,前面的02或03算是系数,后面的32字节就是xB. yB是根据xB算出来的。因此没必要用非压缩公钥。当然若给全了xB和yB,那就照样用呗。


相关文章
|
8月前
|
监控 算法
公司文档管理软件中的必备工具:迪杰斯特拉算法的作用
迪杰斯特拉算法是一种解决加权有向图中单源最短路径问题的算法。该算法适用于从一个节点到其他所有节点的距离计算,并可以使用堆优化来提高时间效率。
203 0
|
12天前
|
算法 安全 Java
性能工具之 JMeter 自定义 Java Sampler 支持国密 SM2 算法
【4月更文挑战第28天】性能工具之 JMeter 自定义 Java Sampler 支持国密 SM2 算法
28 1
性能工具之 JMeter 自定义 Java Sampler 支持国密 SM2 算法
|
2月前
|
算法 搜索推荐 程序员
C++标准库算法指南:从线性到复杂度 — 选择最佳工具
C++标准库算法指南:从线性到复杂度 — 选择最佳工具
51 0
|
4月前
|
监控 算法 Java
垃圾回收机制与性能调优:描述Java虚拟机(JVM)的垃圾回收算法,并解释为什么需要这些算法。如何使用Java内存分析工具(如VisualVM、JConsole或MAT)来识别和解决内存泄漏问题?
垃圾回收机制与性能调优:描述Java虚拟机(JVM)的垃圾回收算法,并解释为什么需要这些算法。如何使用Java内存分析工具(如VisualVM、JConsole或MAT)来识别和解决内存泄漏问题?
32 1
|
5月前
|
算法 安全 物联网
CFCA证书——基于SM2/3算法的安全信任
CFCA证书——基于SM2/3算法的安全信任
76 0
CFCA证书——基于SM2/3算法的安全信任
|
11月前
|
算法 安全 程序员
sm2国密算法的纯c语言版本,使用于单片机平台(静态内存分配)
sm2国密算法的纯c语言版本,使用于单片机平台(静态内存分配)
|
12月前
|
算法 前端开发 JavaScript
SpringSecurity:前后端分离项目中用户名与密码通过国密算法SM2加密传输
SpringSecurity:前后端分离项目中用户名与密码通过国密算法SM2加密传输
1050 2
|
算法
算法分析专业工具——大O记法
算法分析专业工具——大O记法
43 0
|
算法 安全 前端开发
SM2国密算法加解密
接口安全设计原则的一个点就是数据不能明文传输,除了https这个必须的请求外,接口数据加密也是一个重要的方式,下面介绍一下SM2国密算法加解密的使用方式
932 0
|
人工智能
《解密阿里内部人工智能算法迭代工具AI Boost》电子版地址
解密阿里内部人工智能算法迭代工具AI Boost
181 0
《解密阿里内部人工智能算法迭代工具AI Boost》电子版地址