OpenSSL3.0实现国密SM2易语言源码openssl 自 1.1.1 开始支持部分国密SM算法。这次使用的是3.0版本,签名支持了UID选项,源码参考了部分论坛网友的代码和网上其他语言的代码,表示感谢。支持PEM秘钥和Bin秘钥,其实都转成了PEM,代码的ASN1编码转换部分可以使用openssl的api实现,有需要的请自行修改,官方文档全是英文也说不太明白,
这里只是简单粗暴的转了一部分,有能力的还是api吧。源码不足的地方欢迎指正交流。过段时间会发一个 1.1.1 版本的源码,好像不支持签名UID

简单科普一下SM算法,SM算法基于ECC椭圆曲线算法,SM1是芯片内的对称算法不公开,SM2是非对称算法类似RSA,比rsa秘钥更短 强度更高,SM3是散列算法,官方叫杂凑类似SHA256,SM4 对称算法类似AES,秘钥长度只有128bit,SM7适用于非接触式IC卡的对称算法,秘钥长度128bit,SM9是标识算法,支持加密、签名、交换。

非对称加解密_签名SM3散列SM4对称加解密

代码从win10下通过测试,如无法调试 可能需要安装VC运行时vc_redist.x86/64。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系贝贝进行处理。
本站默认解压密码:www.hibbba.com