openssl 里 sm2 用不成?

$ openssl sm2 -help
Invalid command 'sm2'; type "help" for a list.

$ openssl sm3 -help
Usage: sm3 [options]
...

$ openssl sm4 -help
Usage: sm4 [options]
....

看了 openssl 源代码,里面有 sm2 的。sm3、sm4 都可以用,sm2 为何用不成,不能用于加密?

网上的人说可以用 openssl 生成 sm2 的密钥,就是不知道如何用 openssl sm2 加密文件?

你是不是想实验 openssl 1.1 新支持的国密算法但是又对 openssl 一知半解?

sm2,sm3,sm4 不是同一类东西的第二版第三版第四版,而是三个不同的东西碰巧叫了 sm2,sm3,sm4。你得先去科普下它们分别是什么…

你用 openssl sm2/sm3/sm4 这么简单的命令去实验支持不支持…密码学要这么简单的话就没有存在的必要了 :nerd_face: 就连你实验出来的有反馈 sm3 命令和 sm4 命令它们都不是一类命令,你看下 openssl —help 吧 :cold_face:

openssl ecparam -list_curves | grep SM2

才是检查 sm2 支持的命令…至于怎么用它加密那是另一个故事了 :joy:

目前签证书可以,但是在 SSL/TLS 也就是浏览器里用不行…只能用关志研究员的 GmSSL 那个分支,配合特殊的国密浏览器(没有 Linux 版)食用:

至于加密自己的文件,证书出来了之后跟别的加密方式用法一样