sm2,sm3的问题

C语言 码拜 4年前 (2015-11-28) 355次浏览
如题,问一下有对国密算法熟悉的吗?
1)sm2的签名算法部分,在网上找了些代码,但是和手上现有的签名测试数据参数项没办法对应上,有没人能指导下。
代码可以从如下链接下载:链接: http://pan.baidu.com/s/1jGiNs8I 密码: yd7h
下面是本人需要验证的签名数据
******************* SM2 ***********************
CA Public Key:
E8 10 5E 77 86 1F D2 EB 72 7C 84 E3 6D 3D 4A 56
66 BD 0A DC E8 78 1F 01 45 D3 D8 2D 72 B9 27 48
E2 2D 54 04 C6 C4 1F 3E C8 B7 90 DE 2F 61 CF 29
FA EC B1 68 C7 9F 5C 86 66 76 2D 53 CC 26 A4 60
input Data:
12 62 28 00 01 12 20 00 00 01 04 00 11 40 9F 48
3B F2 CC 71 C5 09 37 28 31 80 61 E3 F7 68 EA 7C
17 0F 82 DD 8C 4B 97 9F BD 8C 76 A1 29 F9 3F B5
74 6E 96 F5 E4 9B 98 7F FB 52 1E 47 3B 25 E1 B0
17 C3 0B E3 FC 63 8B A1 4D 5F A4 AA DC 16
output SM2 Signed Data:
73 DF 81 BF 5C C8 2A AB B7 CF 3C 91 65 ED EE A2
EC 0C CC 56 AB 19 F1 66 1E 01 2C D3 3D 4B FB EC
55 A8 89 90 EB 25 B4 A4 05 8C 8E 4B 11 C1 F9 EA
20 55 E4 03 CA 76 AC 8A 99 1D E8 0A 35 BE D3 48
2)十六进制的char数组怎么样转换成对应的字符串数组?
例如:unsigned char *input = “28B5071F7200008000000000009900000000000001560000000000015614021800011BC661800000000000C80000000000009900000000000001560156140218009F2701409F360200019F10080701010390000004”;
原因是很多字节转过去  都不存在对应的ascii码?
解决方案:30分
LZ给的数据用本人这边的工具验签不通过
解决方案:10分
有些字符本来就是打不出来的噻

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明sm2,sm3的问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)