何彬龙 13f6ff4377 add GmSSL-3.1.0 2 anni fa
..
README.md 13f6ff4377 add GmSSL-3.1.0 2 anni fa
certgen.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
certparse.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
certrevoke.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
certverify.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
cmsdecrypt.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
cmsencrypt.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
cmsparse.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
cmssign.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
cmsverify.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
copyright.sh 13f6ff4377 add GmSSL-3.1.0 2 anni fa
crlgen.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
crlget.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
crlparse.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
crlverify.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
gmssl.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
pbkdf2.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
rand.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
reqgen.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
reqparse.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
reqsign.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sdfutil.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
skfutil.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm2decrypt.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm2encrypt.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm2keygen.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm2sign.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm2verify.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm3.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm3hmac.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm3speed.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm4.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm4speed.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm9decrypt.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm9encrypt.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm9keygen.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm9setup.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm9sign.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
sm9verify.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
tlcp_client.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
tlcp_server.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
tls12_client.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
tls12_server.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
tls13_client.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
tls13_server.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
version.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa
zuc.c 13f6ff4377 add GmSSL-3.1.0 2 anni fa

README.md

命令行工具

注意:

  • 命令行工具接口在v3版本正式发布前还会有较大调整
  • SM2, SM3, SM4等算法的命令相对比较底层,是对C语言接口的简单封装,命令行的应用开发者需要组合使用这些指令

命令行工具:

  • sm3 计算SM3杂凑值,支持带公钥和ID的Z值计算
  • sm3hmac 计算SM3-HMAC值
  • sm2keygen 生成SM2密钥对,以PKCS #8口令加密的PEM格式存储
  • sm2sign,sm2verify SM2签名和验证,生成DER二进制编码的SM2签名值
  • sm2encrypt,sm2decrypt SM2加解密,注意只支持较短的消息加密
  • reqgen 生成PKCS #10证书签名请求PEM文件
  • reqparse 解析打印REQ文件
  • reqsign CA用私钥对REQ文件签名,生成证书
  • certgen生成自签名证书
  • certparse 解析打印证书
  • certverify 验证证书链

TLS功能

  • tlcp_client
  • tlcp_server
  • tls12_client
  • tls12_server
  • tls13_client
  • tls13_server

私钥总是默认以口令加密的方式存储 SM3/HMAC-SM3 以二进制的格式输出 签名和SM2Ciphertext以DER编码输出

应该提供一个口令导出密钥的算法,由口令导出密钥

SM4加密需要外部提供key, iv HMAC-SM3可以用命令行的方式拼合 因此没必要提供一个单独的SM4-CBC-HMAC-SM3