Tongsuo
Tongsuo copied to clipboard
请问下sm3该怎么调用
我想测试下babassl和我自己写的sm3算法的性能,但是找不到bababssl的sm3的接口,请问下该怎么调用sm3处理消息msg
按如下逻辑进行测试
相同的msg 开始时间戳 循环n次 调用babassl sm3接口 结束时间戳
总时间 = 结束时间戳 - 开始时间戳
用EVP接口:
EVP_MD_CTX *mdctx;
char mess[] = "Test Message\n";
unsigned char md_value[EVP_MAX_MD_SIZE];
unsigned int md_len, i;
mdctx = EVP_MD_CTX_new();
EVP_DigestInit_ex(mdctx, EVP_sm3(), NULL);
EVP_DigestUpdate(mdctx, mess, strlen(mess));
EVP_DigestFinal_ex(mdctx, md_value, &md_len);
EVP_MD_CTX_free(mdctx);
printf("Digest is: ");
for (i = 0; i < md_len; i++)
printf("%02x", md_value[i]);
printf("\n");
谢谢谢谢!还想问下能把需要引用的头文件和库也写一下吗,实在是小白第一次用,很抱歉这么伸手党。
#include <openssl/evp.h>
库直接连libcrypto就行,-lcrypto
请问下,有SM2和SM4对应的调用方式吗?我在文档中没找到T.T @InfoHunter