php sm2 sm3 sm4 国密算法整理
php版本的国密sm2的签名算法,sm3的hash, sm4的ecb加解密,要求PHP7,打开gmp支持
目前如果服务器配套的使用的是openssl 1.1.1x, 目前到1.1.1k ,sm2,sm3,sm4都可以直接用openssl_xxx系列函数直接实现,不必大量的代码,但不支持sm2的签名
SM2
该算法主体基于PHPECC算法架构,添加了sm2的椭圆参数算法,
参考了 童鞋的sm2验签算法,密钥生成算法
添加了签名算法, 支持sm2的16进制,base64公私钥的签名,验签算法
支持从文件中读取pem文件的签名,验签算法
sm2的加密解密算法在openssl 1.1.1的版本下自带的函数中暂无sm2的公钥私钥的加密函数,得自己实现,建议使用C,C++的算法,打包成PHP扩展的方式
由于 openssl没有实现SM3WithSM2算
1