实验一 密码引擎-4-国䀄算法交叉测试

1 在Ubuntu中使用OpenSSL用SM4算法加密上述文件,然后用龙脉eKey解密,提交代码和运行结果截图

参考国密算法的ekey的使用--简述使用了龙脉系统,windows下证书生成见图

image-20210404221652417

参考在Linux下安装GmSSL安装gmssl环境,从码云https://gitee.com/shuangyu/GmSSL上下载源码其中出现config 报错 linux-x86_64错误,参考gmssl config 报错 linux-x86_64,在 Configure文件和 test/build.info这个文件中把use if $^O ne "VMS", 'File::Glob' => qw/glob/;更改为use if $^O ne "VMS", 'File::Glob' => qw/:glob/;即可(glob前加了:),

image-20210404222855448

安装GmSSL成功

使用openssl SM4算法加密文件

image-20210404223136736

-help查看gmssl用法,gmssl enc -sms4 -d -in encryptedlcx.data -out gmssllcx.data解密出文件内容

image-20210404223829853

2 在Ubuntu中基于OpenSSL产生一对公私钥对(SM2算法)

参考利用openssl生成SM2公私钥对完成

1.创建EC参数和原始私钥文件:openssl ecparam -out ec_param.pem -name SM2 -param_enc explicit -genkey
查看一下EC私钥信息:openssl ecparam -in ec_param.pem -text
验证参数:openssl ecparam -in ec_param.pem -check

image-20210404224622519

2.将原始的私钥文件,转换为pkcs8格式openssl pkcs8 -topk8 -inform PEM -in ec_param.pem -outform pem -nocrypt -out pri_key_pkcs8.pem
3.利用原始的私钥,生成对应的公钥:openssl ec -in ec_param.pem -pubout -out pub_key.pem
至此SM2的秘钥对已经生成结束,pri_key_pkcs8.pem是SM2私钥,而pub_key.pem是公钥。

image-20210404224657997

3 在Ubuntu中使用OpenSSL用SM3算法计算上述文件的Hash值,然后用OpenSSL SM2算法计算Hash值的签名,用龙脉eKey进行验签,提交代码和运行结果截图

image-20210404225523735

使用龙脉中的示例代码,实际上没成功跑起来

image-20210405092627166

问题在监听设备上,virtualbox不识别龙脉key的usb,正在下载VMware尝试

posted @ 2021-04-04 22:58  一个李长兴  阅读(271)  评论(2编辑  收藏  举报