美文网首页
GmSSL快速上手指南

GmSSL快速上手指南

作者: Wonz | 来源:发表于2020-12-10 20:30 被阅读0次

    一、快速上手

    1. 下载源代码

      我是下载到本地然后通过 Xftp 传到 Linux 环境里的。

      然后解压至当前目录:

      $ unzip GmSSL-master.zip
      
    2. 编译与安装

      Linux平台使用以下命令:

      $ ./config
      $ make
      $ sudo make install
      

      安装完后查看版本:

      $ gmssl version
      

      报错:gmssl: symbol lookup error: gmssl: undefined symbol: PBEPARAM_it, version OPENSSL_1_1_0d

      经过上网查找资料(见参考二),发现这是环境变量的问题,此类问题可以通过以下命令设置:

      $ export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
      

      再查看版本,发现成功查看到版本:

      image
    3. 生成 SM2 密钥并签名

      先使用 vim 编辑一个文件,我写了一个 txt 文件:

      $ vi test.txt
      
      image

      然后生成密钥,并对文件进行加密:

      $ gmssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:sm2p256v1 \
                   -out signkey.pem
      $ gmssl pkeyutl -sign -pkeyopt ec_scheme:sm2 -inkey signkey.pem \
                   -in <yourfile> -out <yourfile>.sig
      

      查看加密后的文件(发现根本看不懂):

      image

      可以将公钥从 signkey.pem 中导出并发布给验证签名的一方:

      $ gmssl pkey -pubout -in signkey.pem -out vrfykey.pem
      $ gmssl pkeyutl -verify -pkeyopt ec_scheme:sm2 -pubin -inkey vrfykey.pem \
                      -in <yourfile> -sigfile <yourfile>.sig
      

      看到红线处表示签名验证成功:

      image

      可以查看一下密钥:

      这是私钥:

      image

      这是公钥:

      image

    二、参考

    The GmSSL Project:支持国密SM2/SM3/SM4/SM9/ZUC/SSL的密码工具箱官方文档

    GmSSL源码

    Centos7.0上 GmSSL-2.0版本是否能用,一直都无法安装成功,各种bug · Issue #219 · guanzhi/GmSSL · GitHub

    相关文章

      网友评论

          本文标题:GmSSL快速上手指南

          本文链接:https://www.haomeiwen.com/subject/ljgrgktx.html