国密SM2的证书制作及验证

  1. 公钥秘钥使用sm2算法

  2. 根证书制作步骤:

    1. 生成根证书秘钥
      openssl ecparam -out ca.key -name SM2 -genkey
    2. 生成根证书请求文件
      openssl req -key ca.key -new -out ca.req
    3. 生成根证书
      openssl x509 -req -in ca.req -signkey ca.key -out ca.pem
  3. sm2证书制作步骤

    1. 生成sm2秘钥对
      openssl ecparam -out site.key -name SM2 -genkey
    2. 生成证书请求文件
      openssl req -key site.key -new -out site.req
    3. 生成证书
      openssl x509 -req -in site.req -CA ca.pem -CAkey ca.key -out site.pem -CAcreateserial
    4. 转为der格式
      openssl x509 -outform der -in site.pem -out site.der
  4. 验证
    /work2/learn/openssl/sm2# …/openssl_demo site.der

    root@ubuntu:/work2/learn/openssl/sm2# …/openssl_demo site.der
    File name site.der

    1. Certificate Version=[0]
    2. Certificate Serial len=[20] Serial:240DDC77DA57AD64CFFC2CD8B1F4F6070FAAF3E8
    3. signature=[ecdsa-with-SHA256][ecdsa-with-SHA256]
    4. issuer_name=[/C=cn/ST=fj/L=fz/O=rj/OU=fz/CN=zhengjnq/emailAddress=359791866@qq.com]
    5. Certificate time
      From: Wed Feb 19 17:45:24 2020
      To : Fri Mar 20 17:45:24 2020
    6. subject num=[7][/C=cn/ST=fj/L=fz/O=fx/OU=fx/CN=zengjuq/emailAddress=359791866@qq.com]
    7. Subject PublicKey
      公钥算法:[id-ecPublicKey]
      证书类型:408
      加密级别:256 bit
      公钥长度=[65]
      04 30 D7 F8 BE CE 8E BF 07 69 59 68 2B 07 87 96 FC D0 78 8C 41 EE B9 71 C0 60 0C 4E EC 84 2B B9
      EF F4 B0 4B 99 AF CF 42 17 92 64 31 FE CC 0E 0D 03 02 D1 3D 0B 0B 04 6A 4D C1 31 84 BD 9F F1 BB
      79
      扩展学习1:如何精细的获取 证书接受者的数据?
      subject_name_num=[7]
      [00][countryName]=[cn]
      [01][stateOrProvinceName]=[fj]
      [02][localityName]=[fz]
      [03][organizationName]=[fx]
      [04][organizationalUnitName]=[fx]
      [05][commonName]=[zengjuq]
      [06][emailAddress]=[359791866@qq.com]
      扩展学习2:如何精细的获取 证书签发着的数据?
      subject_name_num=[7]
      [00][countryName]=[cn]
      [01][stateOrProvinceName]=[fj]
      [02][localityName]=[fz]
      [03][organizationName]=[rj]
      [04][organizationalUnitName]=[fz]
      [05][commonName]=[zhengjnq]
      [06][emailAddress]=[359791866@qq.com]
      X509 扩展处理
      X509 证书扩展项个数 [0]

  5. 获取代码地址!!
    https://gitee.com/zhengjunqiang/learn.git

  6. openssl版本
    root@ubuntu:/work2/learn# openssl version
    OpenSSL 1.1.1 11 Sep 2018

  7. 系统
    root@ubuntu:/work2/learn# cat /etc/issue
    Ubuntu 18.04.4 LTS \n \l

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值