赞
踩
修改gmssl的源码
1.在statem_gmtls.c l:678
static unsigned char* gmtls_new_cert_packet(X509 *x, int *l)
这个函数的作用就是在原来的证书包基础上加上3字节的证书长度作为头
修改代码:
*l = n;
改为
*l = n +3;
2.在statem_srvr.c l:2028
#ifndef OPENSSL_NO_SM2
在statem_clnt.c I:1828
#ifndef OPENSSL_NO_SM2
都调用了
SM2_compute_id_digest(md,id,strlen(id),z,&zlen,EVP_PKEY_get0_EC_KEY(pkey))
id=SM2_DEFAULT_ID;//把id和idlen都给设定为SM2_DEFAULT_ID
idlen=strlen(SM2_DEFAULT_ID);
SM2_compute_id_digest函数是在 sm2_id.c文件中的第200行
gmssl版本:2.5.4
linux版本:centos7
1.首先把GmSSL-master.zip拷贝到/home/li路径下
2.解压缩GmSSL-master并进入目录,建立文件夹build(路径/home/li/GmSSL-master/build)
3. ./config shared --prefix=/home/li/GmSSL-master/build
4. make
5. make install 以后的可执行文件就都在/home/li/GmSSL-master/build里面
而我们的代码在/home/li/GmSSL-master中,我们修改代码之后,make、make install就可以
6. 为了使指定路径执行gmssl,例如:/home/li/GmS
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。